@effect/platform 0.75.3 → 0.76.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/cjs/HttpServerResponse.js +6 -1
- package/dist/cjs/HttpServerResponse.js.map +1 -1
- package/dist/cjs/WorkerRunner.js +19 -3
- package/dist/cjs/WorkerRunner.js.map +1 -1
- package/dist/cjs/internal/httpServerResponse.js +3 -1
- package/dist/cjs/internal/httpServerResponse.js.map +1 -1
- package/dist/cjs/internal/workerRunner.js +22 -14
- package/dist/cjs/internal/workerRunner.js.map +1 -1
- package/dist/dts/HttpServerResponse.d.ts +16 -0
- package/dist/dts/HttpServerResponse.d.ts.map +1 -1
- package/dist/dts/WorkerRunner.d.ts +34 -7
- package/dist/dts/WorkerRunner.d.ts.map +1 -1
- package/dist/esm/HttpServerResponse.js +5 -0
- package/dist/esm/HttpServerResponse.js.map +1 -1
- package/dist/esm/WorkerRunner.js +18 -2
- package/dist/esm/WorkerRunner.js.map +1 -1
- package/dist/esm/internal/httpServerResponse.js +2 -0
- package/dist/esm/internal/httpServerResponse.js.map +1 -1
- package/dist/esm/internal/workerRunner.js +20 -11
- package/dist/esm/internal/workerRunner.js.map +1 -1
- package/package.json +2 -2
- package/src/HttpServerResponse.ts +17 -0
- package/src/WorkerRunner.ts +43 -13
- package/src/internal/httpServerResponse.ts +23 -0
- package/src/internal/workerRunner.ts +104 -104
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServerResponse.js","names":["Context","Effect","Effectable","dual","Inspectable","Runtime","Stream","Cookies","Headers","Template","UrlParams","internalBody","TypeId","Symbol","for","respondableSymbol","ServerResponseImpl","StructuralClass","status","statusText","cookies","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","NodeInspectSymbol","toJSON","format","_id","redact","isServerResponse","u","empty","options","fromInput","redirect","location","unsafeFromRecord","merge","uint8Array","getContentType","text","html","strings","args","map","make","_","htmlStream","context","stream","provideContext","encodeText","json","unsafeJson","schemaJson","schema","encode","jsonSchema","httpPlatform","GenericTag","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","raw","formData","setHeader","self","key","value","set","replaceCookies","setCookie","name","unsafeSetCookie","unsafeSet","updateCookies","f","setCookies","setAll","unsafeSetCookies","unsafeSetAll","removeCookie","remove","setHeaders","input","setStatus","setBody","_tag","toWeb","response","globalThis","isEmpty","toAdd","toSetCookieHeaders","header","append","withoutBody","Response","undefined","toReadableStreamRuntime","runtime","defaultRuntime"],"sources":["../../../src/internal/httpServerResponse.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"httpServerResponse.js","names":["Context","Effect","Effectable","dual","Inspectable","Runtime","Stream","Cookies","Headers","Template","UrlParams","internalBody","TypeId","Symbol","for","respondableSymbol","ServerResponseImpl","StructuralClass","status","statusText","cookies","body","headers","constructor","contentType","contentLength","newHeaders","toString","commit","succeed","NodeInspectSymbol","toJSON","format","_id","redact","isServerResponse","u","empty","options","fromInput","redirect","location","unsafeFromRecord","merge","uint8Array","getContentType","text","html","strings","args","map","make","_","htmlStream","context","stream","provideContext","encodeText","json","unsafeJson","schemaJson","schema","encode","jsonSchema","httpPlatform","GenericTag","file","path","flatMap","platform","fileResponse","fileWeb","fileWebResponse","urlParams","raw","formData","setHeader","self","key","value","set","replaceCookies","setCookie","name","unsafeSetCookie","unsafeSet","updateCookies","f","setCookies","setAll","mergeCookies","unsafeSetCookies","unsafeSetAll","removeCookie","remove","setHeaders","input","setStatus","setBody","_tag","toWeb","response","globalThis","isEmpty","toAdd","toSetCookieHeaders","header","append","withoutBody","Response","undefined","toReadableStreamRuntime","runtime","defaultRuntime"],"sources":["../../../src/internal/httpServerResponse.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import * as Cause from "effect/Cause";
|
|
2
2
|
import * as Chunk from "effect/Chunk";
|
|
3
3
|
import * as Context from "effect/Context";
|
|
4
|
+
import * as Deferred from "effect/Deferred";
|
|
4
5
|
import * as Effect from "effect/Effect";
|
|
5
6
|
import * as Either from "effect/Either";
|
|
6
7
|
import * as Fiber from "effect/Fiber";
|
|
8
|
+
import * as FiberId from "effect/FiberId";
|
|
7
9
|
import { pipe } from "effect/Function";
|
|
8
10
|
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Schedule from "effect/Schedule";
|
|
10
11
|
import * as Schema from "effect/Schema";
|
|
11
12
|
import * as Stream from "effect/Stream";
|
|
12
13
|
import * as Transferable from "../Transferable.js";
|
|
@@ -16,11 +17,18 @@ export const PlatformRunnerTypeId = /*#__PURE__*/Symbol.for("@effect/platform/Ru
|
|
|
16
17
|
/** @internal */
|
|
17
18
|
export const PlatformRunner = /*#__PURE__*/Context.GenericTag("@effect/platform/Runner/PlatformRunner");
|
|
18
19
|
/** @internal */
|
|
19
|
-
export const
|
|
20
|
+
export const CloseLatch = /*#__PURE__*/Context.Reference()("@effect/platform/WorkerRunner/CloseLatch", {
|
|
21
|
+
defaultValue: () => Deferred.unsafeMake(FiberId.none)
|
|
22
|
+
});
|
|
23
|
+
/** @internal */
|
|
24
|
+
export const layerCloseLatch = /*#__PURE__*/Layer.effect(CloseLatch, /*#__PURE__*/Deferred.make());
|
|
25
|
+
/** @internal */
|
|
26
|
+
export const make = /*#__PURE__*/Effect.fnUntraced(function* (process, options) {
|
|
20
27
|
const platform = yield* PlatformRunner;
|
|
21
|
-
const
|
|
28
|
+
const closeLatch = yield* CloseLatch;
|
|
29
|
+
const backing = yield* platform.start(closeLatch);
|
|
22
30
|
const fiberMap = new Map();
|
|
23
|
-
|
|
31
|
+
yield* backing.run((portId, [id, kind, data, span]) => {
|
|
24
32
|
if (kind === 1) {
|
|
25
33
|
const fiber = fiberMap.get(id);
|
|
26
34
|
if (!fiber) return Effect.void;
|
|
@@ -60,12 +68,7 @@ export const run = (process, options) => Effect.gen(function* () {
|
|
|
60
68
|
});
|
|
61
69
|
});
|
|
62
70
|
/** @internal */
|
|
63
|
-
export const
|
|
64
|
-
package: "@effect/platform-node",
|
|
65
|
-
module: "WorkerRunner"
|
|
66
|
-
}), Effect.ensuring(Fiber.interruptAsFork(fiber, fiber.id())), Effect.interruptible, Effect.forkScoped, Effect.asVoid));
|
|
67
|
-
/** @internal */
|
|
68
|
-
export const layer = (process, options) => Layer.scopedDiscard(make(process, options));
|
|
71
|
+
export const layer = (process, options) => Layer.scopedDiscard(make(process, options)).pipe(Layer.provide(layerCloseLatch));
|
|
69
72
|
/** @internal */
|
|
70
73
|
export const makeSerialized = (schema, handlers) => Effect.gen(function* () {
|
|
71
74
|
const scope = yield* Effect.scope;
|
|
@@ -103,5 +106,11 @@ export const makeSerialized = (schema, handlers) => Effect.gen(function* () {
|
|
|
103
106
|
});
|
|
104
107
|
});
|
|
105
108
|
/** @internal */
|
|
106
|
-
export const layerSerialized = (schema, handlers) => Layer.scopedDiscard(makeSerialized(schema, handlers));
|
|
109
|
+
export const layerSerialized = (schema, handlers) => Layer.scopedDiscard(makeSerialized(schema, handlers)).pipe(Layer.provide(layerCloseLatch));
|
|
110
|
+
/** @internal */
|
|
111
|
+
export const launch = layer => Effect.scopedWith(Effect.fnUntraced(function* (scope) {
|
|
112
|
+
const context = yield* Layer.buildWithScope(Layer.merge(layer, layerCloseLatch), scope);
|
|
113
|
+
const closeLatch = Context.get(context, CloseLatch);
|
|
114
|
+
return yield* Effect.never.pipe(Effect.raceFirst(Deferred.await(closeLatch)));
|
|
115
|
+
}));
|
|
107
116
|
//# sourceMappingURL=workerRunner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workerRunner.js","names":["Cause","Chunk","Context","Effect","Either","Fiber","
|
|
1
|
+
{"version":3,"file":"workerRunner.js","names":["Cause","Chunk","Context","Deferred","Effect","Either","Fiber","FiberId","pipe","Layer","Schema","Stream","Transferable","isWorkerError","WorkerError","PlatformRunnerTypeId","Symbol","for","PlatformRunner","GenericTag","CloseLatch","Reference","defaultValue","unsafeMake","none","layerCloseLatch","effect","make","fnUntraced","process","options","platform","closeLatch","backing","start","fiberMap","Map","run","portId","id","kind","data","span","fiber","get","void","interrupt","withFiberRuntime","set","decode","succeed","flatMap","input","collector","unsafeMakeCollector","stream","isEffect","out","encodeOutput","provideService","Collector","payload","send","unsafeRead","runForEachChunk","chunk","undefined","toReadonlyArray","unsafeClear","forEach","andThen","withParentSpan","_tag","traceId","spanId","sampled","context","empty","uninterruptibleMask","restore","catchIf","error","encodeCause","fail","catchAllCause","cause","match","failureOrCause","onLeft","encodeError","onRight","ensuring","sync","delete","layer","scopedDiscard","provide","makeSerialized","schema","handlers","gen","scope","parseRequest","decodeUnknown","request","result","isLayer","buildWithScope","_","merge","provideContext","message","mapError","reason","serializeFailure","serializeSuccess","layerSerialized","launch","scopedWith","never","raceFirst","await"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.76.0",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"multipasta": "^0.2.5"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"effect": "^3.12.
|
|
17
|
+
"effect": "^3.12.11"
|
|
18
18
|
},
|
|
19
19
|
"publishConfig": {
|
|
20
20
|
"provenance": true
|
|
@@ -343,6 +343,23 @@ export const updateCookies: {
|
|
|
343
343
|
(self: HttpServerResponse, f: (cookies: Cookies) => Cookies): HttpServerResponse
|
|
344
344
|
} = internal.updateCookies
|
|
345
345
|
|
|
346
|
+
/**
|
|
347
|
+
* @since 1.0.0
|
|
348
|
+
* @category combinators
|
|
349
|
+
*/
|
|
350
|
+
export const mergeCookies: {
|
|
351
|
+
/**
|
|
352
|
+
* @since 1.0.0
|
|
353
|
+
* @category combinators
|
|
354
|
+
*/
|
|
355
|
+
(cookies: Cookies): (self: HttpServerResponse) => HttpServerResponse
|
|
356
|
+
/**
|
|
357
|
+
* @since 1.0.0
|
|
358
|
+
* @category combinators
|
|
359
|
+
*/
|
|
360
|
+
(self: HttpServerResponse, cookies: Cookies): HttpServerResponse
|
|
361
|
+
} = internal.mergeCookies
|
|
362
|
+
|
|
346
363
|
/**
|
|
347
364
|
* @since 1.0.0
|
|
348
365
|
* @category combinators
|
package/src/WorkerRunner.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
import type * as Context from "effect/Context"
|
|
5
|
+
import type * as Deferred from "effect/Deferred"
|
|
5
6
|
import type * as Effect from "effect/Effect"
|
|
6
7
|
import type * as Layer from "effect/Layer"
|
|
7
8
|
import type * as Schema from "effect/Schema"
|
|
@@ -17,7 +18,7 @@ import type { WorkerError } from "./WorkerError.js"
|
|
|
17
18
|
export interface BackingRunner<I, O> {
|
|
18
19
|
readonly run: <A, E, R>(
|
|
19
20
|
handler: (portId: number, message: I) => Effect.Effect<A, E, R>
|
|
20
|
-
) => Effect.Effect<never,
|
|
21
|
+
) => Effect.Effect<void, never, Scope.Scope | R>
|
|
21
22
|
readonly send: (
|
|
22
23
|
portId: number,
|
|
23
24
|
message: O,
|
|
@@ -55,7 +56,7 @@ export type PlatformRunnerTypeId = typeof PlatformRunnerTypeId
|
|
|
55
56
|
*/
|
|
56
57
|
export interface PlatformRunner {
|
|
57
58
|
readonly [PlatformRunnerTypeId]: PlatformRunnerTypeId
|
|
58
|
-
readonly start: <I, O>() => Effect.Effect<BackingRunner<I, O>, WorkerError>
|
|
59
|
+
readonly start: <I, O>(closeLatch: typeof CloseLatch.Service) => Effect.Effect<BackingRunner<I, O>, WorkerError>
|
|
59
60
|
}
|
|
60
61
|
|
|
61
62
|
/**
|
|
@@ -64,6 +65,32 @@ export interface PlatformRunner {
|
|
|
64
65
|
*/
|
|
65
66
|
export const PlatformRunner: Context.Tag<PlatformRunner, PlatformRunner> = internal.PlatformRunner
|
|
66
67
|
|
|
68
|
+
/**
|
|
69
|
+
* The worker close latch is used by platform runners to signal that the worker
|
|
70
|
+
* has been closed.
|
|
71
|
+
*
|
|
72
|
+
* @since 1.0.0
|
|
73
|
+
* @category CloseLatch
|
|
74
|
+
*/
|
|
75
|
+
export interface CloseLatch {
|
|
76
|
+
readonly _: unique symbol
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* The worker close latch is used by platform runners to signal that the worker
|
|
81
|
+
* has been closed.
|
|
82
|
+
*
|
|
83
|
+
* @since 1.0.0
|
|
84
|
+
* @category CloseLatch
|
|
85
|
+
*/
|
|
86
|
+
export const CloseLatch: Context.Reference<CloseLatch, Deferred.Deferred<void, WorkerError>> = internal.CloseLatch
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* @since 1.0.0
|
|
90
|
+
* @category CloseLatch
|
|
91
|
+
*/
|
|
92
|
+
export const layerCloseLatch: Layer.Layer<CloseLatch> = internal.layerCloseLatch
|
|
93
|
+
|
|
67
94
|
/**
|
|
68
95
|
* @since 1.0.0
|
|
69
96
|
* @category models
|
|
@@ -88,15 +115,6 @@ export declare namespace Runner {
|
|
|
88
115
|
}
|
|
89
116
|
}
|
|
90
117
|
|
|
91
|
-
/**
|
|
92
|
-
* @since 1.0.0
|
|
93
|
-
* @category constructors
|
|
94
|
-
*/
|
|
95
|
-
export const run: <I, E, R, O>(
|
|
96
|
-
process: (request: I) => Stream.Stream<O, E, R> | Effect.Effect<O, E, R>,
|
|
97
|
-
options?: Runner.Options<I, O, E>
|
|
98
|
-
) => Effect.Effect<never, WorkerError, PlatformRunner | R> = internal.run
|
|
99
|
-
|
|
100
118
|
/**
|
|
101
119
|
* @since 1.0.0
|
|
102
120
|
* @category constructors
|
|
@@ -198,8 +216,11 @@ export const makeSerialized: <
|
|
|
198
216
|
>(
|
|
199
217
|
schema: Schema.Schema<A, I, R>,
|
|
200
218
|
handlers: Handlers
|
|
201
|
-
) => Effect.Effect<
|
|
202
|
-
|
|
219
|
+
) => Effect.Effect<
|
|
220
|
+
void,
|
|
221
|
+
WorkerError,
|
|
222
|
+
PlatformRunner | Scope.Scope | R | SerializedRunner.HandlersContext<Handlers>
|
|
223
|
+
> = internal.makeSerialized
|
|
203
224
|
|
|
204
225
|
/**
|
|
205
226
|
* @since 1.0.0
|
|
@@ -215,3 +236,12 @@ export const layerSerialized: <
|
|
|
215
236
|
handlers: Handlers
|
|
216
237
|
) => Layer.Layer<never, WorkerError, PlatformRunner | R | SerializedRunner.HandlersContext<Handlers>> =
|
|
217
238
|
internal.layerSerialized
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* Launch the specified layer, interrupting the fiber when the CloseLatch is
|
|
242
|
+
* triggered.
|
|
243
|
+
*
|
|
244
|
+
* @since 1.0.0
|
|
245
|
+
* @category Execution
|
|
246
|
+
*/
|
|
247
|
+
export const launch: <A, E, R>(layer: Layer.Layer<A, E, R>) => Effect.Effect<void, E | WorkerError, R> = internal.launch
|
|
@@ -447,6 +447,29 @@ export const setCookies = dual<
|
|
|
447
447
|
))
|
|
448
448
|
)
|
|
449
449
|
|
|
450
|
+
/** @internal */
|
|
451
|
+
export const mergeCookies = dual<
|
|
452
|
+
(
|
|
453
|
+
cookies: Cookies.Cookies
|
|
454
|
+
) => (
|
|
455
|
+
self: ServerResponse.HttpServerResponse
|
|
456
|
+
) => ServerResponse.HttpServerResponse,
|
|
457
|
+
(
|
|
458
|
+
self: ServerResponse.HttpServerResponse,
|
|
459
|
+
cookies: Cookies.Cookies
|
|
460
|
+
) => ServerResponse.HttpServerResponse
|
|
461
|
+
>(
|
|
462
|
+
2,
|
|
463
|
+
(self, cookies) =>
|
|
464
|
+
new ServerResponseImpl(
|
|
465
|
+
self.status,
|
|
466
|
+
self.statusText,
|
|
467
|
+
self.headers,
|
|
468
|
+
Cookies.merge(self.cookies, cookies),
|
|
469
|
+
self.body
|
|
470
|
+
)
|
|
471
|
+
)
|
|
472
|
+
|
|
450
473
|
/** @internal */
|
|
451
474
|
export const unsafeSetCookies = dual<
|
|
452
475
|
(
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import * as Cause from "effect/Cause"
|
|
2
2
|
import * as Chunk from "effect/Chunk"
|
|
3
3
|
import * as Context from "effect/Context"
|
|
4
|
+
import * as Deferred from "effect/Deferred"
|
|
4
5
|
import * as Effect from "effect/Effect"
|
|
5
6
|
import * as Either from "effect/Either"
|
|
6
7
|
import * as Fiber from "effect/Fiber"
|
|
8
|
+
import * as FiberId from "effect/FiberId"
|
|
7
9
|
import { pipe } from "effect/Function"
|
|
8
10
|
import * as Layer from "effect/Layer"
|
|
9
|
-
import * as Schedule from "effect/Schedule"
|
|
10
11
|
import * as Schema from "effect/Schema"
|
|
11
12
|
import type * as Scope from "effect/Scope"
|
|
12
13
|
import * as Stream from "effect/Stream"
|
|
@@ -26,125 +27,114 @@ export const PlatformRunner = Context.GenericTag<WorkerRunner.PlatformRunner>(
|
|
|
26
27
|
)
|
|
27
28
|
|
|
28
29
|
/** @internal */
|
|
29
|
-
export const
|
|
30
|
+
export const CloseLatch = Context.Reference<WorkerRunner.CloseLatch>()("@effect/platform/WorkerRunner/CloseLatch", {
|
|
31
|
+
defaultValue: () => Deferred.unsafeMake<void, WorkerError>(FiberId.none)
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
/** @internal */
|
|
35
|
+
export const layerCloseLatch = Layer.effect(CloseLatch, Deferred.make())
|
|
36
|
+
|
|
37
|
+
/** @internal */
|
|
38
|
+
export const make = Effect.fnUntraced(function*<I, E, R, O>(
|
|
30
39
|
process: (request: I) => Stream.Stream<O, E, R> | Effect.Effect<O, E, R>,
|
|
31
40
|
options?: WorkerRunner.Runner.Options<I, O, E>
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
41
|
+
) {
|
|
42
|
+
const platform = yield* PlatformRunner
|
|
43
|
+
const closeLatch = yield* CloseLatch
|
|
44
|
+
const backing = yield* platform.start<Worker.Worker.Request<I>, Worker.Worker.Response<E>>(closeLatch)
|
|
45
|
+
const fiberMap = new Map<number, Fiber.Fiber<unknown, unknown>>()
|
|
37
46
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
47
|
+
yield* backing.run((portId, [id, kind, data, span]): Effect.Effect<void, WorkerError, R> => {
|
|
48
|
+
if (kind === 1) {
|
|
49
|
+
const fiber = fiberMap.get(id)
|
|
50
|
+
if (!fiber) return Effect.void
|
|
51
|
+
return Fiber.interrupt(fiber)
|
|
52
|
+
}
|
|
44
53
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
pipe(
|
|
55
|
-
options?.encodeOutput
|
|
56
|
-
? Effect.provideService(options.encodeOutput(input, out), Transferable.Collector, collector)
|
|
57
|
-
: Effect.succeed(out),
|
|
58
|
-
Effect.flatMap((payload) => backing.send(portId, [id, 0, [payload]], collector.unsafeRead()))
|
|
59
|
-
)) :
|
|
54
|
+
return Effect.withFiberRuntime<I, WorkerError>((fiber) => {
|
|
55
|
+
fiberMap.set(id, fiber)
|
|
56
|
+
return options?.decode ? options.decode(data) : Effect.succeed(data)
|
|
57
|
+
}).pipe(
|
|
58
|
+
Effect.flatMap((input) => {
|
|
59
|
+
const collector = Transferable.unsafeMakeCollector()
|
|
60
|
+
const stream = process(input)
|
|
61
|
+
let effect = Effect.isEffect(stream) ?
|
|
62
|
+
Effect.flatMap(stream, (out) =>
|
|
60
63
|
pipe(
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
options?.encodeOutput
|
|
65
|
+
? Effect.provideService(options.encodeOutput(input, out), Transferable.Collector, collector)
|
|
66
|
+
: Effect.succeed(out),
|
|
67
|
+
Effect.flatMap((payload) => backing.send(portId, [id, 0, [payload]], collector.unsafeRead()))
|
|
68
|
+
)) :
|
|
69
|
+
pipe(
|
|
70
|
+
stream,
|
|
71
|
+
Stream.runForEachChunk((chunk) => {
|
|
72
|
+
if (options?.encodeOutput === undefined) {
|
|
73
|
+
const payload = Chunk.toReadonlyArray(chunk)
|
|
74
|
+
return backing.send(portId, [id, 0, payload])
|
|
75
|
+
}
|
|
67
76
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
+
collector.unsafeClear()
|
|
78
|
+
return pipe(
|
|
79
|
+
Effect.forEach(chunk, (data) => options.encodeOutput!(input, data)),
|
|
80
|
+
Effect.provideService(Transferable.Collector, collector),
|
|
81
|
+
Effect.flatMap((payload) => backing.send(portId, [id, 0, payload], collector.unsafeRead()))
|
|
82
|
+
)
|
|
83
|
+
}),
|
|
84
|
+
Effect.andThen(backing.send(portId, [id, 1]))
|
|
85
|
+
)
|
|
77
86
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
+
if (span) {
|
|
88
|
+
effect = Effect.withParentSpan(effect, {
|
|
89
|
+
_tag: "ExternalSpan",
|
|
90
|
+
traceId: span[0],
|
|
91
|
+
spanId: span[1],
|
|
92
|
+
sampled: span[2],
|
|
93
|
+
context: Context.empty()
|
|
94
|
+
})
|
|
95
|
+
}
|
|
87
96
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
onRight: (cause) => backing.send(portId, [id, 3, WorkerError.encodeCause(cause)])
|
|
113
|
-
})
|
|
114
|
-
)
|
|
97
|
+
return Effect.uninterruptibleMask((restore) =>
|
|
98
|
+
restore(effect).pipe(
|
|
99
|
+
Effect.catchIf(
|
|
100
|
+
isWorkerError,
|
|
101
|
+
(error) => backing.send(portId, [id, 3, WorkerError.encodeCause(Cause.fail(error))])
|
|
102
|
+
),
|
|
103
|
+
Effect.catchAllCause((cause) =>
|
|
104
|
+
Either.match(Cause.failureOrCause(cause), {
|
|
105
|
+
onLeft: (error) => {
|
|
106
|
+
collector.unsafeClear()
|
|
107
|
+
return pipe(
|
|
108
|
+
options?.encodeError
|
|
109
|
+
? Effect.provideService(
|
|
110
|
+
options.encodeError(input, error),
|
|
111
|
+
Transferable.Collector,
|
|
112
|
+
collector
|
|
113
|
+
)
|
|
114
|
+
: Effect.succeed(error),
|
|
115
|
+
Effect.flatMap((payload) => backing.send(portId, [id, 2, payload as any], collector.unsafeRead())),
|
|
116
|
+
Effect.catchAllCause((cause) => backing.send(portId, [id, 3, WorkerError.encodeCause(cause)]))
|
|
117
|
+
)
|
|
118
|
+
},
|
|
119
|
+
onRight: (cause) => backing.send(portId, [id, 3, WorkerError.encodeCause(cause)])
|
|
120
|
+
})
|
|
115
121
|
)
|
|
116
122
|
)
|
|
117
|
-
|
|
118
|
-
Effect.ensuring(Effect.sync(() => fiberMap.delete(id)))
|
|
119
|
-
)
|
|
120
|
-
})
|
|
121
|
-
})
|
|
122
|
-
|
|
123
|
-
/** @internal */
|
|
124
|
-
export const make = <I, E, R, O>(
|
|
125
|
-
process: (request: I) => Stream.Stream<O, E, R> | Effect.Effect<O, E, R>,
|
|
126
|
-
options?: WorkerRunner.Runner.Options<I, O, E>
|
|
127
|
-
): Effect.Effect<void, WorkerError, WorkerRunner.PlatformRunner | R | Scope.Scope> =>
|
|
128
|
-
Effect.withFiberRuntime<void, never, WorkerRunner.PlatformRunner | R | Scope.Scope>((fiber) =>
|
|
129
|
-
run(process, options).pipe(
|
|
130
|
-
Effect.tapErrorCause((cause) => Cause.isInterruptedOnly(cause) ? Effect.void : Effect.logWarning(cause)),
|
|
131
|
-
Effect.retry(Schedule.spaced(1000)),
|
|
132
|
-
Effect.annotateLogs({
|
|
133
|
-
package: "@effect/platform-node",
|
|
134
|
-
module: "WorkerRunner"
|
|
123
|
+
)
|
|
135
124
|
}),
|
|
136
|
-
Effect.ensuring(
|
|
137
|
-
Effect.interruptible,
|
|
138
|
-
Effect.forkScoped,
|
|
139
|
-
Effect.asVoid
|
|
125
|
+
Effect.ensuring(Effect.sync(() => fiberMap.delete(id)))
|
|
140
126
|
)
|
|
141
|
-
)
|
|
127
|
+
})
|
|
128
|
+
})
|
|
142
129
|
|
|
143
130
|
/** @internal */
|
|
144
131
|
export const layer = <I, E, R, O>(
|
|
145
132
|
process: (request: I) => Stream.Stream<O, E, R> | Effect.Effect<O, E, R>,
|
|
146
133
|
options?: WorkerRunner.Runner.Options<I, O, E>
|
|
147
|
-
): Layer.Layer<never, WorkerError, WorkerRunner.PlatformRunner | R> =>
|
|
134
|
+
): Layer.Layer<never, WorkerError, WorkerRunner.PlatformRunner | R> =>
|
|
135
|
+
Layer.scopedDiscard(make(process, options)).pipe(
|
|
136
|
+
Layer.provide(layerCloseLatch)
|
|
137
|
+
)
|
|
148
138
|
|
|
149
139
|
/** @internal */
|
|
150
140
|
export const makeSerialized = <
|
|
@@ -216,4 +206,14 @@ export const layerSerialized = <
|
|
|
216
206
|
| R
|
|
217
207
|
| WorkerRunner.PlatformRunner
|
|
218
208
|
| WorkerRunner.SerializedRunner.HandlersContext<Handlers>
|
|
219
|
-
> => Layer.scopedDiscard(makeSerialized(schema, handlers))
|
|
209
|
+
> => Layer.scopedDiscard(makeSerialized(schema, handlers)).pipe(Layer.provide(layerCloseLatch))
|
|
210
|
+
|
|
211
|
+
/** @internal */
|
|
212
|
+
export const launch = <A, E, R>(layer: Layer.Layer<A, E, R>): Effect.Effect<void, E | WorkerError, R> =>
|
|
213
|
+
Effect.scopedWith(Effect.fnUntraced(function*(scope) {
|
|
214
|
+
const context = yield* Layer.buildWithScope(Layer.merge(layer, layerCloseLatch), scope)
|
|
215
|
+
const closeLatch = Context.get(context, CloseLatch)
|
|
216
|
+
return yield* Effect.never.pipe(
|
|
217
|
+
Effect.raceFirst(Deferred.await(closeLatch))
|
|
218
|
+
)
|
|
219
|
+
}))
|