threadsx 2.1.0 → 2.2.0

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.
Files changed (77) hide show
  1. package/dist/master/implementation.node.js +12 -16
  2. package/dist/master/pool.js +16 -5
  3. package/dist/master/spawn.js +24 -7
  4. package/dist/node-require.d.ts +13 -0
  5. package/dist/node-require.js +87 -0
  6. package/dist/worker_threads.d.ts +3 -7
  7. package/dist/worker_threads.js +35 -11
  8. package/dist-esm/common.js +1 -0
  9. package/dist-esm/common.js.map +1 -0
  10. package/dist-esm/errors.js +1 -0
  11. package/dist-esm/errors.js.map +1 -0
  12. package/dist-esm/index.js +1 -0
  13. package/dist-esm/index.js.map +1 -0
  14. package/dist-esm/master/get-bundle-url.browser.js +1 -0
  15. package/dist-esm/master/get-bundle-url.browser.js.map +1 -0
  16. package/dist-esm/master/implementation.browser.js +1 -0
  17. package/dist-esm/master/implementation.browser.js.map +1 -0
  18. package/dist-esm/master/implementation.js +1 -0
  19. package/dist-esm/master/implementation.js.map +1 -0
  20. package/dist-esm/master/implementation.node.js +13 -16
  21. package/dist-esm/master/implementation.node.js.map +1 -0
  22. package/dist-esm/master/index.js +1 -0
  23. package/dist-esm/master/index.js.map +1 -0
  24. package/dist-esm/master/invocation-proxy.js +1 -0
  25. package/dist-esm/master/invocation-proxy.js.map +1 -0
  26. package/dist-esm/master/pool-types.js +1 -0
  27. package/dist-esm/master/pool-types.js.map +1 -0
  28. package/dist-esm/master/pool.js +17 -5
  29. package/dist-esm/master/pool.js.map +1 -0
  30. package/dist-esm/master/register.js +1 -0
  31. package/dist-esm/master/register.js.map +1 -0
  32. package/dist-esm/master/spawn.js +25 -7
  33. package/dist-esm/master/spawn.js.map +1 -0
  34. package/dist-esm/master/thread.js +1 -0
  35. package/dist-esm/master/thread.js.map +1 -0
  36. package/dist-esm/node-require.js +50 -0
  37. package/dist-esm/node-require.js.map +1 -0
  38. package/dist-esm/observable-promise.js +1 -0
  39. package/dist-esm/observable-promise.js.map +1 -0
  40. package/dist-esm/observable.js +1 -0
  41. package/dist-esm/observable.js.map +1 -0
  42. package/dist-esm/ponyfills.js +1 -0
  43. package/dist-esm/ponyfills.js.map +1 -0
  44. package/dist-esm/promise.js +1 -0
  45. package/dist-esm/promise.js.map +1 -0
  46. package/dist-esm/serializers.js +1 -0
  47. package/dist-esm/serializers.js.map +1 -0
  48. package/dist-esm/symbols.js +1 -0
  49. package/dist-esm/symbols.js.map +1 -0
  50. package/dist-esm/transferable.js +1 -0
  51. package/dist-esm/transferable.js.map +1 -0
  52. package/dist-esm/types/master.js +1 -0
  53. package/dist-esm/types/master.js.map +1 -0
  54. package/dist-esm/types/messages.js +1 -0
  55. package/dist-esm/types/messages.js.map +1 -0
  56. package/dist-esm/types/worker.js +1 -0
  57. package/dist-esm/types/worker.js.map +1 -0
  58. package/dist-esm/worker/bundle-entry.js +1 -0
  59. package/dist-esm/worker/bundle-entry.js.map +1 -0
  60. package/dist-esm/worker/implementation.browser.js +1 -0
  61. package/dist-esm/worker/implementation.browser.js.map +1 -0
  62. package/dist-esm/worker/implementation.js +1 -0
  63. package/dist-esm/worker/implementation.js.map +1 -0
  64. package/dist-esm/worker/implementation.worker_threads.js +1 -0
  65. package/dist-esm/worker/implementation.worker_threads.js.map +1 -0
  66. package/dist-esm/worker/index.js +1 -0
  67. package/dist-esm/worker/index.js.map +1 -0
  68. package/dist-esm/worker_threads.js +3 -11
  69. package/dist-esm/worker_threads.js.map +1 -0
  70. package/esm/master/implementation.node.mjs +12 -16
  71. package/esm/master/pool.mjs +16 -5
  72. package/esm/master/spawn.mjs +24 -7
  73. package/esm/node-require.mjs +58 -0
  74. package/esm/worker/implementation.mjs +0 -1
  75. package/esm/worker/implementation.worker_threads.mjs +0 -2
  76. package/esm/worker_threads.mjs +3 -11
  77. package/package.json +15 -7
