andywer / andywer/threads.js

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

オープン
#451 コメント 0 件 リアクション 0 件 担当者 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 を短くまとめたダイジェスト。