andywer / andywer/threads.js

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

未關閉
#451 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
TypeScript
星號
3.5k
分支
173
PR 合併指標
30 天內沒有已合併 PR

描述

`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:
https://github.com/TypeStrong/ts-node/issues/1690
https://github.com/TypeStrong/ts-node/issues/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.

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。