Do not set `global.self` if not needed
- Dominant language
- TypeScript
- Stars
- 3.5k
- Forks
- 173
- PR merge metrics
- No merged PRs in 30d
Description
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!
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.