andywer / threads.js

🧵 Make web workers & worker threads as simple as a function call.

Home Page:https://threads.js.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

create worker with *.ts when master in ts-node environment cause error

windschaser opened this issue · comments

commented

spawn(new Worker('worker.ts')) will cause error when the script is executed in ts-node environment. As follow:

Error [ERR_UNHANDLED_ERROR]: Unhandled error. ({
  diagnosticText: 'app/util/worker.ts(8,2): error TS2695: Left side of comma operator is unused and has no side effects.\r\n',
  diagnosticCodes: [ 2695 ]
})

I think it's because ts-node is registed multiple times, as thread.js register ts-node in https://github.com/andywer/threads.js/blob/master/src/master/implementation.node.ts#L55. Then error occurred:
TypeStrong/ts-node#1690
TypeStrong/ts-node#409

A simple way to fix this may be adding option to skip re-register, or detecting ts-node env by symbol it expose, like this: if (process[Symbol.for("ts-node.register.instance")])

Hope to check again if these are corrected. If necessary, I can provide a PR to fix this. Thanks a lot.