@@ -48,6 +48,8 @@ const callsites_1 = __importDefault(require("callsites"));
48
48
  const os_1 = require("os");
49
49
  const path = __importStar(require("path"));
50
50
  const url_1 = require("url");
51
+ const node_require_1 = require("../node-require");
52
+ const worker_threads_1 = __importDefault(require("../worker_threads"));
51
53
  let detectedTsRuntime;
52
54
  exports.defaultPoolSize = (0, os_1.cpus)().length;
53
55
  /**
@@ -65,7 +67,7 @@ function signalHandlersDisabled() {
65
67
  * spawned directly during development. Prefers `tsx`, falls back to `ts-node`.
66
68
  */
67
69
  function detectTsRuntime() {
68
- if (typeof __non_webpack_require__ === "function") {
70
+ if ((0, node_require_1.isWebpackBundle)()) {
69
71
  // Webpack build: => No TS runtime required or possible
70
72
  return null;
71
73
  }
@@ -75,7 +77,7 @@ function detectTsRuntime() {
75
77
  detectedTsRuntime = null;
76
78
  for (const candidate of ["tsx", "ts-node"]) {
77
79
  try {
78
- eval("require").resolve(candidate);
80
+ (0, node_require_1.getNodeRequire)().resolve(candidate);
79
81
  detectedTsRuntime = candidate;
80
82
  break;
81
83
  }
@@ -123,19 +125,17 @@ function rebaseScriptPath(scriptPath, ignoreRegex) {
123
125
  }
124
126
  function resolveScriptPath(scriptPath, baseURL) {
125
127
  const makeRelative = (filePath) => {
126
- // eval() hack is also webpack-related
127
- return path.isAbsolute(filePath) ? filePath : path.join(baseURL || eval("__dirname"), filePath);
128
+ return path.isAbsolute(filePath) ? filePath : path.join(baseURL || (0, node_require_1.getModuleDirname)(), filePath);
128
129
  };
129
- const workerFilePath = typeof __non_webpack_require__ === "function"
130
- ? __non_webpack_require__.resolve(makeRelative(scriptPath))
131
- : eval("require").resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
130
+ // In a webpack bundle, walking the call stack is useless (every caller lives
131
+ // inside the bundle), so relative paths resolve without rebasing.
132
+ const workerFilePath = (0, node_require_1.isWebpackBundle)()
133
+ ? (0, node_require_1.getNodeRequire)().resolve(makeRelative(scriptPath))
134
+ : (0, node_require_1.getNodeRequire)().resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
132
135
  return workerFilePath;
133
136
  }
134
137
  function initWorkerThreadsWorker() {
135
- // Webpack hack
136
- const NativeWorker = typeof __non_webpack_require__ === "function"
137
- ? __non_webpack_require__("worker_threads").Worker
138
- : eval("require")("worker_threads").Worker;
138
+ const NativeWorker = (0, worker_threads_1.default)().Worker;
139
139
  let allWorkers = [];
140
140
  class Worker extends NativeWorker {
141
141
  constructor(scriptPath, options) {
@@ -214,9 +214,5 @@ function getWorkerImplementation() {
214
214
  return implementation;
215
215
  }
216
216
  function isWorkerRuntime() {
217
- // Webpack hack
218
- const isMainThread = typeof __non_webpack_require__ === "function"
219
- ? __non_webpack_require__("worker_threads").isMainThread
220
- : eval("require")("worker_threads").isMainThread;
221
- return !isMainThread;
217
+ return !(0, worker_threads_1.default)().isMainThread;
222
218
  }
@@ -147,6 +147,13 @@ class WorkerPool {
147
147
  eventSubscription.unsubscribe();
148
148
  reject(event.error);
149
149
  }
150
+ else if (event.type === pool_types_1.PoolEventType.taskCanceled && event.taskID === taskID) {
151
+ // Without this branch a canceled task would keep its event
152
+ // subscription alive for the pool's whole lifetime and its promise
153
+ // would never settle.
154
+ eventSubscription.unsubscribe();
155
+ reject(Error("Task has been canceled."));
156
+ }
150
157
  else if (event.type === pool_types_1.PoolEventType.terminated) {
151
158
  eventSubscription.unsubscribe();
152
159
  reject(Error("Pool has been terminated before task was run."));
@@ -164,10 +171,12 @@ class WorkerPool {
164
171
  }
165
172
  });
166
173
  if (this.initErrors.length > 0) {
174
+ failureSubscription.unsubscribe();
167
175
  return Promise.reject(this.initErrors[0]);
168
176
  }
169
177
  if (allowResolvingImmediately && this.taskQueue.length === 0) {
170
178
  yield (0, ponyfills_1.allSettled)(getCurrentlyRunningTasks());
179
+ failureSubscription.unsubscribe();
171
180
  return taskFailures;
172
181
  }
173
182
  yield new Promise((resolve, reject) => {
@@ -234,6 +243,13 @@ class WorkerPool {
234
243
  if (this.initErrors.length > 0) {
235
244
  throw this.initErrors[0];
236
245
  }
246
+ // Check the queue limit before taskCompletion() below subscribes to the
247
+ // pool events — throwing after would leak that subscription.
248
+ if (this.taskQueue.length >= maxQueuedJobs) {
249
+ throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
250
+ "This usually happens for one of two reasons: We are either at peak " +
251
+ "workload right now or some tasks just won't finish, thus blocking the pool.");
252
+ }
237
253
  const taskID = this.nextTaskID++;
238
254
  const taskCompletion = this.taskCompletion(taskID);
239
255
  taskCompletion.catch((error) => {
@@ -255,11 +271,6 @@ class WorkerPool {
255
271
  },
256
272
  then: taskCompletion.then.bind(taskCompletion)
257
273
  };
258
- if (this.taskQueue.length >= maxQueuedJobs) {
259
- throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
260
- "This usually happens for one of two reasons: We are either at peak " +
261
- "workload right now or some tasks just won't finish, thus blocking the pool.");
262
- }
263
274
  this.debug(`Queueing task #${task.id}...`);
264
275
  this.taskQueue.push(task);
265
276
  this.eventSubject.next({
@@ -81,17 +81,32 @@ function createEventObservable(worker, workerTermination) {
81
81
  };
82
82
  observer.next(workerEvent);
83
83
  });
84
- worker.addEventListener("message", messageHandler);
85
- worker.addEventListener("unhandledrejection", rejectionHandler);
86
- workerTermination.then(() => {
84
+ let finished = false;
85
+ const removeListeners = () => {
86
+ worker.removeEventListener("message", messageHandler);
87
+ worker.removeEventListener("unhandledrejection", rejectionHandler);
88
+ worker.removeEventListener("exit", exitHandler);
89
+ };
90
+ const finish = () => {
91
+ if (finished)
92
+ return;
93
+ finished = true;
87
94
  const terminationEvent = {
88
95
  type: master_1.WorkerEventType.termination
89
96
  };
90
- worker.removeEventListener("message", messageHandler);
91
- worker.removeEventListener("unhandledrejection", rejectionHandler);
97
+ removeListeners();
92
98
  observer.next(terminationEvent);
93
99
  observer.complete();
94
- });
100
+ };
101
+ // A worker can also go away without Thread.terminate() being called (crash,
102
+ // process.exit() in the worker). Complete the observable and detach the
103
+ // listeners in that case, too, instead of leaving them behind forever.
104
+ const exitHandler = (() => finish());
105
+ worker.addEventListener("message", messageHandler);
106
+ worker.addEventListener("unhandledrejection", rejectionHandler);
107
+ worker.addEventListener("exit", exitHandler);
108
+ workerTermination.then(finish);
109
+ return removeListeners;
95
110
  });
96
111
  }
97
112
  function createTerminator(worker) {
@@ -126,7 +141,7 @@ function setPrivateThreadProps(raw, worker, workerEvents, terminate) {
126
141
  */
127
142
  function spawn(worker, options) {
128
143
  return __awaiter(this, void 0, void 0, function* () {
129
- var _a, _b;
144
+ var _a, _b, _c, _d;
130
145
  debugSpawn("Initializing new thread");
131
146
  const timeout = options && options.timeout ? options.timeout : initMessageTimeout;
132
147
  let initMessage;
@@ -153,6 +168,8 @@ function spawn(worker, options) {
153
168
  }
154
169
  else {
155
170
  const type = exposed.type;
171
+ // Same teardown as a failed init: don't leak a live worker handle.
172
+ yield Promise.resolve((_d = (_c = worker).terminate) === null || _d === void 0 ? void 0 : _d.call(_c)).catch(() => undefined);
156
173
  throw Error(`Worker init message states unexpected type of expose(): ${type}`);
157
174
  }
158
175
  });
@@ -0,0 +1,13 @@
1
+ /** Whether this code is running inside a webpack bundle. */
2
+ export declare function isWebpackBundle(): boolean;
3
+ /**
4
+ * Returns a `require` that resolves against the real filesystem at runtime,
5
+ * even inside a bundle.
6
+ */
7
+ export declare function getNodeRequire(): NodeRequire;
8
+ /**
9
+ * Directory to resolve relative worker paths against when no caller path and
10
+ * no base URL are available. Matches this module's directory where the runtime
11
+ * provides one, and falls back to the current working directory.
12
+ */
13
+ export declare function getModuleDirname(): string;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.isWebpackBundle = isWebpackBundle;
37
+ exports.getNodeRequire = getNodeRequire;
38
+ exports.getModuleDirname = getModuleDirname;
39
+ /*
40
+ * Runtime module/path resolution for the Node.js implementation.
41
+ *
42
+ * Spawning a worker needs real filesystem paths at runtime, but webpack
43
+ * rewrites `require`, `require.resolve` and `__dirname` at compile time.
44
+ * `__non_webpack_require__` is webpack's documented escape hatch: it compiles
45
+ * to the untouched `require` of the output bundle, so resolution happens at
46
+ * runtime against the real filesystem. Every other environment (plain Node,
47
+ * esbuild, rollup, Vite) keeps `createRequire` and `__dirname` intact, so no
48
+ * `eval()` tricks are needed there.
49
+ *
50
+ * This module is only ever loaded on Node targets: the package.json "browser"
51
+ * field maps its sole importers to `false` for browser bundles.
52
+ */
53
+ const module_1 = require("module");
54
+ const path = __importStar(require("path"));
55
+ /** Whether this code is running inside a webpack bundle. */
56
+ function isWebpackBundle() {
57
+ return typeof __non_webpack_require__ === "function";
58
+ }
59
+ let nodeRequire;
60
+ /**
61
+ * Returns a `require` that resolves against the real filesystem at runtime,
62
+ * even inside a bundle.
63
+ */
64
+ function getNodeRequire() {
65
+ if (typeof __non_webpack_require__ === "function") {
66
+ return __non_webpack_require__;
67
+ }
68
+ if (!nodeRequire) {
69
+ // CJS build: `__filename` is this module's real path. ESM build (esm/):
70
+ // the build banner derives `__filename` from `import.meta.url`. In an
71
+ // environment that defines neither (dist-esm bundled straight to ESM by a
72
+ // non-webpack bundler), resolve from the current working directory.
73
+ const base = typeof __filename !== "undefined"
74
+ ? __filename
75
+ : path.join(process.cwd(), "__threadsx_resolve__.js");
76
+ nodeRequire = (0, module_1.createRequire)(base);
77
+ }
78
+ return nodeRequire;
79
+ }
80
+ /**
81
+ * Directory to resolve relative worker paths against when no caller path and
82
+ * no base URL are available. Matches this module's directory where the runtime
83
+ * provides one, and falls back to the current working directory.
84
+ */
85
+ function getModuleDirname() {
86
+ return typeof __dirname !== "undefined" ? __dirname : process.cwd();
87
+ }
@@ -1,8 +1,4 @@
1
- type MessagePort = any;
2
- interface WorkerThreadsModule {
3
- MessagePort: typeof MessagePort;
4
- isMainThread: boolean;
5
- parentPort: MessagePort;
6
- }
7
- export default function getImplementation(): WorkerThreadsModule;
1
+ import * as WorkerThreadsModule from "worker_threads";
2
+ type WorkerThreadsInterface = typeof WorkerThreadsModule;
3
+ export default function getImplementation(): WorkerThreadsInterface;
8
4
  export {};
@@ -1,16 +1,40 @@
1
1
  "use strict";
2
- // Webpack hack
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
3
35
  Object.defineProperty(exports, "__esModule", { value: true });
4
36
  exports.default = getImplementation;
5
- let implementation;
6
- function selectImplementation() {
7
- return typeof __non_webpack_require__ === "function"
8
- ? __non_webpack_require__("worker_threads")
9
- : eval("require")("worker_threads");
10
- }
37
+ const WorkerThreadsModule = __importStar(require("worker_threads"));
11
38
  function getImplementation() {
12
- if (!implementation) {
13
- implementation = selectImplementation();
14
- }
15
- return implementation;
39
+ return WorkerThreadsModule;
16
40
  }
@@ -9,3 +9,4 @@ export function deserialize(message) {
9
9
  export function serialize(input) {
10
10
  return registeredSerializer.serialize(input);
11
11
  }
12
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAIlB,MAAM,eAAe,CAAA;AAEtB,IAAI,oBAAoB,GAAiC,iBAAiB,CAAA;AAE1E,MAAM,UAAU,kBAAkB,CAAC,UAAsD;IACvF,oBAAoB,GAAG,gBAAgB,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAA;AAC3E,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAyB;IACnD,OAAO,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAU;IAClC,OAAO,oBAAoB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9C,CAAC"}
@@ -24,3 +24,4 @@ export function isDataCloneError(error) {
24
24
  typeof error === "object" &&
25
25
  error.name === "DataCloneError");
26
26
  }
27
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAGzC,YAAY,OAAe,EAAE,KAAe;QAC1C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,wEAAwE;QACxE,6CAA6C;QAC7C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAA;IACzD,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,OAAO,CACZ,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACxB,KAA4B,CAAC,IAAI,KAAK,gBAAgB,CACxD,CAAA;AACH,CAAC"}
package/dist-esm/index.js CHANGED
@@ -4,3 +4,4 @@ export * from "./master/index";
4
4
  export { expose } from "./worker/index";
5
5
  export { DefaultSerializer } from "./serializers";
6
6
  export { Transfer } from "./transferable";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,iBAAiB,EAA0D,MAAM,eAAe,CAAA;AACzG,OAAO,EAAE,QAAQ,EAAsB,MAAM,gBAAgB,CAAA"}
@@ -23,3 +23,4 @@ function getBaseURL(url) {
23
23
  return ("" + url).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\/\/.+)?\/[^/]+(?:\?.*)?$/, '$1') + '/';
24
24
  }
25
25
  export { getBaseURL, getBundleURLCached as getBundleURL };
26
+ //# sourceMappingURL=get-bundle-url.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-bundle-url.browser.js","sourceRoot":"","sources":["../../src/master/get-bundle-url.browser.ts"],"names":[],"mappings":"AAAA,yHAAyH;AAEzH,IAAI,SAA6B,CAAA;AAEjC,SAAS,kBAAkB;IACzB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,YAAY,EAAE,CAAA;IAC5B,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,YAAY;IACnB,6EAA6E;IAC7E,IAAI,CAAC;QACH,MAAM,IAAI,KAAK,CAAA;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,EAAE,GAAI,GAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClH,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,gFAAgF,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC;AAC1H,CAAC;AAED,OAAO,EACL,UAAU,EACV,kBAAkB,IAAI,YAAY,EACnC,CAAA"}
@@ -65,3 +65,4 @@ export function isWorkerRuntime() {
65
65
  const isWindowContext = typeof self !== "undefined" && typeof Window !== "undefined" && self instanceof Window;
66
66
  return typeof self !== "undefined" && typeof self.postMessage === "function" && !isWindowContext;
67
67
  }
68
+ //# sourceMappingURL=implementation.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.browser.js","sourceRoot":"","sources":["../../src/master/implementation.browser.ts"],"names":[],"mappings":"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"}
@@ -13,3 +13,4 @@ export const defaultPoolSize = implementation.defaultPoolSize;
13
13
  export const getWorkerImplementation = implementation.getWorkerImplementation;
14
14
  /** Returns `true` if this code is currently running in a worker. */
15
15
  export const isWorkerRuntime = implementation.isWorkerRuntime;
16
+ //# sourceMappingURL=implementation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.js","sourceRoot":"","sources":["../../src/master/implementation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,sFAAsF;AACtF,sFAAsF;AACtF,sBAAsB;AAEtB,OAAO,KAAK,qBAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,kBAAkB,MAAM,uBAAuB,CAAA;AAE3D,MAAM,aAAa,GAAG,OAAO,OAAO,KAAK,WAAW,IAAK,OAAO,CAAC,IAAe,KAAK,SAAS,IAAI,KAAK,IAAI,OAAO,CAAA;AAClH,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,qBAAqB,CAAA;AAEjF,mGAAmG;AACnG,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAA;AAE7D,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAC,uBAAuB,CAAA;AAE7E,oEAAoE;AACpE,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAA"}
@@ -7,6 +7,8 @@ import getCallsites from "callsites";
7
7
  import { cpus } from 'os';
8
8
  import * as path from "path";
9
9
  import { fileURLToPath } from "url";
10
+ import { getModuleDirname, getNodeRequire, isWebpackBundle } from "../node-require";
11
+ import getWorkerThreads from "../worker_threads";
10
12
  let detectedTsRuntime;
11
13
  export const defaultPoolSize = cpus().length;
12
14
  /**
@@ -24,7 +26,7 @@ function signalHandlersDisabled() {
24
26
  * spawned directly during development. Prefers `tsx`, falls back to `ts-node`.
25
27
  */
26
28
  function detectTsRuntime() {
27
- if (typeof __non_webpack_require__ === "function") {
29
+ if (isWebpackBundle()) {
28
30
  // Webpack build: => No TS runtime required or possible
29
31
  return null;
30
32
  }
@@ -34,7 +36,7 @@ function detectTsRuntime() {
34
36
  detectedTsRuntime = null;
35
37
  for (const candidate of ["tsx", "ts-node"]) {
36
38
  try {
37
- eval("require").resolve(candidate);
39
+ getNodeRequire().resolve(candidate);
38
40
  detectedTsRuntime = candidate;
39
41
  break;
40
42
  }
@@ -82,19 +84,17 @@ function rebaseScriptPath(scriptPath, ignoreRegex) {
82
84
  }
83
85
  function resolveScriptPath(scriptPath, baseURL) {
84
86
  const makeRelative = (filePath) => {
85
- // eval() hack is also webpack-related
86
- return path.isAbsolute(filePath) ? filePath : path.join(baseURL || eval("__dirname"), filePath);
87
+ return path.isAbsolute(filePath) ? filePath : path.join(baseURL || getModuleDirname(), filePath);
87
88
  };
88
- const workerFilePath = typeof __non_webpack_require__ === "function"
89
- ? __non_webpack_require__.resolve(makeRelative(scriptPath))
90
- : eval("require").resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
89
+ // In a webpack bundle, walking the call stack is useless (every caller lives
90
+ // inside the bundle), so relative paths resolve without rebasing.
91
+ const workerFilePath = isWebpackBundle()
92
+ ? getNodeRequire().resolve(makeRelative(scriptPath))
93
+ : getNodeRequire().resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
91
94
  return workerFilePath;
92
95
  }
93
96
  function initWorkerThreadsWorker() {
94
- // Webpack hack
95
- const NativeWorker = typeof __non_webpack_require__ === "function"
96
- ? __non_webpack_require__("worker_threads").Worker
97
- : eval("require")("worker_threads").Worker;
97
+ const NativeWorker = getWorkerThreads().Worker;
98
98
  let allWorkers = [];
99
99
  class Worker extends NativeWorker {
100
100
  constructor(scriptPath, options) {
@@ -173,9 +173,6 @@ export function getWorkerImplementation() {
173
173
  return implementation;
174
174
  }
175
175
  export function isWorkerRuntime() {
176
- // Webpack hack
177
- const isMainThread = typeof __non_webpack_require__ === "function"
178
- ? __non_webpack_require__("worker_threads").isMainThread
179
- : eval("require")("worker_threads").isMainThread;
180
- return !isMainThread;
176
+ return !getWorkerThreads().isMainThread;
181
177
  }
178
+ //# sourceMappingURL=implementation.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.node.js","sourceRoot":"","sources":["../../src/master/implementation.node.ts"],"names":[],"mappings":"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"}
@@ -7,3 +7,4 @@ export { isWorkerRuntime };
7
7
  export const BlobWorker = getWorkerImplementation().blob;
8
8
  /** Worker implementation. Either web worker or a node.js Worker class. */
9
9
  export const Worker = getWorkerImplementation().default;
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/master/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAG3E,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,CAAA;AAK1B,yEAAyE;AACzE,MAAM,CAAC,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC,IAAI,CAAA;AAExD,0EAA0E;AAC1E,MAAM,CAAC,MAAM,MAAM,GAAG,uBAAuB,EAAE,CAAC,OAAO,CAAA"}
@@ -153,3 +153,4 @@ export function createProxyModule(worker, methodNames) {
153
153
  }
154
154
  return proxy;
155
155
  }
156
+ //# sourceMappingURL=invocation-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invocation-proxy.js","sourceRoot":"","sources":["../../src/master/invocation-proxy.ts"],"names":[],"mappings":"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"}
@@ -10,3 +10,4 @@ export var PoolEventType;
10
10
  PoolEventType["taskStart"] = "taskStart";
11
11
  PoolEventType["terminated"] = "terminated";
12
12
  })(PoolEventType || (PoolEventType = {}));
13
+ //# sourceMappingURL=pool-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool-types.js","sourceRoot":"","sources":["../../src/master/pool-types.ts"],"names":[],"mappings":"AAEA,+DAA+D;AAC/D,MAAM,CAAN,IAAY,aASX;AATD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,0CAAyB,CAAA;IACzB,0CAAyB,CAAA;IACzB,sDAAqC,CAAA;IACrC,wCAAuB,CAAA;IACvB,0CAAyB,CAAA;AAC3B,CAAC,EATW,aAAa,KAAb,aAAa,QASxB"}
@@ -140,6 +140,13 @@ class WorkerPool {
140
140
  eventSubscription.unsubscribe();
141
141
  reject(event.error);
142
142
  }
143
+ else if (event.type === PoolEventType.taskCanceled && event.taskID === taskID) {
144
+ // Without this branch a canceled task would keep its event
145
+ // subscription alive for the pool's whole lifetime and its promise
146
+ // would never settle.
147
+ eventSubscription.unsubscribe();
148
+ reject(Error("Task has been canceled."));
149
+ }
143
150
  else if (event.type === PoolEventType.terminated) {
144
151
  eventSubscription.unsubscribe();
145
152
  reject(Error("Pool has been terminated before task was run."));
@@ -157,10 +164,12 @@ class WorkerPool {
157
164
  }
158
165
  });
159
166
  if (this.initErrors.length > 0) {
167
+ failureSubscription.unsubscribe();
160
168
  return Promise.reject(this.initErrors[0]);
161
169
  }
162
170
  if (allowResolvingImmediately && this.taskQueue.length === 0) {
163
171
  yield allSettled(getCurrentlyRunningTasks());
172
+ failureSubscription.unsubscribe();
164
173
  return taskFailures;
165
174
  }
166
175
  yield new Promise((resolve, reject) => {
@@ -227,6 +236,13 @@ class WorkerPool {
227
236
  if (this.initErrors.length > 0) {
228
237
  throw this.initErrors[0];
229
238
  }
239
+ // Check the queue limit before taskCompletion() below subscribes to the
240
+ // pool events — throwing after would leak that subscription.
241
+ if (this.taskQueue.length >= maxQueuedJobs) {
242
+ throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
243
+ "This usually happens for one of two reasons: We are either at peak " +
244
+ "workload right now or some tasks just won't finish, thus blocking the pool.");
245
+ }
230
246
  const taskID = this.nextTaskID++;
231
247
  const taskCompletion = this.taskCompletion(taskID);
232
248
  taskCompletion.catch((error) => {
@@ -248,11 +264,6 @@ class WorkerPool {
248
264
  },
249
265
  then: taskCompletion.then.bind(taskCompletion)
250
266
  };
251
- if (this.taskQueue.length >= maxQueuedJobs) {
252
- throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
253
- "This usually happens for one of two reasons: We are either at peak " +
254
- "workload right now or some tasks just won't finish, thus blocking the pool.");
255
- }
256
267
  this.debug(`Queueing task #${task.id}...`);
257
268
  this.taskQueue.push(task);
258
269
  this.eventSubject.next({
@@ -303,3 +314,4 @@ PoolConstructor.EventType = PoolEventType;
303
314
  * Thread pool constructor. Creates a new pool and spawns its worker threads.
304
315
  */
305
316
  export const Pool = PoolConstructor;
317
+ //# sourceMappingURL=pool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/master/pool.ts"],"names":[],"mappings":"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"}
@@ -5,3 +5,4 @@ if (typeof global !== "undefined") {
5
5
  else if (typeof window !== "undefined") {
6
6
  window.Worker = WorkerImplementation;
7
7
  }
8
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/master/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAIxD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACjC,MAAc,CAAC,MAAM,GAAG,oBAAoB,CAAA;AAC/C,CAAC;KAAM,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACxC,MAAc,CAAC,MAAM,GAAG,oBAAoB,CAAA;AAC/C,CAAC"}