Skip to content

Commit f89af7d

Browse files
committed
feat: use a global symbol for util.promisify.custom
Define `util.promisify.custom` as `Symbol.for("nodejs.util.inspect.custom")`, rather than as `Symbol("util.inspect.custom")`. This allows custom `promisify` wrappers to easily/safely be defined in non‑Node.js environments. Refs: nodejs/node#31647 Refs: nodejs/node#31672
1 parent 3c89541 commit f89af7d

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

util.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -607,7 +607,10 @@ function hasOwnProperty(obj, prop) {
607607
return Object.prototype.hasOwnProperty.call(obj, prop);
608608
}
609609

610-
var kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;
610+
var kCustomPromisifiedSymbol =
611+
typeof Symbol === 'function' && typeof Symbol['for'] === 'function'
612+
? Symbol['for']('nodejs.util.promisify.custom')
613+
: undefined;
611614

612615
exports.promisify = function promisify(original) {
613616
if (typeof original !== 'function')

0 commit comments

Comments
 (0)