synckit 0.8.5 → 0.8.7
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/README.md +41 -1
- package/lib/index.cjs +142 -56
- package/lib/index.d.ts +10 -2
- package/lib/index.js +132 -48
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +6 -0
- package/package.json +3 -3
package/README.md
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
|
3
3
|
[](https://github.com/un-ts/synckit/actions/workflows/ci.yml)
|
4
4
|
[](https://codecov.io/gh/un-ts/synckit)
|
5
|
-
[](https://lgtm.com/projects/g/un-ts/synckit/context:javascript)
|
6
5
|
[](https://github.com/plantain-00/type-coverage)
|
7
6
|
[](https://www.npmjs.com/package/synckit)
|
8
7
|
[](https://github.com/un-ts/synckit/releases)
|
@@ -19,6 +18,7 @@ Perform async work synchronously in Node.js using `worker_threads` with first-cl
|
|
19
18
|
- [Usage](#usage)
|
20
19
|
- [Install](#install)
|
21
20
|
- [API](#api)
|
21
|
+
- [Types](#types)
|
22
22
|
- [Options](#options)
|
23
23
|
- [Envs](#envs)
|
24
24
|
- [TypeScript](#typescript)
|
@@ -72,12 +72,51 @@ runAsWorker(async (...args) => {
|
|
72
72
|
|
73
73
|
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)
|
74
74
|
|
75
|
+
### Types
|
76
|
+
|
77
|
+
````ts
|
78
|
+
export interface GlobalShim {
|
79
|
+
moduleName: string
|
80
|
+
/**
|
81
|
+
* `undefined` means side effect only
|
82
|
+
*/
|
83
|
+
globalName?: string
|
84
|
+
/**
|
85
|
+
* 1. `undefined` or empty string means `default`, for example:
|
86
|
+
* ```js
|
87
|
+
* import globalName from 'module-name'
|
88
|
+
* ```
|
89
|
+
*
|
90
|
+
* 2. `null` means namespaced, for example:
|
91
|
+
* ```js
|
92
|
+
* import * as globalName from 'module-name'
|
93
|
+
* ```
|
94
|
+
*
|
95
|
+
*/
|
96
|
+
named?: string | null
|
97
|
+
/**
|
98
|
+
* If not `false`, the shim will only be applied when the original `globalName` unavailable,
|
99
|
+
* for example you may only want polyfill `globalThis.fetch` when it's unavailable natively:
|
100
|
+
* ```js
|
101
|
+
* import fetch from 'node-fetch'
|
102
|
+
*
|
103
|
+
* if (!globalThis.fetch) {
|
104
|
+
* globalThis.fetch = fetch
|
105
|
+
* }
|
106
|
+
* ```
|
107
|
+
*/
|
108
|
+
conditional?: boolean
|
109
|
+
}
|
110
|
+
````
|
111
|
+
|
75
112
|
### Options
|
76
113
|
|
77
114
|
1. `bufferSize` same as env `SYNCKIT_BUFFER_SIZE`
|
78
115
|
2. `timeout` same as env `SYNCKIT_TIMEOUT`
|
79
116
|
3. `execArgv` same as env `SYNCKIT_EXEC_ARGV`
|
80
117
|
4. `tsRunner` same as env `SYNCKIT_TS_RUNNER`
|
118
|
+
5. `transferList`: Please refer Node.js [`worker_threads`](https://nodejs.org/api/worker_threads.html#:~:text=Default%3A%20true.-,transferList,-%3CObject%5B%5D%3E%20If) documentation
|
119
|
+
6. `globalShims`: Similar like env `SYNCKIT_GLOBAL_SHIMS` but much more flexible which can be a `GlobalShim` `Array`, see `GlobalShim`'s [definition](#types) for more details
|
81
120
|
|
82
121
|
### Envs
|
83
122
|
|
@@ -85,6 +124,7 @@ You must make sure, the `result` is serializable by [`Structured Clone Algorithm
|
|
85
124
|
2. `SYNCKIT_TIMEOUT`: `timeout` for performing the async job (no default)
|
86
125
|
3. `SYNCKIT_EXEC_ARGV`: List of node CLI options passed to the worker, split with comma `,`. (default as `[]`), see also [`node` docs](https://nodejs.org/api/worker_threads.html)
|
87
126
|
4. `SYNCKIT_TS_RUNNER`: Which TypeScript runner to be used, it could be very useful for development, could be `'ts-node' | 'esbuild-register' | 'esbuild-runner' | 'swc' | 'tsx'`, `'ts-node'` is used by default, make sure you have installed them already
|
127
|
+
5. `SYNCKIT_GLOBAL_SHIMS`: Whether to enable the default `DEFAULT_GLOBAL_SHIMS_PRESET` as `globalShims`
|
88
128
|
|
89
129
|
### TypeScript
|
90
130
|
|
package/lib/index.cjs
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
'use strict';
|
2
2
|
|
3
|
-
|
4
|
-
|
3
|
+
var node_crypto = require('node:crypto');
|
5
4
|
var fs = require('node:fs');
|
6
5
|
var node_module = require('node:module');
|
7
6
|
var path = require('node:path');
|
@@ -9,11 +8,6 @@ var node_url = require('node:url');
|
|
9
8
|
var node_worker_threads = require('node:worker_threads');
|
10
9
|
var utils = require('@pkgr/utils');
|
11
10
|
|
12
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
13
|
-
|
14
|
-
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
15
|
-
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
16
|
-
|
17
11
|
var __async = (__this, __arguments, generator) => {
|
18
12
|
return new Promise((resolve, reject) => {
|
19
13
|
var fulfilled = (value) => {
|
@@ -36,10 +30,15 @@ var __async = (__this, __arguments, generator) => {
|
|
36
30
|
};
|
37
31
|
const import_meta = {};
|
38
32
|
const TsRunner = {
|
33
|
+
// https://github.com/TypeStrong/ts-node
|
39
34
|
TsNode: "ts-node",
|
35
|
+
// https://github.com/egoist/esbuild-register
|
40
36
|
EsbuildRegister: "esbuild-register",
|
37
|
+
// https://github.com/folke/esbuild-runner
|
41
38
|
EsbuildRunner: "esbuild-runner",
|
39
|
+
// https://github.com/swc-project/swc-node/tree/master/packages/register
|
42
40
|
SWC: "swc",
|
41
|
+
// https://github.com/esbuild-kit/tsx
|
43
42
|
TSX: "tsx"
|
44
43
|
};
|
45
44
|
const {
|
@@ -47,13 +46,28 @@ const {
|
|
47
46
|
SYNCKIT_TIMEOUT,
|
48
47
|
SYNCKIT_EXEC_ARGV,
|
49
48
|
SYNCKIT_TS_RUNNER,
|
49
|
+
SYNCKIT_GLOBAL_SHIMS,
|
50
50
|
NODE_OPTIONS
|
51
51
|
} = process.env;
|
52
52
|
const DEFAULT_BUFFER_SIZE = SYNCKIT_BUFFER_SIZE ? +SYNCKIT_BUFFER_SIZE : void 0;
|
53
53
|
const DEFAULT_TIMEOUT = SYNCKIT_TIMEOUT ? +SYNCKIT_TIMEOUT : void 0;
|
54
54
|
const DEFAULT_WORKER_BUFFER_SIZE = DEFAULT_BUFFER_SIZE || 1024;
|
55
55
|
const DEFAULT_EXEC_ARGV = (SYNCKIT_EXEC_ARGV == null ? void 0 : SYNCKIT_EXEC_ARGV.split(",")) || [];
|
56
|
-
const DEFAULT_TS_RUNNER = SYNCKIT_TS_RUNNER
|
56
|
+
const DEFAULT_TS_RUNNER = SYNCKIT_TS_RUNNER;
|
57
|
+
const DEFAULT_GLOBAL_SHIMS = ["1", "true"].includes(
|
58
|
+
SYNCKIT_GLOBAL_SHIMS
|
59
|
+
);
|
60
|
+
const DEFAULT_GLOBAL_SHIMS_PRESET = [
|
61
|
+
{
|
62
|
+
moduleName: "node-fetch",
|
63
|
+
globalName: "fetch"
|
64
|
+
},
|
65
|
+
{
|
66
|
+
moduleName: "node:perf_hooks",
|
67
|
+
globalName: "performance",
|
68
|
+
named: "performance"
|
69
|
+
}
|
70
|
+
];
|
57
71
|
const MTS_SUPPORTED_NODE_VERSION = 16;
|
58
72
|
const syncFnCache = /* @__PURE__ */ new Map();
|
59
73
|
function extractProperties(object) {
|
@@ -66,7 +80,7 @@ function extractProperties(object) {
|
|
66
80
|
}
|
67
81
|
}
|
68
82
|
function createSyncFn(workerPath, bufferSizeOrOptions, timeout) {
|
69
|
-
if (!
|
83
|
+
if (!path.isAbsolute(workerPath)) {
|
70
84
|
throw new Error("`workerPath` must be absolute");
|
71
85
|
}
|
72
86
|
const cachedSyncFn = syncFnCache.get(workerPath);
|
@@ -75,46 +89,55 @@ function createSyncFn(workerPath, bufferSizeOrOptions, timeout) {
|
|
75
89
|
}
|
76
90
|
const syncFn = startWorkerThread(
|
77
91
|
workerPath,
|
92
|
+
/* istanbul ignore next */
|
78
93
|
typeof bufferSizeOrOptions === "number" ? { bufferSize: bufferSizeOrOptions, timeout } : bufferSizeOrOptions
|
79
94
|
);
|
80
95
|
syncFnCache.set(workerPath, syncFn);
|
81
96
|
return syncFn;
|
82
97
|
}
|
83
|
-
const cjsRequire = typeof require === "undefined" ? node_module.createRequire(import_meta.url) :
|
98
|
+
const cjsRequire = typeof require === "undefined" ? node_module.createRequire(import_meta.url) : (
|
99
|
+
/* istanbul ignore next */
|
100
|
+
require
|
101
|
+
);
|
84
102
|
const dataUrl = (code) => new URL(`data:text/javascript,${encodeURIComponent(code)}`);
|
85
103
|
const isFile = (path2) => {
|
104
|
+
var _a;
|
86
105
|
try {
|
87
|
-
return
|
106
|
+
return !!((_a = fs.statSync(path2, { throwIfNoEntry: false })) == null ? void 0 : _a.isFile());
|
88
107
|
} catch (e) {
|
89
108
|
return false;
|
90
109
|
}
|
91
110
|
};
|
92
111
|
const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
93
|
-
let ext =
|
112
|
+
let ext = path.extname(workerPath);
|
94
113
|
if (!/[/\\]node_modules[/\\]/.test(workerPath) && (!ext || /^\.[cm]?js$/.test(ext))) {
|
95
114
|
const workPathWithoutExt = ext ? workerPath.slice(0, -ext.length) : workerPath;
|
96
115
|
let extensions;
|
97
116
|
switch (ext) {
|
98
|
-
case ".cjs":
|
117
|
+
case ".cjs": {
|
99
118
|
extensions = [".cts", ".cjs"];
|
100
119
|
break;
|
101
|
-
|
120
|
+
}
|
121
|
+
case ".mjs": {
|
102
122
|
extensions = [".mts", ".mjs"];
|
103
123
|
break;
|
104
|
-
|
124
|
+
}
|
125
|
+
default: {
|
105
126
|
extensions = [".ts", ".js"];
|
106
127
|
break;
|
128
|
+
}
|
107
129
|
}
|
108
130
|
const found = utils.tryExtensions(workPathWithoutExt, extensions);
|
109
131
|
let differentExt;
|
110
132
|
if (found && (!ext || (differentExt = found !== workPathWithoutExt))) {
|
111
133
|
workerPath = found;
|
112
134
|
if (differentExt) {
|
113
|
-
ext =
|
135
|
+
ext = path.extname(workerPath);
|
114
136
|
}
|
115
137
|
}
|
116
138
|
}
|
117
139
|
const isTs = /\.[cm]?ts$/.test(workerPath);
|
140
|
+
let jsUseEsm = workerPath.endsWith(".mjs");
|
118
141
|
let tsUseEsm = workerPath.endsWith(".mts");
|
119
142
|
if (isTs) {
|
120
143
|
if (!tsUseEsm) {
|
@@ -123,6 +146,9 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
123
146
|
tsUseEsm = cjsRequire(pkg).type === "module";
|
124
147
|
}
|
125
148
|
}
|
149
|
+
if (tsRunner == null && utils.isPkgAvailable(TsRunner.TsNode)) {
|
150
|
+
tsRunner = TsRunner.TsNode;
|
151
|
+
}
|
126
152
|
switch (tsRunner) {
|
127
153
|
case TsRunner.TsNode: {
|
128
154
|
if (tsUseEsm) {
|
@@ -162,6 +188,11 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
162
188
|
throw new Error(`Unknown ts runner: ${String(tsRunner)}`);
|
163
189
|
}
|
164
190
|
}
|
191
|
+
} else if (!jsUseEsm) {
|
192
|
+
const pkg = utils.findUp(workerPath);
|
193
|
+
if (pkg) {
|
194
|
+
jsUseEsm = cjsRequire(pkg).type === "module";
|
195
|
+
}
|
165
196
|
}
|
166
197
|
if (process.versions.pnp) {
|
167
198
|
const nodeOptions = NODE_OPTIONS == null ? void 0 : NODE_OPTIONS.split(/\s+/);
|
@@ -174,7 +205,7 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
174
205
|
(option, index) => ["-r", "--require"].includes(option) && pnpApiPath === cjsRequire.resolve(nodeOptions[index + 1])
|
175
206
|
)) && !execArgv.includes(pnpApiPath)) {
|
176
207
|
execArgv = ["-r", pnpApiPath, ...execArgv];
|
177
|
-
const pnpLoaderPath =
|
208
|
+
const pnpLoaderPath = path.resolve(pnpApiPath, "../.pnp.loader.mjs");
|
178
209
|
if (isFile(pnpLoaderPath)) {
|
179
210
|
const experimentalLoader = node_url.pathToFileURL(pnpLoaderPath).toString();
|
180
211
|
execArgv = ["--experimental-loader", experimentalLoader, ...execArgv];
|
@@ -184,46 +215,113 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
184
215
|
return {
|
185
216
|
ext,
|
186
217
|
isTs,
|
218
|
+
jsUseEsm,
|
219
|
+
tsRunner,
|
187
220
|
tsUseEsm,
|
188
221
|
workerPath,
|
189
222
|
execArgv
|
190
223
|
};
|
191
224
|
};
|
225
|
+
const md5Hash = (text) => node_crypto.createHash("md5").update(text).digest("hex");
|
226
|
+
const encodeImportModule = (moduleNameOrGlobalShim, type = "import") => {
|
227
|
+
const { moduleName, globalName, named, conditional } = typeof moduleNameOrGlobalShim === "string" ? { moduleName: moduleNameOrGlobalShim } : moduleNameOrGlobalShim;
|
228
|
+
const importStatement = type === "import" ? `import${globalName ? " " + (named === null ? "* as " + globalName : (named == null ? void 0 : named.trim()) ? `{${named}}` : globalName) + " from" : ""} '${path.isAbsolute(moduleName) ? String(node_url.pathToFileURL(moduleName)) : moduleName}'` : `${globalName ? "const " + ((named == null ? void 0 : named.trim()) ? `{${named}}` : globalName) + "=" : ""}require('${moduleName.replace(/\\/g, "\\\\")}')`;
|
229
|
+
if (!globalName) {
|
230
|
+
return importStatement;
|
231
|
+
}
|
232
|
+
const overrideStatement = `globalThis.${globalName}=${(named == null ? void 0 : named.trim()) ? named : globalName}`;
|
233
|
+
return importStatement + (conditional === false ? `;${overrideStatement}` : `;if(!globalThis.${globalName})${overrideStatement}`);
|
234
|
+
};
|
235
|
+
const _generateGlobals = (globalShims, type) => globalShims.reduce(
|
236
|
+
(acc, shim) => `${acc}${acc ? ";" : ""}${encodeImportModule(shim, type)}`,
|
237
|
+
""
|
238
|
+
);
|
239
|
+
const globalsCache = /* @__PURE__ */ new Map();
|
240
|
+
let tmpdir;
|
241
|
+
const _dirname = typeof __dirname === "undefined" ? path.dirname(node_url.fileURLToPath(import_meta.url)) : (
|
242
|
+
/* istanbul ignore next */
|
243
|
+
__dirname
|
244
|
+
);
|
245
|
+
const generateGlobals = (workerPath, globalShims, type = "import") => {
|
246
|
+
const cached = globalsCache.get(workerPath);
|
247
|
+
if (cached) {
|
248
|
+
const [content2, filepath2] = cached;
|
249
|
+
if (type === "require" && !filepath2 || type === "import" && filepath2 && isFile(filepath2)) {
|
250
|
+
return content2;
|
251
|
+
}
|
252
|
+
}
|
253
|
+
const globals = _generateGlobals(globalShims, type);
|
254
|
+
let content = globals;
|
255
|
+
let filepath;
|
256
|
+
if (type === "import") {
|
257
|
+
if (!tmpdir) {
|
258
|
+
tmpdir = path.resolve(utils.findUp(_dirname), "../node_modules/.synckit");
|
259
|
+
}
|
260
|
+
fs.mkdirSync(tmpdir, { recursive: true });
|
261
|
+
filepath = path.resolve(tmpdir, md5Hash(workerPath) + ".mjs");
|
262
|
+
content = encodeImportModule(filepath);
|
263
|
+
fs.writeFileSync(filepath, globals);
|
264
|
+
}
|
265
|
+
globalsCache.set(workerPath, [content, filepath]);
|
266
|
+
return content;
|
267
|
+
};
|
192
268
|
function startWorkerThread(workerPath, {
|
193
269
|
bufferSize = DEFAULT_WORKER_BUFFER_SIZE,
|
194
270
|
timeout = DEFAULT_TIMEOUT,
|
195
271
|
execArgv = DEFAULT_EXEC_ARGV,
|
196
|
-
tsRunner = DEFAULT_TS_RUNNER
|
272
|
+
tsRunner = DEFAULT_TS_RUNNER,
|
273
|
+
transferList = [],
|
274
|
+
globalShims = DEFAULT_GLOBAL_SHIMS
|
197
275
|
} = {}) {
|
198
276
|
const { port1: mainPort, port2: workerPort } = new node_worker_threads.MessageChannel();
|
199
277
|
const {
|
200
278
|
isTs,
|
201
279
|
ext,
|
280
|
+
jsUseEsm,
|
202
281
|
tsUseEsm,
|
282
|
+
tsRunner: finalTsRunner,
|
203
283
|
workerPath: finalWorkerPath,
|
204
284
|
execArgv: finalExecArgv
|
205
285
|
} = setupTsRunner(workerPath, { execArgv, tsRunner });
|
206
286
|
const workerPathUrl = node_url.pathToFileURL(finalWorkerPath);
|
207
287
|
if (/\.[cm]ts$/.test(finalWorkerPath)) {
|
208
288
|
const isTsxSupported = !tsUseEsm || Number.parseFloat(process.versions.node) >= MTS_SUPPORTED_NODE_VERSION;
|
209
|
-
if (
|
289
|
+
if (!finalTsRunner) {
|
290
|
+
throw new Error("No ts runner specified, ts worker path is not supported");
|
291
|
+
} else if ([
|
292
|
+
// https://github.com/egoist/esbuild-register/issues/79
|
210
293
|
TsRunner.EsbuildRegister,
|
294
|
+
// https://github.com/folke/esbuild-runner/issues/67
|
211
295
|
TsRunner.EsbuildRunner,
|
296
|
+
// https://github.com/swc-project/swc-node/issues/667
|
212
297
|
TsRunner.SWC,
|
213
|
-
|
214
|
-
|
298
|
+
.../* istanbul ignore next */
|
299
|
+
isTsxSupported ? [] : [TsRunner.TSX]
|
300
|
+
].includes(finalTsRunner)) {
|
215
301
|
throw new Error(
|
216
|
-
`${
|
302
|
+
`${finalTsRunner} is not supported for ${ext} files yet` + /* istanbul ignore next */
|
303
|
+
(isTsxSupported ? ", you can try [tsx](https://github.com/esbuild-kit/tsx) instead" : "")
|
217
304
|
);
|
218
305
|
}
|
219
306
|
}
|
220
|
-
const
|
307
|
+
const finalGlobalShims = (globalShims === true ? DEFAULT_GLOBAL_SHIMS_PRESET : Array.isArray(globalShims) ? globalShims : []).filter(({ moduleName }) => utils.isPkgAvailable(moduleName));
|
308
|
+
const useGlobals = finalGlobalShims.length > 0;
|
309
|
+
const useEval = isTs ? !tsUseEsm : !jsUseEsm && useGlobals;
|
221
310
|
const worker = new node_worker_threads.Worker(
|
222
|
-
tsUseEsm &&
|
311
|
+
jsUseEsm && useGlobals || tsUseEsm && finalTsRunner === TsRunner.TsNode ? dataUrl(
|
312
|
+
`${generateGlobals(
|
313
|
+
finalWorkerPath,
|
314
|
+
finalGlobalShims
|
315
|
+
)};import '${String(workerPathUrl)}'`
|
316
|
+
) : useEval ? `${generateGlobals(
|
317
|
+
finalWorkerPath,
|
318
|
+
finalGlobalShims,
|
319
|
+
"require"
|
320
|
+
)};${encodeImportModule(finalWorkerPath, "require")}` : workerPathUrl,
|
223
321
|
{
|
224
322
|
eval: useEval,
|
225
323
|
workerData: { workerPort },
|
226
|
-
transferList: [workerPort],
|
324
|
+
transferList: [workerPort, ...transferList],
|
227
325
|
execArgv: finalExecArgv
|
228
326
|
}
|
229
327
|
);
|
@@ -260,50 +358,38 @@ function runAsWorker(fn) {
|
|
260
358
|
return;
|
261
359
|
}
|
262
360
|
const { workerPort } = node_worker_threads.workerData;
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
(
|
267
|
-
;
|
268
|
-
(() => __async(this, null, function* () {
|
269
|
-
const sharedBufferView = new Int32Array(sharedBuffer);
|
270
|
-
let msg;
|
271
|
-
try {
|
272
|
-
msg = { id, result: yield fn(...args) };
|
273
|
-
} catch (error) {
|
274
|
-
msg = { id, error, properties: extractProperties(error) };
|
275
|
-
}
|
276
|
-
workerPort.postMessage(msg);
|
277
|
-
Atomics.add(sharedBufferView, 0, 1);
|
278
|
-
Atomics.notify(sharedBufferView, 0);
|
279
|
-
}))();
|
280
|
-
}
|
281
|
-
);
|
282
|
-
} catch (error) {
|
283
|
-
node_worker_threads.parentPort.on(
|
284
|
-
"message",
|
285
|
-
({ sharedBuffer, id }) => {
|
361
|
+
node_worker_threads.parentPort.on(
|
362
|
+
"message",
|
363
|
+
({ sharedBuffer, id, args }) => {
|
364
|
+
(() => __async(this, null, function* () {
|
286
365
|
const sharedBufferView = new Int32Array(sharedBuffer);
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
366
|
+
let msg;
|
367
|
+
try {
|
368
|
+
msg = { id, result: yield fn(...args) };
|
369
|
+
} catch (error) {
|
370
|
+
msg = { id, error, properties: extractProperties(error) };
|
371
|
+
}
|
372
|
+
workerPort.postMessage(msg);
|
292
373
|
Atomics.add(sharedBufferView, 0, 1);
|
293
374
|
Atomics.notify(sharedBufferView, 0);
|
294
|
-
}
|
295
|
-
|
296
|
-
|
375
|
+
}))();
|
376
|
+
}
|
377
|
+
);
|
297
378
|
}
|
298
379
|
|
299
380
|
exports.DEFAULT_BUFFER_SIZE = DEFAULT_BUFFER_SIZE;
|
300
381
|
exports.DEFAULT_EXEC_ARGV = DEFAULT_EXEC_ARGV;
|
382
|
+
exports.DEFAULT_GLOBAL_SHIMS = DEFAULT_GLOBAL_SHIMS;
|
383
|
+
exports.DEFAULT_GLOBAL_SHIMS_PRESET = DEFAULT_GLOBAL_SHIMS_PRESET;
|
301
384
|
exports.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT;
|
302
385
|
exports.DEFAULT_TS_RUNNER = DEFAULT_TS_RUNNER;
|
303
386
|
exports.DEFAULT_WORKER_BUFFER_SIZE = DEFAULT_WORKER_BUFFER_SIZE;
|
304
387
|
exports.MTS_SUPPORTED_NODE_VERSION = MTS_SUPPORTED_NODE_VERSION;
|
305
388
|
exports.TsRunner = TsRunner;
|
389
|
+
exports._generateGlobals = _generateGlobals;
|
306
390
|
exports.createSyncFn = createSyncFn;
|
391
|
+
exports.encodeImportModule = encodeImportModule;
|
307
392
|
exports.extractProperties = extractProperties;
|
393
|
+
exports.generateGlobals = generateGlobals;
|
308
394
|
exports.isFile = isFile;
|
309
395
|
exports.runAsWorker = runAsWorker;
|
package/lib/index.d.ts
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
|
1
|
+
/// <reference types="node" />
|
2
|
+
import { type TransferListItem } from 'node:worker_threads';
|
3
|
+
import type { AnyAsyncFn, GlobalShim, Syncify, ValueOf } from './types.js';
|
2
4
|
export * from './types.js';
|
3
5
|
export declare const TsRunner: {
|
4
6
|
readonly TsNode: "ts-node";
|
@@ -12,17 +14,23 @@ export declare const DEFAULT_BUFFER_SIZE: number | undefined;
|
|
12
14
|
export declare const DEFAULT_TIMEOUT: number | undefined;
|
13
15
|
export declare const DEFAULT_WORKER_BUFFER_SIZE: number;
|
14
16
|
export declare const DEFAULT_EXEC_ARGV: string[];
|
15
|
-
export declare const DEFAULT_TS_RUNNER: TsRunner;
|
17
|
+
export declare const DEFAULT_TS_RUNNER: TsRunner | undefined;
|
18
|
+
export declare const DEFAULT_GLOBAL_SHIMS: boolean;
|
19
|
+
export declare const DEFAULT_GLOBAL_SHIMS_PRESET: GlobalShim[];
|
16
20
|
export declare const MTS_SUPPORTED_NODE_VERSION = 16;
|
17
21
|
export interface SynckitOptions {
|
18
22
|
bufferSize?: number;
|
19
23
|
timeout?: number;
|
20
24
|
execArgv?: string[];
|
21
25
|
tsRunner?: TsRunner;
|
26
|
+
transferList?: TransferListItem[];
|
27
|
+
globalShims?: GlobalShim[] | boolean;
|
22
28
|
}
|
23
29
|
export declare function extractProperties<T extends object>(object: T): T;
|
24
30
|
export declare function extractProperties<T>(object?: T): T | undefined;
|
25
31
|
export declare function createSyncFn<T extends AnyAsyncFn>(workerPath: string, bufferSize?: number, timeout?: number): Syncify<T>;
|
26
32
|
export declare function createSyncFn<T extends AnyAsyncFn>(workerPath: string, options?: SynckitOptions): Syncify<T>;
|
27
33
|
export declare const isFile: (path: string) => boolean;
|
34
|
+
export declare const encodeImportModule: (moduleNameOrGlobalShim: GlobalShim | string, type?: 'import' | 'require') => string;
|
35
|
+
export declare const generateGlobals: (workerPath: string, globalShims: GlobalShim[], type?: 'import' | 'require') => string;
|
28
36
|
export declare function runAsWorker<R = unknown, T extends AnyAsyncFn<R> = AnyAsyncFn<R>>(fn: T): void;
|
package/lib/index.js
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
import { __awaiter } from "tslib";
|
2
|
+
import { createHash } from 'node:crypto';
|
2
3
|
import fs from 'node:fs';
|
3
4
|
import { createRequire } from 'node:module';
|
4
5
|
import path from 'node:path';
|
5
|
-
import { pathToFileURL } from 'node:url';
|
6
|
-
import { MessageChannel, Worker, receiveMessageOnPort, workerData,
|
7
|
-
import { findUp, tryExtensions } from '@pkgr/utils';
|
6
|
+
import { fileURLToPath, pathToFileURL } from 'node:url';
|
7
|
+
import { MessageChannel, Worker, parentPort, receiveMessageOnPort, workerData, } from 'node:worker_threads';
|
8
|
+
import { findUp, isPkgAvailable, tryExtensions } from '@pkgr/utils';
|
8
9
|
export * from './types.js';
|
9
10
|
export const TsRunner = {
|
10
11
|
TsNode: 'ts-node',
|
@@ -13,15 +14,26 @@ export const TsRunner = {
|
|
13
14
|
SWC: 'swc',
|
14
15
|
TSX: 'tsx',
|
15
16
|
};
|
16
|
-
const { SYNCKIT_BUFFER_SIZE, SYNCKIT_TIMEOUT, SYNCKIT_EXEC_ARGV, SYNCKIT_TS_RUNNER, NODE_OPTIONS, } = process.env;
|
17
|
+
const { SYNCKIT_BUFFER_SIZE, SYNCKIT_TIMEOUT, SYNCKIT_EXEC_ARGV, SYNCKIT_TS_RUNNER, SYNCKIT_GLOBAL_SHIMS, NODE_OPTIONS, } = process.env;
|
17
18
|
export const DEFAULT_BUFFER_SIZE = SYNCKIT_BUFFER_SIZE
|
18
19
|
? +SYNCKIT_BUFFER_SIZE
|
19
20
|
: undefined;
|
20
21
|
export const DEFAULT_TIMEOUT = SYNCKIT_TIMEOUT ? +SYNCKIT_TIMEOUT : undefined;
|
21
22
|
export const DEFAULT_WORKER_BUFFER_SIZE = DEFAULT_BUFFER_SIZE || 1024;
|
22
23
|
export const DEFAULT_EXEC_ARGV = (SYNCKIT_EXEC_ARGV === null || SYNCKIT_EXEC_ARGV === void 0 ? void 0 : SYNCKIT_EXEC_ARGV.split(',')) || [];
|
23
|
-
export const DEFAULT_TS_RUNNER =
|
24
|
-
|
24
|
+
export const DEFAULT_TS_RUNNER = SYNCKIT_TS_RUNNER;
|
25
|
+
export const DEFAULT_GLOBAL_SHIMS = ['1', 'true'].includes(SYNCKIT_GLOBAL_SHIMS);
|
26
|
+
export const DEFAULT_GLOBAL_SHIMS_PRESET = [
|
27
|
+
{
|
28
|
+
moduleName: 'node-fetch',
|
29
|
+
globalName: 'fetch',
|
30
|
+
},
|
31
|
+
{
|
32
|
+
moduleName: 'node:perf_hooks',
|
33
|
+
globalName: 'performance',
|
34
|
+
named: 'performance',
|
35
|
+
},
|
36
|
+
];
|
25
37
|
export const MTS_SUPPORTED_NODE_VERSION = 16;
|
26
38
|
const syncFnCache = new Map();
|
27
39
|
export function extractProperties(object) {
|
@@ -52,10 +64,11 @@ const cjsRequire = typeof require === 'undefined'
|
|
52
64
|
: require;
|
53
65
|
const dataUrl = (code) => new URL(`data:text/javascript,${encodeURIComponent(code)}`);
|
54
66
|
export const isFile = (path) => {
|
67
|
+
var _a;
|
55
68
|
try {
|
56
|
-
return fs.statSync(path).isFile();
|
69
|
+
return !!((_a = fs.statSync(path, { throwIfNoEntry: false })) === null || _a === void 0 ? void 0 : _a.isFile());
|
57
70
|
}
|
58
|
-
catch (
|
71
|
+
catch (_b) {
|
59
72
|
return false;
|
60
73
|
}
|
61
74
|
};
|
@@ -68,15 +81,18 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
68
81
|
: workerPath;
|
69
82
|
let extensions;
|
70
83
|
switch (ext) {
|
71
|
-
case '.cjs':
|
84
|
+
case '.cjs': {
|
72
85
|
extensions = ['.cts', '.cjs'];
|
73
86
|
break;
|
74
|
-
|
87
|
+
}
|
88
|
+
case '.mjs': {
|
75
89
|
extensions = ['.mts', '.mjs'];
|
76
90
|
break;
|
77
|
-
|
91
|
+
}
|
92
|
+
default: {
|
78
93
|
extensions = ['.ts', '.js'];
|
79
94
|
break;
|
95
|
+
}
|
80
96
|
}
|
81
97
|
const found = tryExtensions(workPathWithoutExt, extensions);
|
82
98
|
let differentExt;
|
@@ -88,6 +104,7 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
88
104
|
}
|
89
105
|
}
|
90
106
|
const isTs = /\.[cm]?ts$/.test(workerPath);
|
107
|
+
let jsUseEsm = workerPath.endsWith('.mjs');
|
91
108
|
let tsUseEsm = workerPath.endsWith('.mts');
|
92
109
|
if (isTs) {
|
93
110
|
if (!tsUseEsm) {
|
@@ -98,6 +115,9 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
98
115
|
'module';
|
99
116
|
}
|
100
117
|
}
|
118
|
+
if (tsRunner == null && isPkgAvailable(TsRunner.TsNode)) {
|
119
|
+
tsRunner = TsRunner.TsNode;
|
120
|
+
}
|
101
121
|
switch (tsRunner) {
|
102
122
|
case TsRunner.TsNode: {
|
103
123
|
if (tsUseEsm) {
|
@@ -139,6 +159,13 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
139
159
|
}
|
140
160
|
}
|
141
161
|
}
|
162
|
+
else if (!jsUseEsm) {
|
163
|
+
const pkg = findUp(workerPath);
|
164
|
+
if (pkg) {
|
165
|
+
jsUseEsm =
|
166
|
+
cjsRequire(pkg).type === 'module';
|
167
|
+
}
|
168
|
+
}
|
142
169
|
if (process.versions.pnp) {
|
143
170
|
const nodeOptions = NODE_OPTIONS === null || NODE_OPTIONS === void 0 ? void 0 : NODE_OPTIONS.split(/\s+/);
|
144
171
|
let pnpApiPath;
|
@@ -161,39 +188,110 @@ const setupTsRunner = (workerPath, { execArgv, tsRunner }) => {
|
|
161
188
|
return {
|
162
189
|
ext,
|
163
190
|
isTs,
|
191
|
+
jsUseEsm,
|
192
|
+
tsRunner,
|
164
193
|
tsUseEsm,
|
165
194
|
workerPath,
|
166
195
|
execArgv,
|
167
196
|
};
|
168
197
|
};
|
169
|
-
|
198
|
+
const md5Hash = (text) => createHash('md5').update(text).digest('hex');
|
199
|
+
export const encodeImportModule = (moduleNameOrGlobalShim, type = 'import') => {
|
200
|
+
const { moduleName, globalName, named, conditional } = typeof moduleNameOrGlobalShim === 'string'
|
201
|
+
? { moduleName: moduleNameOrGlobalShim }
|
202
|
+
: moduleNameOrGlobalShim;
|
203
|
+
const importStatement = type === 'import'
|
204
|
+
? `import${globalName
|
205
|
+
? ' ' +
|
206
|
+
(named === null
|
207
|
+
? '* as ' + globalName
|
208
|
+
: (named === null || named === void 0 ? void 0 : named.trim())
|
209
|
+
? `{${named}}`
|
210
|
+
: globalName) +
|
211
|
+
' from'
|
212
|
+
: ''} '${path.isAbsolute(moduleName)
|
213
|
+
? String(pathToFileURL(moduleName))
|
214
|
+
: moduleName}'`
|
215
|
+
: `${globalName
|
216
|
+
? 'const ' + ((named === null || named === void 0 ? void 0 : named.trim()) ? `{${named}}` : globalName) + '='
|
217
|
+
: ''}require('${moduleName
|
218
|
+
.replace(/\\/g, '\\\\')}')`;
|
219
|
+
if (!globalName) {
|
220
|
+
return importStatement;
|
221
|
+
}
|
222
|
+
const overrideStatement = `globalThis.${globalName}=${(named === null || named === void 0 ? void 0 : named.trim()) ? named : globalName}`;
|
223
|
+
return (importStatement +
|
224
|
+
(conditional === false
|
225
|
+
? `;${overrideStatement}`
|
226
|
+
: `;if(!globalThis.${globalName})${overrideStatement}`));
|
227
|
+
};
|
228
|
+
export const _generateGlobals = (globalShims, type) => globalShims.reduce((acc, shim) => `${acc}${acc ? ';' : ''}${encodeImportModule(shim, type)}`, '');
|
229
|
+
const globalsCache = new Map();
|
230
|
+
let tmpdir;
|
231
|
+
const _dirname = typeof __dirname === 'undefined'
|
232
|
+
? path.dirname(fileURLToPath(import.meta.url))
|
233
|
+
: __dirname;
|
234
|
+
export const generateGlobals = (workerPath, globalShims, type = 'import') => {
|
235
|
+
const cached = globalsCache.get(workerPath);
|
236
|
+
if (cached) {
|
237
|
+
const [content, filepath] = cached;
|
238
|
+
if ((type === 'require' && !filepath) ||
|
239
|
+
(type === 'import' && filepath && isFile(filepath))) {
|
240
|
+
return content;
|
241
|
+
}
|
242
|
+
}
|
243
|
+
const globals = _generateGlobals(globalShims, type);
|
244
|
+
let content = globals;
|
245
|
+
let filepath;
|
246
|
+
if (type === 'import') {
|
247
|
+
if (!tmpdir) {
|
248
|
+
tmpdir = path.resolve(findUp(_dirname), '../node_modules/.synckit');
|
249
|
+
}
|
250
|
+
fs.mkdirSync(tmpdir, { recursive: true });
|
251
|
+
filepath = path.resolve(tmpdir, md5Hash(workerPath) + '.mjs');
|
252
|
+
content = encodeImportModule(filepath);
|
253
|
+
fs.writeFileSync(filepath, globals);
|
254
|
+
}
|
255
|
+
globalsCache.set(workerPath, [content, filepath]);
|
256
|
+
return content;
|
257
|
+
};
|
258
|
+
function startWorkerThread(workerPath, { bufferSize = DEFAULT_WORKER_BUFFER_SIZE, timeout = DEFAULT_TIMEOUT, execArgv = DEFAULT_EXEC_ARGV, tsRunner = DEFAULT_TS_RUNNER, transferList = [], globalShims = DEFAULT_GLOBAL_SHIMS, } = {}) {
|
170
259
|
const { port1: mainPort, port2: workerPort } = new MessageChannel();
|
171
|
-
const { isTs, ext, tsUseEsm, workerPath: finalWorkerPath, execArgv: finalExecArgv, } = setupTsRunner(workerPath, { execArgv, tsRunner });
|
260
|
+
const { isTs, ext, jsUseEsm, tsUseEsm, tsRunner: finalTsRunner, workerPath: finalWorkerPath, execArgv: finalExecArgv, } = setupTsRunner(workerPath, { execArgv, tsRunner });
|
172
261
|
const workerPathUrl = pathToFileURL(finalWorkerPath);
|
173
262
|
if (/\.[cm]ts$/.test(finalWorkerPath)) {
|
174
263
|
const isTsxSupported = !tsUseEsm ||
|
175
264
|
Number.parseFloat(process.versions.node) >= MTS_SUPPORTED_NODE_VERSION;
|
176
|
-
if (
|
265
|
+
if (!finalTsRunner) {
|
266
|
+
throw new Error('No ts runner specified, ts worker path is not supported');
|
267
|
+
}
|
268
|
+
else if ([
|
177
269
|
TsRunner.EsbuildRegister,
|
178
270
|
TsRunner.EsbuildRunner,
|
179
271
|
TsRunner.SWC,
|
180
272
|
...(isTsxSupported ? [] : [TsRunner.TSX]),
|
181
|
-
].includes(
|
182
|
-
throw new Error(`${
|
273
|
+
].includes(finalTsRunner)) {
|
274
|
+
throw new Error(`${finalTsRunner} is not supported for ${ext} files yet` +
|
183
275
|
(isTsxSupported
|
184
276
|
? ', you can try [tsx](https://github.com/esbuild-kit/tsx) instead'
|
185
277
|
: ''));
|
186
278
|
}
|
187
279
|
}
|
188
|
-
const
|
189
|
-
|
190
|
-
|
280
|
+
const finalGlobalShims = (globalShims === true
|
281
|
+
? DEFAULT_GLOBAL_SHIMS_PRESET
|
282
|
+
: Array.isArray(globalShims)
|
283
|
+
? globalShims
|
284
|
+
: []).filter(({ moduleName }) => isPkgAvailable(moduleName));
|
285
|
+
const useGlobals = finalGlobalShims.length > 0;
|
286
|
+
const useEval = isTs ? !tsUseEsm : !jsUseEsm && useGlobals;
|
287
|
+
const worker = new Worker((jsUseEsm && useGlobals) || (tsUseEsm && finalTsRunner === TsRunner.TsNode)
|
288
|
+
? dataUrl(`${generateGlobals(finalWorkerPath, finalGlobalShims)};import '${String(workerPathUrl)}'`)
|
191
289
|
: useEval
|
192
|
-
?
|
290
|
+
? `${generateGlobals(finalWorkerPath, finalGlobalShims, 'require')};${encodeImportModule(finalWorkerPath, 'require')}`
|
193
291
|
: workerPathUrl, {
|
194
292
|
eval: useEval,
|
195
293
|
workerData: { workerPort },
|
196
|
-
transferList: [workerPort],
|
294
|
+
transferList: [workerPort, ...transferList],
|
197
295
|
execArgv: finalExecArgv,
|
198
296
|
});
|
199
297
|
let nextID = 0;
|
@@ -225,35 +323,21 @@ export function runAsWorker(fn) {
|
|
225
323
|
return;
|
226
324
|
}
|
227
325
|
const { workerPort } = workerData;
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
(() => __awaiter(this, void 0, void 0, function* () {
|
232
|
-
const sharedBufferView = new Int32Array(sharedBuffer);
|
233
|
-
let msg;
|
234
|
-
try {
|
235
|
-
msg = { id, result: yield fn(...args) };
|
236
|
-
}
|
237
|
-
catch (error) {
|
238
|
-
msg = { id, error, properties: extractProperties(error) };
|
239
|
-
}
|
240
|
-
workerPort.postMessage(msg);
|
241
|
-
Atomics.add(sharedBufferView, 0, 1);
|
242
|
-
Atomics.notify(sharedBufferView, 0);
|
243
|
-
}))();
|
244
|
-
});
|
245
|
-
}
|
246
|
-
catch (error) {
|
247
|
-
parentPort.on('message', ({ sharedBuffer, id }) => {
|
326
|
+
parentPort.on('message', ({ sharedBuffer, id, args }) => {
|
327
|
+
;
|
328
|
+
(() => __awaiter(this, void 0, void 0, function* () {
|
248
329
|
const sharedBufferView = new Int32Array(sharedBuffer);
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
330
|
+
let msg;
|
331
|
+
try {
|
332
|
+
msg = { id, result: yield fn(...args) };
|
333
|
+
}
|
334
|
+
catch (error) {
|
335
|
+
msg = { id, error, properties: extractProperties(error) };
|
336
|
+
}
|
337
|
+
workerPort.postMessage(msg);
|
254
338
|
Atomics.add(sharedBufferView, 0, 1);
|
255
339
|
Atomics.notify(sharedBufferView, 0);
|
256
|
-
});
|
257
|
-
}
|
340
|
+
}))();
|
341
|
+
});
|
258
342
|
}
|
259
343
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,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,EAEpB,UAAU,EACV,UAAU,GACX,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAYnD,cAAc,YAAY,CAAA;AAE1B,MAAM,CAAC,MAAM,QAAQ,GAAG;IAEtB,MAAM,EAAE,SAAS;IAEjB,eAAe,EAAE,kBAAkB;IAEnC,aAAa,EAAE,gBAAgB;IAE/B,GAAG,EAAE,KAAK;IAEV,GAAG,EAAE,KAAK;CACF,CAAA;AAIV,MAAM,EACJ,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,GAAG,OAAO,CAAC,GAAG,CAAA;AAEf,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;AAGrE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,KAAK,CAAC,GAAG,CAAC,KAAI,EAAE,CAAA;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,iBAAiB;IACjD,QAAQ,CAAC,MAAM,CAAa,CAAA;AAE9B,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAA;AAE5C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAA;AAc5C,MAAM,UAAU,iBAAiB,CAAI,MAAU;IAC7C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,UAAU,GAAG,EAAO,CAAA;QAC1B,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;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,EACiB,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,CAA4B,OAAO,CAAA;AAExC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAC/B,IAAI,GAAG,CAAC,wBAAwB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAE7D,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;IACrC,IAAI;QACF,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAA;KAClC;IAAC,WAAM;QACN,OAAO,KAAK,CAAA;KACb;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CACpB,UAAkB,EAClB,EAAE,QAAQ,EAAE,QAAQ,EAA8C,EAClE,EAAE;IACF,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAElC,IACE,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC;QAC1C,CAAC,CAAC,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACjC;QACA,MAAM,kBAAkB,GAAG,GAAG;YAC5B,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC;YAClC,CAAC,CAAC,UAAU,CAAA;QACd,IAAI,UAAoB,CAAA;QACxB,QAAQ,GAAG,EAAE;YACX,KAAK,MAAM;gBACT,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;gBAC7B,MAAK;YACP,KAAK,MAAM;gBACT,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;gBAC7B,MAAK;YACP;gBACE,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;gBAC3B,MAAK;SACR;QACD,MAAM,KAAK,GAAG,aAAa,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAA;QAC3D,IAAI,YAAiC,CAAA;QACrC,IAAI,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,GAAG,KAAK,KAAK,kBAAkB,CAAC,CAAC,EAAE;YACpE,UAAU,GAAG,KAAK,CAAA;YAClB,IAAI,YAAY,EAAE;gBAChB,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;aAC/B;SACF;KACF;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAE1C,IAAI,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAE1C,IAAI,IAAI,EAAE;QACR,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;YAC9B,IAAI,GAAG,EAAE;gBACP,QAAQ;oBACL,UAAU,CAAC,GAAG,CAAsC,CAAC,IAAI;wBAC1D,QAAQ,CAAA;aACX;SACF;QACD,QAAQ,QAAQ,EAAE;YAChB,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpB,IAAI,QAAQ,EAAE;oBACZ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;wBAClC,QAAQ,GAAG,CAAC,UAAU,EAAE,GAAG,QAAQ,CAAC,MAAM,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAA;qBAC/D;iBACF;qBAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBACnC,QAAQ,GAAG,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,MAAM,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAA;iBAC9D;gBACD,MAAK;aACN;YACD,KAAK,QAAQ,CAAC,eAAe,CAAC,CAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC5B,QAAQ,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,eAAe,EAAE,GAAG,QAAQ,CAAC,CAAA;iBACzD;gBACD,MAAK;aACN;YACD,KAAK,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC3B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC5B,QAAQ,GAAG,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,aAAa,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAA;iBACrE;gBACD,MAAK;aACN;YACD,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACjB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC5B,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,GAAG,gBAAgB,EAAE,GAAG,QAAQ,CAAC,CAAA;iBACjE;gBACD,MAAK;aACN;YACD,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACjB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;oBAClC,QAAQ,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAA;iBACnD;gBACD,MAAK;aACN;YACD,OAAO,CAAC,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aAC1D;SACF;KACF;IAGD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE;QACxB,MAAM,WAAW,GAAG,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC9C,IAAI,UAA8B,CAAA;QAClC,IAAI;YAEF,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;SAC1C;QAAC,WAAM,GAAE;QACV,IACE,UAAU;YACV,CAAC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAChB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAChB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACpC,UAAU,KAAK,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAC5D,CAAA;YACD,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAC9B;YACA,QAAQ,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC,CAAA;YAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAA;YACpE,IAAI,MAAM,CAAC,aAAa,CAAC,EAAE;gBAIzB,MAAM,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAClE,QAAQ,GAAG,CAAC,uBAAuB,EAAE,kBAAkB,EAAE,GAAG,QAAQ,CAAC,CAAA;aACtE;SACF;KACF;IAED,OAAO;QACL,GAAG;QACH,IAAI;QACJ,QAAQ;QACR,UAAU;QACV,QAAQ;KACT,CAAA;AACH,CAAC,CAAA;AAGD,SAAS,iBAAiB,CACxB,UAAkB,EAClB,EACE,UAAU,GAAG,0BAA0B,EACvC,OAAO,GAAG,eAAe,EACzB,QAAQ,GAAG,iBAAiB,EAC5B,QAAQ,GAAG,iBAAiB,MACV,EAAE;IAEtB,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,cAAc,EAAE,CAAA;IAEnE,MAAM,EACJ,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,aAAa,GACxB,GAAG,aAAa,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;IAErD,MAAM,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;IAEpD,IAAI,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;QACrC,MAAM,cAAc,GAClB,CAAC,QAAQ;YACT,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAA;QAExE,IAEI;YAEE,QAAQ,CAAC,eAAe;YAExB,QAAQ,CAAC,aAAa;YAEtB,QAAQ,CAAC,GAAG;YACZ,GAA8B,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SAEvE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACpB;YACA,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,yBAAyB,GAAG,YAAY;gBACjD,CAAC,cAAc;oBACb,CAAC,CAAC,iEAAiE;oBACnE,CAAC,CAAC,EAAE,CAAC,CACV,CAAA;SACF;KACF;IAED,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAA;IAEjC,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM;QACtC,CAAC,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC;QAC9C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,YAAY,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI;YACxD,CAAC,CAAC,aAAa,EACjB;QACE,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,EAAE,UAAU,EAAE;QAC1B,YAAY,EAAE,CAAC,UAAU,CAAC;QAC1B,QAAQ,EAAE,aAAa;KACxB,CACF,CAAA;IAED,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,MAAM,MAAM,GAAG,CAAC,GAAG,IAAmB,EAAK,EAAE;QAC3C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;QAEnB,MAAM,YAAY,GAAG,IAAI,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACtD,MAAM,gBAAgB,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAA;QAErD,MAAM,GAAG,GAAuC,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QAC1E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAEvB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;QAG5D,IAAI,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,MAAM,CAAC,CAAA;SACpE;QAED,MAAM,EACJ,EAAE,EAAE,GAAG,EACP,MAAM,EACN,KAAK,EACL,UAAU,GACX,GAAI,oBAAoB,CAAC,QAAQ,CAAyC;aACxE,OAAO,CAAA;QAGV,IAAI,EAAE,KAAK,GAAG,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,EAAE,eAAe,GAAG,EAAE,CAAC,CAAA;SACvE;QAED,IAAI,KAAK,EAAE;YACT,MAAM,MAAM,CAAC,MAAM,CAAC,KAAe,EAAE,UAAU,CAAC,CAAA;SACjD;QAED,OAAO,MAAO,CAAA;IAChB,CAAC,CAAA;IAED,MAAM,CAAC,KAAK,EAAE,CAAA;IAEd,OAAO,MAAM,CAAA;AACf,CAAC;AAGD,MAAM,UAAU,WAAW,CAGzB,EAAK;IAEL,IAAI,CAAC,UAAU,EAAE;QACf,OAAM;KACP;IAED,MAAM,EAAE,UAAU,EAAE,GAAG,UAAwB,CAAA;IAE/C,IAAI;QACF,UAAW,CAAC,EAAE,CACZ,SAAS,EACT,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAsC,EAAE,EAAE;YAEjE,CAAC;YAAA,CAAC,GAAS,EAAE;gBACX,MAAM,gBAAgB,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAA;gBACrD,IAAI,GAA2B,CAAA;gBAC/B,IAAI;oBACF,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;iBACxC;gBAAC,OAAO,KAAc,EAAE;oBACvB,GAAG,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAA;iBAC1D;gBACD,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBAC3B,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBACnC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;YACrC,CAAC,CAAA,CAAC,EAAE,CAAA;QACN,CAAC,CACF,CAAA;KASF;IAAC,OAAO,KAAK,EAAE;QACd,UAAW,CAAC,EAAE,CACZ,SAAS,EACT,CAAC,EAAE,YAAY,EAAE,EAAE,EAAsC,EAAE,EAAE;YAC3D,MAAM,gBAAgB,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAA;YACrD,UAAU,CAAC,WAAW,CAAC;gBACrB,EAAE;gBACF,KAAK;gBACL,UAAU,EAAE,iBAAiB,CAAC,KAAK,CAAC;aACrC,CAAC,CAAA;YACF,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;YACnC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;QACrC,CAAC,CACF,CAAA;KACF;AACH,CAAC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
@@ -22,3 +22,9 @@ export interface DataMessage<T> {
|
|
22
22
|
export interface WorkerToMainMessage<T = unknown> extends DataMessage<T> {
|
23
23
|
id: number;
|
24
24
|
}
|
25
|
+
export interface GlobalShim {
|
26
|
+
moduleName: string;
|
27
|
+
globalName?: string;
|
28
|
+
named?: string | null;
|
29
|
+
conditional?: boolean;
|
30
|
+
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "synckit",
|
3
|
-
"version": "0.8.
|
3
|
+
"version": "0.8.7",
|
4
4
|
"type": "module",
|
5
5
|
"description": "Perform async work synchronously in Node.js using `worker_threads` with first-class TypeScript support.",
|
6
6
|
"repository": "git+https://github.com/un-ts/synckit.git",
|
@@ -33,7 +33,7 @@
|
|
33
33
|
"synckit"
|
34
34
|
],
|
35
35
|
"dependencies": {
|
36
|
-
"@pkgr/utils": "^2.
|
37
|
-
"tslib": "^2.
|
36
|
+
"@pkgr/utils": "^2.4.2",
|
37
|
+
"tslib": "^2.6.2"
|
38
38
|
}
|
39
39
|
}
|