synckit 0.7.2 → 0.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +7 -7
- package/lib/index.cjs +16 -3
- package/lib/index.js +18 -5
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
package/LICENSE
CHANGED
package/README.md
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
# synckit
|
2
2
|
|
3
|
-
[](https://github.com/un-ts/synckit/actions/workflows/ci.yml)
|
4
|
+
[](https://codecov.io/gh/un-ts/synckit)
|
5
|
+
[](https://lgtm.com/projects/g/un-ts/synckit/context:javascript)
|
6
|
+
[](https://github.com/plantain-00/type-coverage)
|
7
7
|
[](https://www.npmjs.com/package/synckit)
|
8
|
-
[](https://github.com/un-ts/synckit/releases)
|
9
9
|
|
10
10
|
[](https://conventionalcommits.org)
|
11
11
|
[](https://renovatebot.com)
|
@@ -62,7 +62,7 @@ runAsWorker(async (...args) => {
|
|
62
62
|
})
|
63
63
|
```
|
64
64
|
|
65
|
-
You must make sure, the `result` is
|
65
|
+
You must make sure, the `result` is serializable by [`Structured Clone Algorithm`](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm)
|
66
66
|
|
67
67
|
### Envs
|
68
68
|
|
@@ -98,7 +98,7 @@ You can try it with running `yarn benchmark` by yourself. [Here](./benchmarks/be
|
|
98
98
|
|
99
99
|
| 1stG | RxTS | UnTS |
|
100
100
|
| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
101
|
-
| [](https://opencollective.com/1stG) | [](https://opencollective.com/1stG) | [](https://opencollective.com/unts) | [](https://opencollective.com/unts) |
|
102
102
|
|
103
103
|
## Changelog
|
104
104
|
|
package/lib/index.cjs
CHANGED
@@ -66,9 +66,22 @@ const dataUrl = (code) => new URL(`data:text/javascript,${encodeURIComponent(cod
|
|
66
66
|
const setupTsNode = (workerPath, execArgv) => {
|
67
67
|
if (!/[/\\]node_modules[/\\]/.test(workerPath)) {
|
68
68
|
const ext = path__default["default"].extname(workerPath);
|
69
|
-
if (!ext || ext
|
70
|
-
const
|
71
|
-
|
69
|
+
if (!ext || /\.[cm]?js$/.test(ext)) {
|
70
|
+
const workPathWithoutExt = ext ? workerPath.slice(0, -ext.length) : workerPath;
|
71
|
+
let extensions;
|
72
|
+
switch (ext) {
|
73
|
+
case ".cjs":
|
74
|
+
extensions = ["cts", "cjs"];
|
75
|
+
break;
|
76
|
+
case ".mjs":
|
77
|
+
extensions = ["mts", "mjs"];
|
78
|
+
break;
|
79
|
+
default:
|
80
|
+
extensions = [".ts", ".js"];
|
81
|
+
break;
|
82
|
+
}
|
83
|
+
const found = utils.tryExtensions(workPathWithoutExt, extensions);
|
84
|
+
if (found && (!ext || found !== workPathWithoutExt)) {
|
72
85
|
workerPath = found;
|
73
86
|
}
|
74
87
|
}
|
package/lib/index.js
CHANGED
@@ -52,16 +52,29 @@ const dataUrl = (code) => new URL(`data:text/javascript,${encodeURIComponent(cod
|
|
52
52
|
const setupTsNode = (workerPath, execArgv) => {
|
53
53
|
if (!/[/\\]node_modules[/\\]/.test(workerPath)) {
|
54
54
|
const ext = path.extname(workerPath);
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
55
|
+
if (!ext || /\.[cm]?js$/.test(ext)) {
|
56
|
+
const workPathWithoutExt = ext
|
57
|
+
? workerPath.slice(0, -ext.length)
|
58
|
+
: workerPath;
|
59
|
+
let extensions;
|
60
|
+
switch (ext) {
|
61
|
+
case '.cjs':
|
62
|
+
extensions = ['cts', 'cjs'];
|
63
|
+
break;
|
64
|
+
case '.mjs':
|
65
|
+
extensions = ['mts', 'mjs'];
|
66
|
+
break;
|
67
|
+
default:
|
68
|
+
extensions = ['.ts', '.js'];
|
69
|
+
break;
|
70
|
+
}
|
71
|
+
const found = tryExtensions(workPathWithoutExt, extensions);
|
72
|
+
if (found && (!ext || found !== workPathWithoutExt)) {
|
59
73
|
workerPath = found;
|
60
74
|
}
|
61
75
|
}
|
62
76
|
}
|
63
77
|
const isTs = /\.[cm]?ts$/.test(workerPath);
|
64
|
-
// TODO: it does not work for `ts-node` for now
|
65
78
|
let tsUseEsm = workerPath.endsWith('.mts');
|
66
79
|
if (isTs) {
|
67
80
|
if (!tsUseEsm) {
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EACL,cAAc,EACd,MAAM,EACN,oBAAoB;AACpB,qDAAqD;AACrD,UAAU,EACV,UAAU,GACX,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAWnD,cAAc,YAAY,CAAA;AAE1B,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAA;AAE9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB;IACpD,CAAC,CAAC,CAAC,mBAAmB;IACtB,CAAC,CAAC,SAAS,CAAA;AAEb,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAA;AAE7E,MAAM,CAAC,MAAM,0BAA0B,GAAG,mBAAmB,IAAI,IAAI,CAAA;AAErE,0BAA0B;AAC1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,EAAE,CAAA;AAEnE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAA;AAQ5C,0EAA0E;AAC1E,6EAA6E;AAC7E,6BAA6B;AAC7B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,MAAU,EAAiB,EAAE;IAChE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,UAAU,GAAG,EAAkB,CAAA;QACrC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;YACxB,UAAU,CAAC,GAAc,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;SACzC;QACD,OAAO,UAAU,CAAA;KAClB;AACH,CAAC,CAAA;AAWD,MAAM,UAAU,YAAY,CAC1B,UAAkB,EAClB,mBAA6C,EAC7C,OAAgB;IAEhB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;KACjD;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAEhD,IAAI,YAAY,EAAE;QAChB,OAAO,YAAY,CAAA;KACpB;IAED,MAAM,MAAM,GAAG,iBAAiB,CAC9B,UAAU;IACV,0BAA0B,CAAC,OAAO,mBAAmB,KAAK,QAAQ;QAChE,CAAC,CAAC,EAAE,UAAU,EAAE,mBAAmB,EAAE,OAAO,EAAE;QAC9C,CAAC,CAAC,mBAAmB,CACxB,CAAA;IAED,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAEnC,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,GACd,OAAO,OAAO,KAAK,WAAW;IAC5B,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAChC,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAA;AAExC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAC/B,IAAI,GAAG,CAAC,wBAAwB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAE7D,wDAAwD;AACxD,MAAM,WAAW,GAAG,CAAC,UAAkB,EAAE,QAAkB,EAAE,EAAE;IAC7D,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QACpC,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"name": "synckit",
|
3
|
-
"version": "0.7.
|
3
|
+
"version": "0.7.3",
|
4
4
|
"type": "module",
|
5
|
-
"description": "Perform async work synchronously in Node.js using `worker_threads
|
5
|
+
"description": "Perform async work synchronously in Node.js using `worker_threads` with first-class TypeScript support.",
|
6
6
|
"repository": "git+https://github.com/rx-ts/synckit.git",
|
7
7
|
"author": "JounQin (https://www.1stG.me) <admin@1stg.me>",
|
8
8
|
"donate": {
|
@@ -64,7 +64,7 @@
|
|
64
64
|
"synckit"
|
65
65
|
],
|
66
66
|
"dependencies": {
|
67
|
-
"@pkgr/utils": "^2.
|
67
|
+
"@pkgr/utils": "^2.3.0",
|
68
68
|
"tslib": "^2.4.0"
|
69
69
|
}
|
70
70
|
}
|