@effect/platform 0.58.27 → 0.59.1
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/cjs/Error.js +1 -25
- package/dist/cjs/Error.js.map +1 -1
- package/dist/cjs/HttpApp.js +4 -1
- package/dist/cjs/HttpApp.js.map +1 -1
- package/dist/cjs/HttpClientError.js +5 -6
- package/dist/cjs/HttpClientError.js.map +1 -1
- package/dist/cjs/HttpServerError.js +6 -5
- package/dist/cjs/HttpServerError.js.map +1 -1
- package/dist/cjs/HttpServerResponse.js.map +1 -1
- package/dist/cjs/Multipart.js.map +1 -1
- package/dist/cjs/Socket.js +11 -11
- package/dist/cjs/Socket.js.map +1 -1
- package/dist/cjs/Worker.js +10 -1
- package/dist/cjs/Worker.js.map +1 -1
- package/dist/cjs/WorkerError.js +13 -4
- package/dist/cjs/WorkerError.js.map +1 -1
- package/dist/cjs/WorkerRunner.js +6 -1
- package/dist/cjs/WorkerRunner.js.map +1 -1
- package/dist/cjs/internal/httpClient.js +7 -7
- package/dist/cjs/internal/httpClient.js.map +1 -1
- package/dist/cjs/internal/httpClientResponse.js +13 -13
- package/dist/cjs/internal/httpClientResponse.js.map +1 -1
- package/dist/cjs/internal/httpServerRequest.js +16 -16
- package/dist/cjs/internal/httpServerRequest.js.map +1 -1
- package/dist/cjs/internal/httpServerResponse.js +4 -3
- package/dist/cjs/internal/httpServerResponse.js.map +1 -1
- package/dist/cjs/internal/multipart.js +16 -16
- package/dist/cjs/internal/multipart.js.map +1 -1
- package/dist/cjs/internal/path.js +461 -11
- package/dist/cjs/internal/path.js.map +1 -1
- package/dist/cjs/internal/worker.js +126 -59
- package/dist/cjs/internal/worker.js.map +1 -1
- package/dist/cjs/internal/workerRunner.js +39 -65
- package/dist/cjs/internal/workerRunner.js.map +1 -1
- package/dist/dts/Error.d.ts +0 -10
- package/dist/dts/Error.d.ts.map +1 -1
- package/dist/dts/HttpApp.d.ts +1 -1
- package/dist/dts/HttpApp.d.ts.map +1 -1
- package/dist/dts/HttpClientError.d.ts +6 -8
- package/dist/dts/HttpClientError.d.ts.map +1 -1
- package/dist/dts/HttpServerError.d.ts +10 -13
- package/dist/dts/HttpServerError.d.ts.map +1 -1
- package/dist/dts/HttpServerResponse.d.ts +5 -1
- package/dist/dts/HttpServerResponse.d.ts.map +1 -1
- package/dist/dts/Multipart.d.ts +3 -2
- package/dist/dts/Multipart.d.ts.map +1 -1
- package/dist/dts/Socket.d.ts +2 -4
- package/dist/dts/Socket.d.ts.map +1 -1
- package/dist/dts/Worker.d.ts +27 -27
- package/dist/dts/Worker.d.ts.map +1 -1
- package/dist/dts/WorkerError.d.ts +2 -2
- package/dist/dts/WorkerError.d.ts.map +1 -1
- package/dist/dts/WorkerRunner.d.ts +8 -5
- package/dist/dts/WorkerRunner.d.ts.map +1 -1
- package/dist/esm/Error.js +0 -23
- package/dist/esm/Error.js.map +1 -1
- package/dist/esm/HttpApp.js +4 -1
- package/dist/esm/HttpApp.js.map +1 -1
- package/dist/esm/HttpClientError.js +5 -6
- package/dist/esm/HttpClientError.js.map +1 -1
- package/dist/esm/HttpServerError.js +7 -6
- package/dist/esm/HttpServerError.js.map +1 -1
- package/dist/esm/HttpServerResponse.js.map +1 -1
- package/dist/esm/Multipart.js.map +1 -1
- package/dist/esm/Socket.js +12 -12
- package/dist/esm/Socket.js.map +1 -1
- package/dist/esm/Worker.js +9 -0
- package/dist/esm/Worker.js.map +1 -1
- package/dist/esm/WorkerError.js +13 -4
- package/dist/esm/WorkerError.js.map +1 -1
- package/dist/esm/WorkerRunner.js +5 -0
- package/dist/esm/WorkerRunner.js.map +1 -1
- package/dist/esm/internal/httpClient.js +7 -7
- package/dist/esm/internal/httpClient.js.map +1 -1
- package/dist/esm/internal/httpClientResponse.js +13 -13
- package/dist/esm/internal/httpClientResponse.js.map +1 -1
- package/dist/esm/internal/httpServerRequest.js +16 -16
- package/dist/esm/internal/httpServerRequest.js.map +1 -1
- package/dist/esm/internal/httpServerResponse.js +4 -3
- package/dist/esm/internal/httpServerResponse.js.map +1 -1
- package/dist/esm/internal/multipart.js +17 -17
- package/dist/esm/internal/multipart.js.map +1 -1
- package/dist/esm/internal/path.js +461 -10
- package/dist/esm/internal/path.js.map +1 -1
- package/dist/esm/internal/worker.js +124 -57
- package/dist/esm/internal/worker.js.map +1 -1
- package/dist/esm/internal/workerRunner.js +38 -65
- package/dist/esm/internal/workerRunner.js.map +1 -1
- package/package.json +5 -6
- package/src/Error.ts +0 -38
- package/src/HttpApp.ts +2 -2
- package/src/HttpClientError.ts +13 -6
- package/src/HttpServerError.ts +17 -6
- package/src/HttpServerResponse.ts +8 -1
- package/src/Multipart.ts +3 -2
- package/src/Socket.ts +10 -9
- package/src/Worker.ts +32 -29
- package/src/WorkerError.ts +15 -8
- package/src/WorkerRunner.ts +15 -8
- package/src/internal/httpClient.ts +7 -7
- package/src/internal/httpClientResponse.ts +13 -13
- package/src/internal/httpServerRequest.ts +15 -15
- package/src/internal/httpServerResponse.ts +7 -3
- package/src/internal/multipart.ts +16 -15
- package/src/internal/path.ts +510 -14
- package/src/internal/worker.ts +193 -146
- package/src/internal/workerRunner.ts +106 -139
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","names":["_Context","require","Effect","_interopRequireWildcard","_Function","Layer","_pathBrowserify","_interopRequireDefault","_Error","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","Path","GenericTag","layer","succeed","of","PathB","fromFileUrl","toFileUrl","toNamespacedPath","identity","url","protocol","fail","BadArgument","module","method","message","hostname","pathname","length","third","codePointAt","decodeURIComponent","CHAR_FORWARD_SLASH","filepath","outURL","URL","resolved","resolve","filePathLast","charCodeAt","encodePathChars","percentRegEx","backslashRegEx","newlineRegEx","carriageReturnRegEx","tabRegEx","includes","replace"],"sources":["../../../src/internal/path.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"path.js","names":["_Context","require","Effect","_interopRequireWildcard","_Function","Layer","_Error","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","Path","GenericTag","normalizeStringPosix","path","allowAboveRoot","res","lastSegmentLength","lastSlash","dots","code","length","charCodeAt","lastSlashIndex","lastIndexOf","slice","_format","sep","pathObject","dir","root","base","name","ext","fromFileUrl","url","protocol","fail","BadArgument","module","method","message","hostname","pathname","third","codePointAt","succeed","decodeURIComponent","resolve","resolvedPath","resolvedAbsolute","cwd","undefined","arguments","process","globalThis","CHAR_FORWARD_SLASH","toFileUrl","filepath","outURL","URL","resolved","filePathLast","encodePathChars","percentRegEx","backslashRegEx","newlineRegEx","carriageReturnRegEx","tabRegEx","includes","replace","posixImpl","of","normalize","isAbsolute","trailingSeparator","join","joined","arg","relative","from","to","fromStart","fromEnd","fromLen","toStart","toEnd","toLen","lastCommonSep","fromCode","toCode","out","dirname","hasRoot","end","matchedSlash","basename","start","extIdx","firstNonSlashEnd","extname","startDot","startPart","preDotState","format","TypeError","parse","ret","toNamespacedPath","identity","layer"],"sources":["../../../src/internal/path.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.makeSerialized = exports.makePoolSerializedLayer = exports.makePoolSerialized = exports.makePoolLayer = exports.makePool = exports.
|
|
6
|
+
exports.makeSerialized = exports.makePoolSerializedLayer = exports.makePoolSerialized = exports.makePoolLayer = exports.makePool = exports.makePlatform = exports.makeManager = exports.layerSpawner = exports.layerManager = exports.WorkerManagerTypeId = exports.WorkerManager = exports.Spawner = exports.PlatformWorkerTypeId = exports.PlatformWorker = void 0;
|
|
7
7
|
var Schema = _interopRequireWildcard(require("@effect/schema/Schema"));
|
|
8
8
|
var Serializable = _interopRequireWildcard(require("@effect/schema/Serializable"));
|
|
9
|
-
var Arr = _interopRequireWildcard(require("effect/Array"));
|
|
10
9
|
var Cause = _interopRequireWildcard(require("effect/Cause"));
|
|
11
10
|
var Channel = _interopRequireWildcard(require("effect/Channel"));
|
|
12
11
|
var Chunk = _interopRequireWildcard(require("effect/Chunk"));
|
|
@@ -14,13 +13,15 @@ var Context = _interopRequireWildcard(require("effect/Context"));
|
|
|
14
13
|
var Deferred = _interopRequireWildcard(require("effect/Deferred"));
|
|
15
14
|
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
16
15
|
var Exit = _interopRequireWildcard(require("effect/Exit"));
|
|
17
|
-
var
|
|
16
|
+
var FiberRef = _interopRequireWildcard(require("effect/FiberRef"));
|
|
17
|
+
var FiberSet = _interopRequireWildcard(require("effect/FiberSet"));
|
|
18
18
|
var _Function = require("effect/Function");
|
|
19
19
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
20
20
|
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
21
21
|
var Pool = _interopRequireWildcard(require("effect/Pool"));
|
|
22
22
|
var Queue = _interopRequireWildcard(require("effect/Queue"));
|
|
23
23
|
var Schedule = _interopRequireWildcard(require("effect/Schedule"));
|
|
24
|
+
var Scope = _interopRequireWildcard(require("effect/Scope"));
|
|
24
25
|
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
25
26
|
var Tracer = _interopRequireWildcard(require("effect/Tracer"));
|
|
26
27
|
var Transferable = _interopRequireWildcard(require("../Transferable.js"));
|
|
@@ -28,13 +29,6 @@ var _WorkerError = require("../WorkerError.js");
|
|
|
28
29
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
29
30
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
30
31
|
/** @internal */
|
|
31
|
-
const defaultQueue = () => Effect.map(Queue.unbounded(), queue => ({
|
|
32
|
-
offer: (id, item, span) => Queue.offer(queue, [id, item, span]),
|
|
33
|
-
take: Queue.take(queue),
|
|
34
|
-
shutdown: Queue.shutdown(queue)
|
|
35
|
-
}));
|
|
36
|
-
/** @internal */
|
|
37
|
-
exports.defaultQueue = defaultQueue;
|
|
38
32
|
const PlatformWorkerTypeId = exports.PlatformWorkerTypeId = /*#__PURE__*/Symbol.for("@effect/platform/Worker/PlatformWorker");
|
|
39
33
|
/** @internal */
|
|
40
34
|
const PlatformWorker = exports.PlatformWorker = /*#__PURE__*/Context.GenericTag("@effect/platform/Worker/PlatformWorker");
|
|
@@ -52,38 +46,26 @@ const makeManager = exports.makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
52
46
|
[WorkerManagerTypeId]: WorkerManagerTypeId,
|
|
53
47
|
spawn({
|
|
54
48
|
encode,
|
|
55
|
-
initialMessage
|
|
56
|
-
queue,
|
|
57
|
-
transfers = _ => []
|
|
49
|
+
initialMessage
|
|
58
50
|
}) {
|
|
59
51
|
return Effect.gen(function* (_) {
|
|
60
|
-
const spawn = yield* _(Spawner);
|
|
61
52
|
const id = idCounter++;
|
|
62
53
|
let requestIdCounter = 0;
|
|
63
54
|
const requestMap = new Map();
|
|
64
|
-
const sendQueue = yield* Effect.acquireRelease(Queue.unbounded(), Queue.shutdown);
|
|
65
55
|
const collector = Transferable.unsafeMakeCollector();
|
|
66
56
|
const wrappedEncode = encode ? message => Effect.zipRight(collector.clear, Effect.provideService(encode(message), Transferable.Collector, collector)) : Effect.succeed;
|
|
67
|
-
const
|
|
68
|
-
yield*
|
|
69
|
-
yield*
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
return Deferred.complete(readyLatch, Effect.void);
|
|
76
|
-
}
|
|
77
|
-
return handleMessage(msg[1]);
|
|
78
|
-
}), Effect.forever);
|
|
79
|
-
return yield* Effect.all([Fiber.join(backing.fiber), Effect.zipRight(Deferred.await(readyLatch), send), take], {
|
|
80
|
-
concurrency: "unbounded"
|
|
81
|
-
});
|
|
82
|
-
}).pipe(Effect.scoped, Effect.onError(cause => Effect.forEach(requestMap.values(), ([queue]) => Queue.offer(queue, Exit.failCause(cause)))), Effect.retry(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
57
|
+
const readyLatch = yield* Deferred.make();
|
|
58
|
+
const backing = yield* platform.spawn(id);
|
|
59
|
+
yield* backing.run(message => {
|
|
60
|
+
if (message[0] === 0) {
|
|
61
|
+
return Deferred.complete(readyLatch, Effect.void);
|
|
62
|
+
}
|
|
63
|
+
return handleMessage(message[1]);
|
|
64
|
+
}).pipe(Effect.onError(cause => Effect.forEach(requestMap.values(), queue => Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause)))), Effect.retry(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
83
65
|
package: "@effect/platform",
|
|
84
66
|
module: "Worker"
|
|
85
67
|
}), Effect.interruptible, Effect.forkScoped);
|
|
86
|
-
yield* Effect.addFinalizer(() => Effect.zipRight(Effect.forEach(requestMap.values(), (
|
|
68
|
+
yield* Effect.addFinalizer(() => Effect.zipRight(Effect.forEach(requestMap.values(), queue => Deferred.DeferredTypeId in queue ? Deferred.interrupt(queue) : Queue.offer(queue, Exit.failCause(Cause.empty)), {
|
|
87
69
|
discard: true
|
|
88
70
|
}), Effect.sync(() => requestMap.clear())));
|
|
89
71
|
const handleMessage = response => Effect.suspend(() => {
|
|
@@ -93,48 +75,62 @@ const makeManager = exports.makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
93
75
|
// data
|
|
94
76
|
case 0:
|
|
95
77
|
{
|
|
96
|
-
return
|
|
78
|
+
return Deferred.DeferredTypeId in queue ? Deferred.succeed(queue, response[2][0]) : Queue.offer(queue, Exit.succeed(response[2]));
|
|
97
79
|
}
|
|
98
80
|
// end
|
|
99
81
|
case 1:
|
|
100
82
|
{
|
|
101
|
-
|
|
83
|
+
if (response.length === 2) {
|
|
84
|
+
return Deferred.DeferredTypeId in queue ? Deferred.interrupt(queue) : Queue.offer(queue, Exit.failCause(Cause.empty));
|
|
85
|
+
}
|
|
86
|
+
return Deferred.DeferredTypeId in queue ? Deferred.succeed(queue, response[2][0]) : Effect.zipRight(Queue.offer(queue, Exit.succeed(response[2])), Queue.offer(queue, Exit.failCause(Cause.empty)));
|
|
102
87
|
}
|
|
103
88
|
// error / defect
|
|
104
89
|
case 2:
|
|
105
90
|
case 3:
|
|
106
91
|
{
|
|
107
|
-
|
|
92
|
+
if (response[1] === 2) {
|
|
93
|
+
return Deferred.DeferredTypeId in queue ? Deferred.fail(queue, response[2]) : Queue.offer(queue, Exit.fail(response[2]));
|
|
94
|
+
}
|
|
95
|
+
const cause = _WorkerError.WorkerError.decodeCause(response[2]);
|
|
96
|
+
return Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause));
|
|
108
97
|
}
|
|
109
98
|
}
|
|
110
99
|
});
|
|
111
|
-
const executeAcquire = request
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
100
|
+
const executeAcquire = (request, makeQueue) => Effect.withFiberRuntime(fiber => {
|
|
101
|
+
const context = fiber.getFiberRef(FiberRef.currentContext);
|
|
102
|
+
const span = Context.getOption(context, Tracer.ParentSpan).pipe(Option.filter(span => span._tag === "Span"));
|
|
103
|
+
const id = requestIdCounter++;
|
|
104
|
+
return makeQueue.pipe(Effect.tap(queue => {
|
|
105
|
+
requestMap.set(id, queue);
|
|
106
|
+
return wrappedEncode(request).pipe(Effect.tap(payload => backing.send([id, 0, payload, span._tag === "Some" ? [span.value.traceId, span.value.spanId, span.value.sampled] : undefined], collector.unsafeRead())), Effect.catchAllCause(cause => Deferred.DeferredTypeId in queue ? Deferred.failCause(queue, cause) : Queue.offer(queue, Exit.failCause(cause))));
|
|
107
|
+
}), Effect.map(queue => ({
|
|
108
|
+
id,
|
|
109
|
+
queue
|
|
110
|
+
})));
|
|
111
|
+
});
|
|
112
|
+
const executeRelease = ({
|
|
113
|
+
id
|
|
114
|
+
}, exit) => {
|
|
115
|
+
const release = Effect.sync(() => requestMap.delete(id));
|
|
116
|
+
return Exit.isFailure(exit) ? Effect.zipRight(Effect.orDie(backing.send([id, 1])), release) : release;
|
|
118
117
|
};
|
|
119
|
-
const execute = request => Stream.
|
|
118
|
+
const execute = request => Stream.fromChannel(Channel.acquireUseRelease(executeAcquire(request, Queue.unbounded()), ({
|
|
119
|
+
queue
|
|
120
|
+
}) => {
|
|
120
121
|
const loop = Channel.flatMap(Queue.take(queue), Exit.match({
|
|
121
122
|
onFailure: cause => Cause.isEmpty(cause) ? Channel.void : Channel.failCause(cause),
|
|
122
123
|
onSuccess: value => Channel.flatMap(Channel.write(Chunk.unsafeFromArray(value)), () => loop)
|
|
123
124
|
}));
|
|
124
|
-
return
|
|
125
|
-
});
|
|
126
|
-
const executeEffect = request => Effect.acquireUseRelease(executeAcquire(request
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
if (!result) return Effect.void;
|
|
130
|
-
const transferables = transfers(request);
|
|
131
|
-
const spanTuple = Option.getOrUndefined(Option.map(span, span => [span.traceId, span.spanId, span.sampled]));
|
|
132
|
-
return (0, _Function.pipe)(Effect.flatMap(wrappedEncode(request), payload => sendQueue.offer([[id, 0, payload, spanTuple], [...transferables, ...collector.unsafeRead()]])), Effect.catchAllCause(cause => Queue.offer(result[0], Exit.failCause(cause))), Effect.zipRight(Deferred.await(result[1])));
|
|
133
|
-
}))), Effect.forever, Effect.forkScoped, Effect.interruptible);
|
|
125
|
+
return loop;
|
|
126
|
+
}, executeRelease));
|
|
127
|
+
const executeEffect = request => Effect.acquireUseRelease(executeAcquire(request, Deferred.make()), ({
|
|
128
|
+
queue
|
|
129
|
+
}) => Deferred.await(queue), executeRelease);
|
|
134
130
|
if (initialMessage) {
|
|
135
|
-
yield* Effect.sync(initialMessage).pipe(Effect.flatMap(executeEffect), Effect.mapError(
|
|
131
|
+
yield* Effect.sync(initialMessage).pipe(Effect.flatMap(executeEffect), Effect.mapError(cause => new _WorkerError.WorkerError({
|
|
136
132
|
reason: "spawn",
|
|
137
|
-
|
|
133
|
+
cause
|
|
138
134
|
})));
|
|
139
135
|
}
|
|
140
136
|
return {
|
|
@@ -142,7 +138,7 @@ const makeManager = exports.makeManager = /*#__PURE__*/Effect.gen(function* () {
|
|
|
142
138
|
execute,
|
|
143
139
|
executeEffect
|
|
144
140
|
};
|
|
145
|
-
})
|
|
141
|
+
});
|
|
146
142
|
}
|
|
147
143
|
});
|
|
148
144
|
});
|
|
@@ -152,7 +148,7 @@ const layerManager = exports.layerManager = /*#__PURE__*/Layer.effect(WorkerMana
|
|
|
152
148
|
const makePool = options => Effect.gen(function* () {
|
|
153
149
|
const manager = yield* WorkerManager;
|
|
154
150
|
const workers = new Set();
|
|
155
|
-
const acquire = (0, _Function.pipe)(manager.spawn(options), Effect.tap(worker => Effect.sync(() => workers.add(worker))
|
|
151
|
+
const acquire = (0, _Function.pipe)(manager.spawn(options), Effect.tap(worker => Effect.acquireRelease(Effect.sync(() => workers.add(worker)), () => Effect.sync(() => workers.delete(worker)))), options.onCreate ? Effect.tap(options.onCreate) : _Function.identity);
|
|
156
152
|
const backing = "minSize" in options ? yield* Pool.makeWithTTL({
|
|
157
153
|
acquire,
|
|
158
154
|
min: options.minSize,
|
|
@@ -189,9 +185,9 @@ const makeSerialized = options => Effect.gen(function* () {
|
|
|
189
185
|
const backing = yield* manager.spawn({
|
|
190
186
|
...options,
|
|
191
187
|
encode(message) {
|
|
192
|
-
return Effect.mapError(Serializable.serialize(message),
|
|
188
|
+
return Effect.mapError(Serializable.serialize(message), cause => new _WorkerError.WorkerError({
|
|
193
189
|
reason: "encode",
|
|
194
|
-
|
|
190
|
+
cause
|
|
195
191
|
}));
|
|
196
192
|
}
|
|
197
193
|
});
|
|
@@ -252,5 +248,76 @@ const makePoolSerializedLayer = (tag, options) => Layer.scoped(tag, makePoolSeri
|
|
|
252
248
|
/** @internal */
|
|
253
249
|
exports.makePoolSerializedLayer = makePoolSerializedLayer;
|
|
254
250
|
const layerSpawner = spawner => Layer.succeed(Spawner, spawner);
|
|
251
|
+
/** @internal */
|
|
255
252
|
exports.layerSpawner = layerSpawner;
|
|
253
|
+
const makePlatform = () => options => PlatformWorker.of({
|
|
254
|
+
[PlatformWorkerTypeId]: PlatformWorkerTypeId,
|
|
255
|
+
spawn(id) {
|
|
256
|
+
return Effect.gen(function* (_) {
|
|
257
|
+
const spawn = yield* Spawner;
|
|
258
|
+
let currentPort;
|
|
259
|
+
const buffer = [];
|
|
260
|
+
const run = handler => Effect.uninterruptibleMask(restore => Scope.make().pipe(Effect.bindTo("scope"), Effect.bind("port", ({
|
|
261
|
+
scope
|
|
262
|
+
}) => options.setup({
|
|
263
|
+
worker: spawn(id),
|
|
264
|
+
scope
|
|
265
|
+
})), Effect.tap(({
|
|
266
|
+
port,
|
|
267
|
+
scope
|
|
268
|
+
}) => {
|
|
269
|
+
currentPort = port;
|
|
270
|
+
return Scope.addFinalizer(scope, Effect.sync(() => {
|
|
271
|
+
currentPort = undefined;
|
|
272
|
+
}));
|
|
273
|
+
}), Effect.bind("fiberSet", ({
|
|
274
|
+
scope
|
|
275
|
+
}) => FiberSet.make().pipe(Scope.extend(scope))), Effect.bind("runFork", ({
|
|
276
|
+
fiberSet
|
|
277
|
+
}) => FiberSet.runtime(fiberSet)()), Effect.tap(({
|
|
278
|
+
fiberSet,
|
|
279
|
+
port,
|
|
280
|
+
runFork,
|
|
281
|
+
scope
|
|
282
|
+
}) => options.listen({
|
|
283
|
+
port,
|
|
284
|
+
scope,
|
|
285
|
+
emit(data) {
|
|
286
|
+
runFork(handler(data));
|
|
287
|
+
},
|
|
288
|
+
deferred: fiberSet.deferred
|
|
289
|
+
})), Effect.tap(({
|
|
290
|
+
port
|
|
291
|
+
}) => {
|
|
292
|
+
if (buffer.length > 0) {
|
|
293
|
+
for (const [message, transfers] of buffer) {
|
|
294
|
+
port.postMessage([0, message], transfers);
|
|
295
|
+
}
|
|
296
|
+
buffer.length = 0;
|
|
297
|
+
}
|
|
298
|
+
}), Effect.flatMap(({
|
|
299
|
+
fiberSet,
|
|
300
|
+
scope
|
|
301
|
+
}) => restore(FiberSet.join(fiberSet)).pipe(Effect.ensuring(Scope.close(scope, Exit.void))))));
|
|
302
|
+
const send = (message, transfers) => Effect.try({
|
|
303
|
+
try: () => {
|
|
304
|
+
if (currentPort === undefined) {
|
|
305
|
+
buffer.push([message, transfers]);
|
|
306
|
+
} else {
|
|
307
|
+
currentPort.postMessage([0, message], transfers);
|
|
308
|
+
}
|
|
309
|
+
},
|
|
310
|
+
catch: cause => new _WorkerError.WorkerError({
|
|
311
|
+
reason: "send",
|
|
312
|
+
cause
|
|
313
|
+
})
|
|
314
|
+
});
|
|
315
|
+
return {
|
|
316
|
+
run,
|
|
317
|
+
send
|
|
318
|
+
};
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
});
|
|
322
|
+
exports.makePlatform = makePlatform;
|
|
256
323
|
//# sourceMappingURL=worker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","names":["Schema","_interopRequireWildcard","require","Serializable","Arr","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","_Function","Layer","Option","Pool","Queue","Schedule","Stream","Tracer","Transferable","_WorkerError","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","defaultQueue","map","unbounded","queue","offer","id","item","span","take","shutdown","exports","PlatformWorkerTypeId","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","platform","idCounter","of","spawn","encode","initialMessage","transfers","_","requestIdCounter","requestMap","Map","sendQueue","acquireRelease","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","outbound","addFinalizer","readyLatch","make","backing","send","pipe","flatMap","forever","msg","complete","void","handleMessage","all","join","fiber","await","concurrency","scoped","onError","cause","forEach","values","failCause","retry","spaced","annotateLogs","package","module","interruptible","forkScoped","empty","discard","sync","response","suspend","length","fail","WorkerError","decodeCause","executeAcquire","request","tap","serviceOption","ParentSpan","filter","_tag","deferred","executeRelease","exit","release","delete","isFailure","execute","loop","match","onFailure","isEmpty","onSuccess","value","write","unsafeFromArray","fromChannel","executeEffect","acquireUseRelease","unsafeGet","fork","result","transferables","spanTuple","getOrUndefined","traceId","spanId","sampled","payload","unsafeRead","catchAllCause","mapError","error","reason","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","identity","makeWithTTL","min","minSize","max","maxSize","targetUtilization","timeToLive","size","pool","broadcast","unwrapScoped","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","mapEffect","matchEffect","makePoolSerialized","makePoolSerializedLayer","layerSpawner","spawner"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"worker.js","names":["Schema","_interopRequireWildcard","require","Serializable","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","FiberRef","FiberSet","_Function","Layer","Option","Pool","Queue","Schedule","Scope","Stream","Tracer","Transferable","_WorkerError","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","PlatformWorkerTypeId","exports","Symbol","for","PlatformWorker","GenericTag","WorkerManagerTypeId","WorkerManager","Spawner","makeManager","gen","platform","idCounter","of","spawn","encode","initialMessage","_","id","requestIdCounter","requestMap","Map","collector","unsafeMakeCollector","wrappedEncode","message","zipRight","clear","provideService","Collector","succeed","readyLatch","make","backing","run","complete","void","handleMessage","pipe","onError","cause","forEach","values","queue","DeferredTypeId","failCause","offer","retry","spaced","annotateLogs","package","module","interruptible","forkScoped","addFinalizer","interrupt","empty","discard","sync","response","suspend","length","fail","WorkerError","decodeCause","executeAcquire","request","makeQueue","withFiberRuntime","fiber","context","getFiberRef","currentContext","span","getOption","ParentSpan","filter","_tag","tap","payload","send","value","traceId","spanId","sampled","undefined","unsafeRead","catchAllCause","map","executeRelease","exit","release","delete","isFailure","orDie","execute","fromChannel","acquireUseRelease","unbounded","loop","flatMap","take","match","onFailure","isEmpty","onSuccess","write","unsafeFromArray","executeEffect","await","mapError","reason","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","acquireRelease","add","onCreate","identity","makeWithTTL","min","minSize","max","maxSize","concurrency","targetUtilization","timeToLive","size","pool","broadcast","unwrapScoped","scoped","makePoolLayer","tag","makeSerialized","serialize","parseSuccess","decode","successSchema","parseFailure","failureSchema","catchAll","error","mapEffect","matchEffect","makePoolSerialized","makePoolSerializedLayer","layerSpawner","spawner","makePlatform","currentPort","buffer","handler","uninterruptibleMask","restore","bindTo","bind","scope","setup","port","extend","fiberSet","runtime","runFork","listen","emit","data","deferred","transfers","postMessage","join","ensuring","close","try","push","catch"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.makeSerialized = exports.make = exports.layerSerialized = exports.layer = exports.PlatformRunnerTypeId = exports.PlatformRunner = void 0;
|
|
6
|
+
exports.run = exports.makeSerialized = exports.make = exports.layerSerialized = exports.layer = exports.PlatformRunnerTypeId = exports.PlatformRunner = void 0;
|
|
7
7
|
var Schema = _interopRequireWildcard(require("@effect/schema/Schema"));
|
|
8
8
|
var Serializable = _interopRequireWildcard(require("@effect/schema/Serializable"));
|
|
9
9
|
var Cause = _interopRequireWildcard(require("effect/Cause"));
|
|
@@ -11,14 +11,10 @@ var Chunk = _interopRequireWildcard(require("effect/Chunk"));
|
|
|
11
11
|
var Context = _interopRequireWildcard(require("effect/Context"));
|
|
12
12
|
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
13
13
|
var Either = _interopRequireWildcard(require("effect/Either"));
|
|
14
|
-
var ExecutionStrategy = _interopRequireWildcard(require("effect/ExecutionStrategy"));
|
|
15
|
-
var Exit = _interopRequireWildcard(require("effect/Exit"));
|
|
16
14
|
var Fiber = _interopRequireWildcard(require("effect/Fiber"));
|
|
17
15
|
var _Function = require("effect/Function");
|
|
18
16
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
19
|
-
var
|
|
20
|
-
var Queue = _interopRequireWildcard(require("effect/Queue"));
|
|
21
|
-
var Scope = _interopRequireWildcard(require("effect/Scope"));
|
|
17
|
+
var Schedule = _interopRequireWildcard(require("effect/Schedule"));
|
|
22
18
|
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
23
19
|
var Transferable = _interopRequireWildcard(require("../Transferable.js"));
|
|
24
20
|
var _WorkerError = require("../WorkerError.js");
|
|
@@ -29,78 +25,56 @@ const PlatformRunnerTypeId = exports.PlatformRunnerTypeId = /*#__PURE__*/Symbol.
|
|
|
29
25
|
/** @internal */
|
|
30
26
|
const PlatformRunner = exports.PlatformRunner = /*#__PURE__*/Context.GenericTag("@effect/platform/Runner/PlatformRunner");
|
|
31
27
|
/** @internal */
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const shutdown = Effect.zipRight(Scope.close(scope, Exit.void), Fiber.interruptFork(fiber));
|
|
36
|
-
const platform = yield* _(PlatformRunner);
|
|
37
|
-
const backing = yield* _(platform.start(shutdown), Scope.extend(scope));
|
|
28
|
+
const run = (process, options) => Effect.gen(function* () {
|
|
29
|
+
const platform = yield* PlatformRunner;
|
|
30
|
+
const backing = yield* platform.start();
|
|
38
31
|
const fiberMap = new Map();
|
|
39
|
-
yield*
|
|
40
|
-
|
|
41
|
-
if (req[1] === 1) {
|
|
42
|
-
return Effect.succeed(msg);
|
|
43
|
-
}
|
|
44
|
-
return Effect.map(options.decode(req[2]), data => [msg[0], [req[0], req[1], data, req[3]]]);
|
|
45
|
-
}) : _Function.identity, Effect.tap(([portId, req]) => {
|
|
46
|
-
const id = req[0];
|
|
47
|
-
if (req[1] === 1) {
|
|
32
|
+
return yield* backing.run((portId, [id, kind, data, span]) => {
|
|
33
|
+
if (kind === 1) {
|
|
48
34
|
const fiber = fiberMap.get(id);
|
|
49
35
|
if (!fiber) return Effect.void;
|
|
50
36
|
return Fiber.interrupt(fiber);
|
|
51
37
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
38
|
+
return Effect.withFiberRuntime(fiber => {
|
|
39
|
+
fiberMap.set(id, fiber);
|
|
40
|
+
return options?.decode ? options.decode(data) : Effect.succeed(data);
|
|
41
|
+
}).pipe(Effect.flatMap(input => {
|
|
42
|
+
const collector = Transferable.unsafeMakeCollector();
|
|
43
|
+
const stream = process(input);
|
|
44
|
+
let effect = Effect.isEffect(stream) ? Effect.flatMap(stream, out => (0, _Function.pipe)(options?.encodeOutput ? Effect.provideService(options.encodeOutput(input, out), Transferable.Collector, collector) : Effect.succeed(out), Effect.flatMap(payload => backing.send(portId, [id, 0, [payload]], collector.unsafeRead())))) : (0, _Function.pipe)(stream, Stream.runForEachChunk(chunk => {
|
|
58
45
|
if (options?.encodeOutput === undefined) {
|
|
59
|
-
const payload = Chunk.toReadonlyArray(
|
|
60
|
-
|
|
61
|
-
return backing.send(portId, [id, 0, payload], transfers);
|
|
46
|
+
const payload = Chunk.toReadonlyArray(chunk);
|
|
47
|
+
return backing.send(portId, [id, 0, payload]);
|
|
62
48
|
}
|
|
63
|
-
const transfers = [];
|
|
64
49
|
collector.unsafeClear();
|
|
65
|
-
return (0, _Function.pipe)(Effect.forEach(data, data =>
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
transfers.push(option);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return Effect.orDie(options.encodeOutput(req[2], data));
|
|
72
|
-
}), Effect.provideService(Transferable.Collector, collector), Effect.flatMap(payload => {
|
|
73
|
-
collector.unsafeRead().forEach(transfer => transfers.push(transfer));
|
|
74
|
-
return backing.send(portId, [id, 0, payload], transfers);
|
|
75
|
-
}));
|
|
76
|
-
}), Stream.runDrain, Effect.andThen(backing.send(portId, [id, 1])));
|
|
77
|
-
if (req[3]) {
|
|
78
|
-
const [traceId, spanId, sampled] = req[3];
|
|
50
|
+
return (0, _Function.pipe)(Effect.forEach(chunk, data => options.encodeOutput(input, data)), Effect.provideService(Transferable.Collector, collector), Effect.flatMap(payload => backing.send(portId, [id, 0, payload], collector.unsafeRead())));
|
|
51
|
+
}), Effect.andThen(backing.send(portId, [id, 1])));
|
|
52
|
+
if (span) {
|
|
79
53
|
effect = Effect.withParentSpan(effect, {
|
|
80
54
|
_tag: "ExternalSpan",
|
|
81
|
-
traceId,
|
|
82
|
-
spanId,
|
|
83
|
-
sampled,
|
|
55
|
+
traceId: span[0],
|
|
56
|
+
spanId: span[1],
|
|
57
|
+
sampled: span[2],
|
|
84
58
|
context: Context.empty()
|
|
85
59
|
});
|
|
86
60
|
}
|
|
87
|
-
return effect
|
|
88
|
-
}), Effect.catchIf(_WorkerError.isWorkerError, error => backing.send(portId, [id, 3, _WorkerError.WorkerError.encodeCause(Cause.fail(error))])), Effect.onExit(exit => {
|
|
89
|
-
if (exit._tag === "Success") {
|
|
90
|
-
return Effect.void;
|
|
91
|
-
}
|
|
92
|
-
return Either.match(Cause.failureOrCause(exit.cause), {
|
|
61
|
+
return Effect.uninterruptibleMask(restore => restore(effect).pipe(Effect.catchIf(_WorkerError.isWorkerError, error => backing.send(portId, [id, 3, _WorkerError.WorkerError.encodeCause(Cause.fail(error))])), Effect.catchAllCause(cause => Either.match(Cause.failureOrCause(cause), {
|
|
93
62
|
onLeft: error => {
|
|
94
|
-
const transfers = options?.transfers ? options.transfers(error) : [];
|
|
95
63
|
collector.unsafeClear();
|
|
96
|
-
return (0, _Function.pipe)(options?.encodeError ? Effect.provideService(options.encodeError(
|
|
64
|
+
return (0, _Function.pipe)(options?.encodeError ? Effect.provideService(options.encodeError(input, error), Transferable.Collector, collector) : Effect.succeed(error), Effect.flatMap(payload => backing.send(portId, [id, 2, payload], collector.unsafeRead())), Effect.catchAllCause(cause => backing.send(portId, [id, 3, _WorkerError.WorkerError.encodeCause(cause)])));
|
|
97
65
|
},
|
|
98
66
|
onRight: cause => backing.send(portId, [id, 3, _WorkerError.WorkerError.encodeCause(cause)])
|
|
99
|
-
});
|
|
100
|
-
}), Effect.ensuring(Effect.sync(() => fiberMap.delete(id)))
|
|
101
|
-
})
|
|
67
|
+
}))));
|
|
68
|
+
}), Effect.ensuring(Effect.sync(() => fiberMap.delete(id))));
|
|
69
|
+
});
|
|
102
70
|
});
|
|
103
71
|
/** @internal */
|
|
72
|
+
exports.run = run;
|
|
73
|
+
const make = (process, options) => Effect.withFiberRuntime(fiber => run(process, options).pipe(Effect.tapErrorCause(Effect.logDebug), Effect.retry(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
74
|
+
package: "@effect/platform-node",
|
|
75
|
+
module: "WorkerRunner"
|
|
76
|
+
}), Effect.ensuring(Fiber.interruptAsFork(fiber, fiber.id())), Effect.interruptible, Effect.forkScoped, Effect.asVoid));
|
|
77
|
+
/** @internal */
|
|
104
78
|
exports.make = make;
|
|
105
79
|
const layer = (process, options) => Layer.scopedDiscard(make(process, options));
|
|
106
80
|
/** @internal */
|
|
@@ -121,21 +95,21 @@ const makeSerialized = (schema, handlers) => Effect.gen(function* (_) {
|
|
|
121
95
|
return Stream.provideContext(result, context);
|
|
122
96
|
}, {
|
|
123
97
|
decode(message) {
|
|
124
|
-
return Effect.mapError(parseRequest(message),
|
|
98
|
+
return Effect.mapError(parseRequest(message), cause => new _WorkerError.WorkerError({
|
|
125
99
|
reason: "decode",
|
|
126
|
-
|
|
100
|
+
cause
|
|
127
101
|
}));
|
|
128
102
|
},
|
|
129
103
|
encodeError(request, message) {
|
|
130
|
-
return Effect.mapError(Serializable.serializeFailure(request, message),
|
|
104
|
+
return Effect.mapError(Serializable.serializeFailure(request, message), cause => new _WorkerError.WorkerError({
|
|
131
105
|
reason: "encode",
|
|
132
|
-
|
|
106
|
+
cause
|
|
133
107
|
}));
|
|
134
108
|
},
|
|
135
109
|
encodeOutput(request, message) {
|
|
136
|
-
return Effect.catchAllCause(Serializable.serializeSuccess(request, message),
|
|
110
|
+
return Effect.catchAllCause(Serializable.serializeSuccess(request, message), cause => new _WorkerError.WorkerError({
|
|
137
111
|
reason: "encode",
|
|
138
|
-
|
|
112
|
+
cause
|
|
139
113
|
}));
|
|
140
114
|
}
|
|
141
115
|
}));
|