@xylabs/threads 3.3.2 → 3.4.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.
- package/dist/master/pool.js +1 -1
- package/dist/master/spawn.js +2 -2
- package/dist/serializers.js +1 -1
- package/dist-esm/master/pool.js +1 -1
- package/dist-esm/master/spawn.js +2 -2
- package/dist-esm/serializers.js +1 -1
- package/package.json +17 -17
- package/src/master/pool.ts +1 -1
- package/src/master/spawn.ts +2 -2
- package/src/serializers.ts +1 -1
- package/test/observable-promise.test.ts +4 -4
- package/test/observable.test.ts +1 -1
package/dist/master/pool.js
CHANGED
|
@@ -145,7 +145,7 @@ class WorkerPool {
|
|
|
145
145
|
}
|
|
146
146
|
else if (event.type === pool_types_1.PoolEventType.terminated) {
|
|
147
147
|
eventSubscription.unsubscribe();
|
|
148
|
-
reject(Error('Pool has been terminated before task was run.'));
|
|
148
|
+
reject(new Error('Pool has been terminated before task was run.'));
|
|
149
149
|
}
|
|
150
150
|
});
|
|
151
151
|
});
|
package/dist/master/spawn.js
CHANGED
|
@@ -24,7 +24,7 @@ const initMessageTimeout = typeof process !== 'undefined' && process.env !== und
|
|
|
24
24
|
async function withTimeout(promise, timeoutInMs, errorMessage) {
|
|
25
25
|
let timeoutHandle;
|
|
26
26
|
const timeout = new Promise((resolve, reject) => {
|
|
27
|
-
timeoutHandle = setTimeout(() => reject(Error(errorMessage)), timeoutInMs);
|
|
27
|
+
timeoutHandle = setTimeout(() => reject(new Error(errorMessage)), timeoutInMs);
|
|
28
28
|
});
|
|
29
29
|
const result = await Promise.race([promise, timeout]);
|
|
30
30
|
clearTimeout(timeoutHandle);
|
|
@@ -58,7 +58,7 @@ function createEventObservable(worker, workerTermination) {
|
|
|
58
58
|
const rejectionHandler = ((errorEvent) => {
|
|
59
59
|
debugThreadUtils('Unhandled promise rejection event in thread:', errorEvent);
|
|
60
60
|
const workerEvent = {
|
|
61
|
-
error: Error(errorEvent.reason),
|
|
61
|
+
error: new Error(errorEvent.reason),
|
|
62
62
|
type: master_1.WorkerEventType.internalError,
|
|
63
63
|
};
|
|
64
64
|
observer.next(workerEvent);
|
package/dist/serializers.js
CHANGED
|
@@ -16,7 +16,7 @@ function extendSerializer(extend, implementation) {
|
|
|
16
16
|
exports.extendSerializer = extendSerializer;
|
|
17
17
|
const DefaultErrorSerializer = {
|
|
18
18
|
deserialize(message) {
|
|
19
|
-
return Object.assign(Error(message.message), {
|
|
19
|
+
return Object.assign(new Error(message.message), {
|
|
20
20
|
name: message.name,
|
|
21
21
|
stack: message.stack,
|
|
22
22
|
});
|
package/dist-esm/master/pool.js
CHANGED
|
@@ -139,7 +139,7 @@ class WorkerPool {
|
|
|
139
139
|
}
|
|
140
140
|
else if (event.type === PoolEventType.terminated) {
|
|
141
141
|
eventSubscription.unsubscribe();
|
|
142
|
-
reject(Error('Pool has been terminated before task was run.'));
|
|
142
|
+
reject(new Error('Pool has been terminated before task was run.'));
|
|
143
143
|
}
|
|
144
144
|
});
|
|
145
145
|
});
|
package/dist-esm/master/spawn.js
CHANGED
|
@@ -18,7 +18,7 @@ const initMessageTimeout = typeof process !== 'undefined' && process.env !== und
|
|
|
18
18
|
async function withTimeout(promise, timeoutInMs, errorMessage) {
|
|
19
19
|
let timeoutHandle;
|
|
20
20
|
const timeout = new Promise((resolve, reject) => {
|
|
21
|
-
timeoutHandle = setTimeout(() => reject(Error(errorMessage)), timeoutInMs);
|
|
21
|
+
timeoutHandle = setTimeout(() => reject(new Error(errorMessage)), timeoutInMs);
|
|
22
22
|
});
|
|
23
23
|
const result = await Promise.race([promise, timeout]);
|
|
24
24
|
clearTimeout(timeoutHandle);
|
|
@@ -52,7 +52,7 @@ function createEventObservable(worker, workerTermination) {
|
|
|
52
52
|
const rejectionHandler = ((errorEvent) => {
|
|
53
53
|
debugThreadUtils('Unhandled promise rejection event in thread:', errorEvent);
|
|
54
54
|
const workerEvent = {
|
|
55
|
-
error: Error(errorEvent.reason),
|
|
55
|
+
error: new Error(errorEvent.reason),
|
|
56
56
|
type: WorkerEventType.internalError,
|
|
57
57
|
};
|
|
58
58
|
observer.next(workerEvent);
|
package/dist-esm/serializers.js
CHANGED
|
@@ -12,7 +12,7 @@ export function extendSerializer(extend, implementation) {
|
|
|
12
12
|
}
|
|
13
13
|
const DefaultErrorSerializer = {
|
|
14
14
|
deserialize(message) {
|
|
15
|
-
return Object.assign(Error(message.message), {
|
|
15
|
+
return Object.assign(new Error(message.message), {
|
|
16
16
|
name: message.name,
|
|
17
17
|
stack: message.stack,
|
|
18
18
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xylabs/threads",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "Web workers & worker threads as simple as a function call",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -67,36 +67,36 @@
|
|
|
67
67
|
],
|
|
68
68
|
"dependencies": {
|
|
69
69
|
"@babel/types": "^7.24.5",
|
|
70
|
-
"callsites": "^
|
|
70
|
+
"callsites": "^4.1.0",
|
|
71
71
|
"debug": "^4.3.4",
|
|
72
|
-
"is-observable": "^
|
|
72
|
+
"is-observable": "^3.0.0",
|
|
73
73
|
"observable-fns": "^0.6.1"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
|
-
"@rollup/plugin-commonjs": "^
|
|
77
|
-
"@rollup/plugin-node-resolve": "^
|
|
76
|
+
"@rollup/plugin-commonjs": "^25.0.8",
|
|
77
|
+
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
78
78
|
"@types/chai": "^4.3.16",
|
|
79
79
|
"@types/debug": "^4.1.12",
|
|
80
80
|
"@types/execa": "^2.0.0",
|
|
81
|
-
"@types/node": "^20.12.
|
|
82
|
-
"@types/webpack": "^
|
|
83
|
-
"ava": "^
|
|
84
|
-
"chai": "^
|
|
81
|
+
"@types/node": "^20.12.12",
|
|
82
|
+
"@types/webpack": "^5.28.5",
|
|
83
|
+
"ava": "^6.1.3",
|
|
84
|
+
"chai": "^5.1.1",
|
|
85
85
|
"cross-env": "^7.0.3",
|
|
86
|
-
"execa": "^
|
|
87
|
-
"mocha": "^
|
|
86
|
+
"execa": "^9.1.0",
|
|
87
|
+
"mocha": "^10.4.0",
|
|
88
88
|
"puppet-run": "^0.11.4",
|
|
89
|
-
"puppet-run-plugin-mocha": "^0.
|
|
89
|
+
"puppet-run-plugin-mocha": "^0.1.1",
|
|
90
90
|
"raw-loader": "^4.0.2",
|
|
91
|
-
"rimraf": "^
|
|
92
|
-
"rollup": "^
|
|
91
|
+
"rimraf": "^5.0.7",
|
|
92
|
+
"rollup": "^4.18.0",
|
|
93
93
|
"threads-plugin": "^1.4.0",
|
|
94
94
|
"tiny-worker": "^2.3.0",
|
|
95
|
-
"ts-loader": "^
|
|
96
|
-
"ts-node": "^9.
|
|
95
|
+
"ts-loader": "^9.5.1",
|
|
96
|
+
"ts-node": "^10.9.2",
|
|
97
97
|
"typescript": "^5.4.5",
|
|
98
98
|
"wavy": "^1.0.4",
|
|
99
|
-
"webpack": "^
|
|
99
|
+
"webpack": "^5.91.0",
|
|
100
100
|
"worker-plugin": "^5.0.1"
|
|
101
101
|
},
|
|
102
102
|
"optionalDependencies": {
|
package/src/master/pool.ts
CHANGED
|
@@ -232,7 +232,7 @@ class WorkerPool<ThreadType extends Thread> implements Pool<ThreadType> {
|
|
|
232
232
|
reject(event.error)
|
|
233
233
|
} else if (event.type === PoolEventType.terminated) {
|
|
234
234
|
eventSubscription.unsubscribe()
|
|
235
|
-
reject(Error('Pool has been terminated before task was run.'))
|
|
235
|
+
reject(new Error('Pool has been terminated before task was run.'))
|
|
236
236
|
}
|
|
237
237
|
})
|
|
238
238
|
})
|
package/src/master/spawn.ts
CHANGED
|
@@ -47,7 +47,7 @@ async function withTimeout<T>(promise: Promise<T>, timeoutInMs: number, errorMes
|
|
|
47
47
|
let timeoutHandle: any
|
|
48
48
|
|
|
49
49
|
const timeout = new Promise<never>((resolve, reject) => {
|
|
50
|
-
timeoutHandle = setTimeout(() => reject(Error(errorMessage)), timeoutInMs)
|
|
50
|
+
timeoutHandle = setTimeout(() => reject(new Error(errorMessage)), timeoutInMs)
|
|
51
51
|
})
|
|
52
52
|
const result = await Promise.race([promise, timeout])
|
|
53
53
|
|
|
@@ -83,7 +83,7 @@ function createEventObservable(worker: WorkerType, workerTermination: Promise<an
|
|
|
83
83
|
const rejectionHandler = ((errorEvent: PromiseRejectionEvent) => {
|
|
84
84
|
debugThreadUtils('Unhandled promise rejection event in thread:', errorEvent)
|
|
85
85
|
const workerEvent: WorkerInternalErrorEvent = {
|
|
86
|
-
error: Error(errorEvent.reason),
|
|
86
|
+
error: new Error(errorEvent.reason),
|
|
87
87
|
type: WorkerEventType.internalError,
|
|
88
88
|
}
|
|
89
89
|
observer.next(workerEvent)
|
package/src/serializers.ts
CHANGED
|
@@ -39,7 +39,7 @@ export type JsonSerializable = JsonSerializablePrimitive | JsonSerializablePrimi
|
|
|
39
39
|
|
|
40
40
|
const DefaultErrorSerializer: Serializer<SerializedError, Error> = {
|
|
41
41
|
deserialize(message: SerializedError): Error {
|
|
42
|
-
return Object.assign(Error(message.message), {
|
|
42
|
+
return Object.assign(new Error(message.message), {
|
|
43
43
|
name: message.name,
|
|
44
44
|
stack: message.stack,
|
|
45
45
|
})
|
|
@@ -53,7 +53,7 @@ test('can proxy a promise rejection', async (t) => {
|
|
|
53
53
|
let handlerCallCount = 0
|
|
54
54
|
|
|
55
55
|
const async = new ObservablePromise((observer) => {
|
|
56
|
-
setTimeout(() => observer.error(Error('I am supposed to be rejected.')), 1)
|
|
56
|
+
setTimeout(() => observer.error(new Error('I am supposed to be rejected.')), 1)
|
|
57
57
|
})
|
|
58
58
|
|
|
59
59
|
const promise1 = async.then(
|
|
@@ -123,7 +123,7 @@ test('can subscribe to errors', async (t) => {
|
|
|
123
123
|
|
|
124
124
|
const async = new ObservablePromise((observer) => {
|
|
125
125
|
setTimeout(() => observer.next(1), 10)
|
|
126
|
-
setTimeout(() => observer.error(Error('Fails as expected.')), 20)
|
|
126
|
+
setTimeout(() => observer.error(new Error('Fails as expected.')), 20)
|
|
127
127
|
setTimeout(() => observer.next(2), 30)
|
|
128
128
|
setTimeout(() => observer.complete(), 40)
|
|
129
129
|
})
|
|
@@ -152,7 +152,7 @@ test('from(Observable) works', async (t) => {
|
|
|
152
152
|
const async = ObservablePromise.from(
|
|
153
153
|
new Observable((observer) => {
|
|
154
154
|
setTimeout(() => observer.next(1), 10)
|
|
155
|
-
setTimeout(() => observer.error(Error('Fails as expected.')), 20)
|
|
155
|
+
setTimeout(() => observer.error(new Error('Fails as expected.')), 20)
|
|
156
156
|
setTimeout(() => observer.next(2), 30)
|
|
157
157
|
setTimeout(() => observer.complete(), 40)
|
|
158
158
|
}),
|
|
@@ -182,7 +182,7 @@ test('from(Promise) works', async (t) => {
|
|
|
182
182
|
)
|
|
183
183
|
t.is(await resolved, 'Works')
|
|
184
184
|
|
|
185
|
-
const rejected = ObservablePromise.from(Promise.reject(Error('Fails')))
|
|
185
|
+
const rejected = ObservablePromise.from(Promise.reject(new Error('Fails')))
|
|
186
186
|
const error = await t.throwsAsync(rejected)
|
|
187
187
|
|
|
188
188
|
t.is(error.message, 'Fails')
|
package/test/observable.test.ts
CHANGED