threads.js
threads.js copied to clipboard
Do not set `global.self` if not needed
Hi,
We have a node CLI that uses threads.js, and discovered that global.self
is being set by the library although it's not needed.
It is always being set here, even if the tiny-worker implementation is not needed: https://github.com/andywer/threads.js/blob/545baa2533b25735b9e08b8b95c4d07a9a28120c/src/worker/implementation.tiny-worker.ts#L14-L16
This happens because it is always imported and the code is running on the module level.
This causes other 3rd party code we have to assume it's running in a browser. There might be a better way for the 3rd party to detect whether it's in a browser, although I think regardless we should not set self
if not needed.
Would love to hear your thoughts, thanks!