Closed FlyingDR closed 1 year ago
Hello,
At this moment library relies on the use of os.hostname() as a part of the fingerprint generator for Node.js:
os.hostname()
https://github.com/ericelliott/cuid/blob/fb9bb90644110474253bf8e03fbf26668cd105c0/lib/fingerprint.js#L6
This method is broken on Windows 7 due to https://github.com/nodejs/node/pull/25111 with a root cause https://github.com/libuv/libuv/issues/3260.
Since your library is quite popular and required change is very small - I would want to propose to avoid using os.hostname() on affected platform.
Example patch may look like this:
--- lib/fingerprint.js +++ lib/fingerprint.js @@ -3,7 +3,7 @@ var pad = require('./pad.js'); var os = require('os'), padding = 2, pid = pad(process.pid.toString(36), padding), - hostname = os.hostname(), + hostname = os.version().indexOf('Windows 7 ') === 0 ? 'windows7' : os.hostname(), length = hostname.length, hostId = pad(hostname .split('')
Please open a PR and link to this issue in the description.
@ericelliott Pull request is ready
See PR comment
Hello,
At this moment library relies on the use of
os.hostname()
as a part of the fingerprint generator for Node.js:https://github.com/ericelliott/cuid/blob/fb9bb90644110474253bf8e03fbf26668cd105c0/lib/fingerprint.js#L6
This method is broken on Windows 7 due to https://github.com/nodejs/node/pull/25111 with a root cause https://github.com/libuv/libuv/issues/3260.
Since your library is quite popular and required change is very small - I would want to propose to avoid using
os.hostname()
on affected platform.Example patch may look like this: