@effect/platform-node 0.104.1 → 4.0.0-beta.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/Mime.d.ts +15 -0
- package/dist/Mime.d.ts.map +1 -0
- package/dist/Mime.js +16 -0
- package/dist/Mime.js.map +1 -0
- package/dist/NodeChildProcessSpawner.d.ts +7 -0
- package/dist/NodeChildProcessSpawner.d.ts.map +1 -0
- package/dist/NodeChildProcessSpawner.js +7 -0
- package/dist/NodeChildProcessSpawner.js.map +1 -0
- package/dist/NodeClusterHttp.d.ts +44 -0
- package/dist/NodeClusterHttp.d.ts.map +1 -0
- package/dist/{esm/NodeClusterHttp.js → NodeClusterHttp.js} +14 -18
- package/dist/NodeClusterHttp.js.map +1 -0
- package/dist/{dts/NodeClusterSocket.d.ts → NodeClusterSocket.d.ts} +13 -13
- package/dist/NodeClusterSocket.d.ts.map +1 -0
- package/dist/{esm/NodeClusterSocket.js → NodeClusterSocket.js} +13 -13
- package/dist/NodeClusterSocket.js.map +1 -0
- package/dist/NodeFileSystem.d.ts +8 -0
- package/dist/NodeFileSystem.d.ts.map +1 -0
- package/dist/NodeFileSystem.js.map +1 -0
- package/dist/NodeHttpClient.d.ts +110 -0
- package/dist/NodeHttpClient.d.ts.map +1 -0
- package/dist/NodeHttpClient.js +446 -0
- package/dist/NodeHttpClient.js.map +1 -0
- package/dist/NodeHttpIncomingMessage.d.ts +35 -0
- package/dist/NodeHttpIncomingMessage.d.ts.map +1 -0
- package/dist/NodeHttpIncomingMessage.js +77 -0
- package/dist/NodeHttpIncomingMessage.js.map +1 -0
- package/dist/NodeHttpPlatform.d.ts +26 -0
- package/dist/NodeHttpPlatform.d.ts.map +1 -0
- package/dist/{esm/internal/httpPlatform.js → NodeHttpPlatform.js} +20 -11
- package/dist/NodeHttpPlatform.js.map +1 -0
- package/dist/NodeHttpServer.d.ts +73 -0
- package/dist/NodeHttpServer.d.ts.map +1 -0
- package/dist/NodeHttpServer.js +376 -0
- package/dist/NodeHttpServer.js.map +1 -0
- package/dist/NodeHttpServerRequest.d.ts +16 -0
- package/dist/NodeHttpServerRequest.d.ts.map +1 -0
- package/dist/NodeHttpServerRequest.js +14 -0
- package/dist/NodeHttpServerRequest.js.map +1 -0
- package/dist/NodeMultipart.d.ts +26 -0
- package/dist/NodeMultipart.d.ts.map +1 -0
- package/dist/NodeMultipart.js +131 -0
- package/dist/NodeMultipart.js.map +1 -0
- package/dist/NodePath.d.ts +18 -0
- package/dist/NodePath.d.ts.map +1 -0
- package/dist/NodePath.js.map +1 -0
- package/dist/NodeRedis.d.ts +31 -0
- package/dist/NodeRedis.d.ts.map +1 -0
- package/dist/NodeRedis.js +51 -0
- package/dist/NodeRedis.js.map +1 -0
- package/dist/NodeRuntime.d.ts +94 -0
- package/dist/NodeRuntime.d.ts.map +1 -0
- package/dist/NodeRuntime.js +33 -0
- package/dist/NodeRuntime.js.map +1 -0
- package/dist/NodeServices.d.ts +20 -0
- package/dist/NodeServices.d.ts.map +1 -0
- package/dist/NodeServices.js +12 -0
- package/dist/NodeServices.js.map +1 -0
- package/dist/NodeSink.d.ts.map +1 -0
- package/dist/NodeSink.js.map +1 -0
- package/dist/NodeSocket.d.ts +23 -0
- package/dist/NodeSocket.d.ts.map +1 -0
- package/dist/{esm/NodeSocket.js → NodeSocket.js} +9 -8
- package/dist/NodeSocket.js.map +1 -0
- package/dist/NodeSocketServer.d.ts.map +1 -0
- package/dist/NodeSocketServer.js.map +1 -0
- package/dist/NodeStdio.d.ts +8 -0
- package/dist/NodeStdio.d.ts.map +1 -0
- package/dist/NodeStdio.js +10 -0
- package/dist/NodeStdio.js.map +1 -0
- package/dist/{dts/NodeStream.d.ts → NodeStream.d.ts} +1 -1
- package/dist/NodeStream.d.ts.map +1 -0
- package/dist/{esm/NodeStream.js → NodeStream.js} +1 -1
- package/dist/NodeStream.js.map +1 -0
- package/dist/{dts/NodeTerminal.d.ts → NodeTerminal.d.ts} +2 -2
- package/dist/NodeTerminal.d.ts.map +1 -0
- package/dist/{esm/NodeTerminal.js → NodeTerminal.js} +1 -1
- package/dist/NodeTerminal.js.map +1 -0
- package/dist/NodeWorker.d.ts +15 -0
- package/dist/NodeWorker.d.ts.map +1 -0
- package/dist/NodeWorker.js +81 -0
- package/dist/NodeWorker.js.map +1 -0
- package/dist/NodeWorkerRunner.d.ts +8 -0
- package/dist/NodeWorkerRunner.d.ts.map +1 -0
- package/dist/NodeWorkerRunner.js +85 -0
- package/dist/NodeWorkerRunner.js.map +1 -0
- package/dist/{dts/Undici.d.ts → Undici.d.ts} +3 -3
- package/dist/Undici.d.ts.map +1 -0
- package/dist/{esm/Undici.js → Undici.js} +3 -3
- package/dist/Undici.js.map +1 -0
- package/dist/index.d.ts +102 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{esm/index.js → index.js} +25 -7
- package/dist/index.js.map +1 -0
- package/package.json +60 -213
- package/src/Mime.ts +18 -0
- package/src/NodeChildProcessSpawner.ts +6 -0
- package/src/NodeClusterHttp.ts +33 -35
- package/src/NodeClusterSocket.ts +23 -24
- package/src/NodeFileSystem.ts +3 -3
- package/src/NodeHttpClient.ts +506 -70
- package/src/NodeHttpIncomingMessage.ts +105 -0
- package/src/NodeHttpPlatform.ts +44 -10
- package/src/NodeHttpServer.ts +539 -102
- package/src/NodeHttpServerRequest.ts +8 -8
- package/src/NodeMultipart.ts +156 -1
- package/src/NodePath.ts +5 -6
- package/src/NodeRedis.ts +74 -0
- package/src/NodeRuntime.ts +95 -3
- package/src/NodeServices.ts +34 -0
- package/src/NodeSocket.ts +24 -16
- package/src/NodeStdio.ts +12 -0
- package/src/NodeStream.ts +1 -1
- package/src/NodeTerminal.ts +2 -2
- package/src/NodeWorker.ts +89 -20
- package/src/NodeWorkerRunner.ts +89 -12
- package/src/Undici.ts +7 -7
- package/src/index.ts +44 -21
- package/NodeClusterHttp/package.json +0 -6
- package/NodeClusterSocket/package.json +0 -6
- package/NodeCommandExecutor/package.json +0 -6
- package/NodeContext/package.json +0 -6
- package/NodeFileSystem/ParcelWatcher/package.json +0 -6
- package/NodeFileSystem/package.json +0 -6
- package/NodeHttpClient/package.json +0 -6
- package/NodeHttpPlatform/package.json +0 -6
- package/NodeHttpServer/package.json +0 -6
- package/NodeHttpServerRequest/package.json +0 -6
- package/NodeKeyValueStore/package.json +0 -6
- package/NodeMultipart/package.json +0 -6
- package/NodePath/package.json +0 -6
- package/NodeRuntime/package.json +0 -6
- package/NodeSink/package.json +0 -6
- package/NodeSocket/package.json +0 -6
- package/NodeSocketServer/package.json +0 -6
- package/NodeStream/package.json +0 -6
- package/NodeTerminal/package.json +0 -6
- package/NodeWorker/package.json +0 -6
- package/NodeWorkerRunner/package.json +0 -6
- package/Undici/package.json +0 -6
- package/dist/cjs/NodeClusterHttp.js +0 -61
- package/dist/cjs/NodeClusterHttp.js.map +0 -1
- package/dist/cjs/NodeClusterSocket.js +0 -77
- package/dist/cjs/NodeClusterSocket.js.map +0 -1
- package/dist/cjs/NodeCommandExecutor.js +0 -18
- package/dist/cjs/NodeCommandExecutor.js.map +0 -1
- package/dist/cjs/NodeContext.js +0 -24
- package/dist/cjs/NodeContext.js.map +0 -1
- package/dist/cjs/NodeFileSystem/ParcelWatcher.js +0 -18
- package/dist/cjs/NodeFileSystem/ParcelWatcher.js.map +0 -1
- package/dist/cjs/NodeFileSystem.js +0 -18
- package/dist/cjs/NodeFileSystem.js.map +0 -1
- package/dist/cjs/NodeHttpClient.js +0 -92
- package/dist/cjs/NodeHttpClient.js.map +0 -1
- package/dist/cjs/NodeHttpPlatform.js +0 -19
- package/dist/cjs/NodeHttpPlatform.js.map +0 -1
- package/dist/cjs/NodeHttpServer.js +0 -68
- package/dist/cjs/NodeHttpServer.js.map +0 -1
- package/dist/cjs/NodeHttpServerRequest.js +0 -19
- package/dist/cjs/NodeHttpServerRequest.js.map +0 -1
- package/dist/cjs/NodeKeyValueStore.js +0 -18
- package/dist/cjs/NodeKeyValueStore.js.map +0 -1
- package/dist/cjs/NodeMultipart.js +0 -17
- package/dist/cjs/NodeMultipart.js.map +0 -1
- package/dist/cjs/NodePath.js +0 -28
- package/dist/cjs/NodePath.js.map +0 -1
- package/dist/cjs/NodeRuntime.js +0 -18
- package/dist/cjs/NodeRuntime.js.map +0 -1
- package/dist/cjs/NodeSink.js +0 -17
- package/dist/cjs/NodeSink.js.map +0 -1
- package/dist/cjs/NodeSocket.js +0 -51
- package/dist/cjs/NodeSocket.js.map +0 -1
- package/dist/cjs/NodeSocketServer.js +0 -17
- package/dist/cjs/NodeSocketServer.js.map +0 -1
- package/dist/cjs/NodeStream.js +0 -17
- package/dist/cjs/NodeStream.js.map +0 -1
- package/dist/cjs/NodeTerminal.js +0 -23
- package/dist/cjs/NodeTerminal.js.map +0 -1
- package/dist/cjs/NodeWorker.js +0 -29
- package/dist/cjs/NodeWorker.js.map +0 -1
- package/dist/cjs/NodeWorkerRunner.js +0 -21
- package/dist/cjs/NodeWorkerRunner.js.map +0 -1
- package/dist/cjs/Undici.js +0 -26
- package/dist/cjs/Undici.js.map +0 -1
- package/dist/cjs/index.js +0 -50
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/internal/httpClient.js +0 -196
- package/dist/cjs/internal/httpClient.js.map +0 -1
- package/dist/cjs/internal/httpClientUndici.js +0 -194
- package/dist/cjs/internal/httpClientUndici.js.map +0 -1
- package/dist/cjs/internal/httpIncomingMessage.js +0 -74
- package/dist/cjs/internal/httpIncomingMessage.js.map +0 -1
- package/dist/cjs/internal/httpPlatform.js +0 -49
- package/dist/cjs/internal/httpPlatform.js.map +0 -1
- package/dist/cjs/internal/httpServer.js +0 -352
- package/dist/cjs/internal/httpServer.js.map +0 -1
- package/dist/cjs/internal/worker.js +0 -82
- package/dist/cjs/internal/worker.js.map +0 -1
- package/dist/cjs/internal/workerRunner.js +0 -83
- package/dist/cjs/internal/workerRunner.js.map +0 -1
- package/dist/dts/NodeClusterHttp.d.ts +0 -41
- package/dist/dts/NodeClusterHttp.d.ts.map +0 -1
- package/dist/dts/NodeClusterSocket.d.ts.map +0 -1
- package/dist/dts/NodeCommandExecutor.d.ts +0 -9
- package/dist/dts/NodeCommandExecutor.d.ts.map +0 -1
- package/dist/dts/NodeContext.d.ts +0 -17
- package/dist/dts/NodeContext.d.ts.map +0 -1
- package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts +0 -8
- package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts.map +0 -1
- package/dist/dts/NodeFileSystem.d.ts +0 -8
- package/dist/dts/NodeFileSystem.d.ts.map +0 -1
- package/dist/dts/NodeHttpClient.d.ts +0 -116
- package/dist/dts/NodeHttpClient.d.ts.map +0 -1
- package/dist/dts/NodeHttpPlatform.d.ts +0 -19
- package/dist/dts/NodeHttpPlatform.d.ts.map +0 -1
- package/dist/dts/NodeHttpServer.d.ts +0 -91
- package/dist/dts/NodeHttpServer.d.ts.map +0 -1
- package/dist/dts/NodeHttpServerRequest.d.ts +0 -16
- package/dist/dts/NodeHttpServerRequest.d.ts.map +0 -1
- package/dist/dts/NodeKeyValueStore.d.ts +0 -9
- package/dist/dts/NodeKeyValueStore.d.ts.map +0 -1
- package/dist/dts/NodeMultipart.d.ts +0 -8
- package/dist/dts/NodeMultipart.d.ts.map +0 -1
- package/dist/dts/NodePath.d.ts +0 -21
- package/dist/dts/NodePath.d.ts.map +0 -1
- package/dist/dts/NodeRuntime.d.ts +0 -7
- package/dist/dts/NodeRuntime.d.ts.map +0 -1
- package/dist/dts/NodeSink.d.ts.map +0 -1
- package/dist/dts/NodeSocket.d.ts +0 -22
- package/dist/dts/NodeSocket.d.ts.map +0 -1
- package/dist/dts/NodeSocketServer.d.ts.map +0 -1
- package/dist/dts/NodeStream.d.ts.map +0 -1
- package/dist/dts/NodeTerminal.d.ts.map +0 -1
- package/dist/dts/NodeWorker.d.ts +0 -28
- package/dist/dts/NodeWorker.d.ts.map +0 -1
- package/dist/dts/NodeWorkerRunner.d.ts +0 -17
- package/dist/dts/NodeWorkerRunner.d.ts.map +0 -1
- package/dist/dts/Undici.d.ts.map +0 -1
- package/dist/dts/index.d.ts +0 -85
- package/dist/dts/index.d.ts.map +0 -1
- package/dist/dts/internal/httpClient.d.ts +0 -2
- package/dist/dts/internal/httpClient.d.ts.map +0 -1
- package/dist/dts/internal/httpClientUndici.d.ts +0 -2
- package/dist/dts/internal/httpClientUndici.d.ts.map +0 -1
- package/dist/dts/internal/httpIncomingMessage.d.ts +0 -2
- package/dist/dts/internal/httpIncomingMessage.d.ts.map +0 -1
- package/dist/dts/internal/httpPlatform.d.ts +0 -2
- package/dist/dts/internal/httpPlatform.d.ts.map +0 -1
- package/dist/dts/internal/httpServer.d.ts +0 -2
- package/dist/dts/internal/httpServer.d.ts.map +0 -1
- package/dist/dts/internal/worker.d.ts +0 -2
- package/dist/dts/internal/worker.d.ts.map +0 -1
- package/dist/dts/internal/workerRunner.d.ts +0 -2
- package/dist/dts/internal/workerRunner.d.ts.map +0 -1
- package/dist/esm/NodeClusterHttp.js.map +0 -1
- package/dist/esm/NodeClusterSocket.js.map +0 -1
- package/dist/esm/NodeCommandExecutor.js +0 -10
- package/dist/esm/NodeCommandExecutor.js.map +0 -1
- package/dist/esm/NodeContext.js +0 -16
- package/dist/esm/NodeContext.js.map +0 -1
- package/dist/esm/NodeFileSystem/ParcelWatcher.js +0 -10
- package/dist/esm/NodeFileSystem/ParcelWatcher.js.map +0 -1
- package/dist/esm/NodeFileSystem.js.map +0 -1
- package/dist/esm/NodeHttpClient.js +0 -84
- package/dist/esm/NodeHttpClient.js.map +0 -1
- package/dist/esm/NodeHttpPlatform.js +0 -12
- package/dist/esm/NodeHttpPlatform.js.map +0 -1
- package/dist/esm/NodeHttpServer.js +0 -61
- package/dist/esm/NodeHttpServer.js.map +0 -1
- package/dist/esm/NodeHttpServerRequest.js +0 -12
- package/dist/esm/NodeHttpServerRequest.js.map +0 -1
- package/dist/esm/NodeKeyValueStore.js +0 -10
- package/dist/esm/NodeKeyValueStore.js.map +0 -1
- package/dist/esm/NodeMultipart.js +0 -8
- package/dist/esm/NodeMultipart.js.map +0 -1
- package/dist/esm/NodePath.js.map +0 -1
- package/dist/esm/NodeRuntime.js +0 -10
- package/dist/esm/NodeRuntime.js.map +0 -1
- package/dist/esm/NodeSink.js.map +0 -1
- package/dist/esm/NodeSocket.js.map +0 -1
- package/dist/esm/NodeSocketServer.js.map +0 -1
- package/dist/esm/NodeStream.js.map +0 -1
- package/dist/esm/NodeTerminal.js.map +0 -1
- package/dist/esm/NodeWorker.js +0 -22
- package/dist/esm/NodeWorker.js.map +0 -1
- package/dist/esm/NodeWorkerRunner.js +0 -13
- package/dist/esm/NodeWorkerRunner.js.map +0 -1
- package/dist/esm/Undici.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/internal/httpClient.js +0 -187
- package/dist/esm/internal/httpClient.js.map +0 -1
- package/dist/esm/internal/httpClientUndici.js +0 -186
- package/dist/esm/internal/httpClientUndici.js.map +0 -1
- package/dist/esm/internal/httpIncomingMessage.js +0 -66
- package/dist/esm/internal/httpIncomingMessage.js.map +0 -1
- package/dist/esm/internal/httpPlatform.js.map +0 -1
- package/dist/esm/internal/httpServer.js +0 -337
- package/dist/esm/internal/httpServer.js.map +0 -1
- package/dist/esm/internal/worker.js +0 -73
- package/dist/esm/internal/worker.js.map +0 -1
- package/dist/esm/internal/workerRunner.js +0 -76
- package/dist/esm/internal/workerRunner.js.map +0 -1
- package/dist/esm/package.json +0 -4
- package/index/package.json +0 -6
- package/src/NodeCommandExecutor.ts +0 -13
- package/src/NodeContext.ts +0 -40
- package/src/NodeFileSystem/ParcelWatcher.ts +0 -12
- package/src/NodeKeyValueStore.ts +0 -15
- package/src/internal/httpClient.ts +0 -260
- package/src/internal/httpClientUndici.ts +0 -231
- package/src/internal/httpIncomingMessage.ts +0 -92
- package/src/internal/httpPlatform.ts +0 -46
- package/src/internal/httpServer.ts +0 -517
- package/src/internal/worker.ts +0 -86
- package/src/internal/workerRunner.ts +0 -77
- /package/dist/{esm/NodeFileSystem.js → NodeFileSystem.js} +0 -0
- /package/dist/{esm/NodePath.js → NodePath.js} +0 -0
- /package/dist/{dts/NodeSink.d.ts → NodeSink.d.ts} +0 -0
- /package/dist/{esm/NodeSink.js → NodeSink.js} +0 -0
- /package/dist/{dts/NodeSocketServer.d.ts → NodeSocketServer.d.ts} +0 -0
- /package/dist/{esm/NodeSocketServer.js → NodeSocketServer.js} +0 -0
package/src/NodeWorkerRunner.ts
CHANGED
|
@@ -1,20 +1,97 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import * as
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
launch
|
|
14
|
-
} from "@effect/platform/WorkerRunner"
|
|
4
|
+
import * as Cause from "effect/Cause"
|
|
5
|
+
import * as Deferred from "effect/Deferred"
|
|
6
|
+
import * as Effect from "effect/Effect"
|
|
7
|
+
import * as Exit from "effect/Exit"
|
|
8
|
+
import * as Fiber from "effect/Fiber"
|
|
9
|
+
import * as Layer from "effect/Layer"
|
|
10
|
+
import { WorkerError, WorkerReceiveError, WorkerSpawnError } from "effect/unstable/workers/WorkerError"
|
|
11
|
+
import * as WorkerRunner from "effect/unstable/workers/WorkerRunner"
|
|
12
|
+
import * as WorkerThreads from "node:worker_threads"
|
|
15
13
|
|
|
16
14
|
/**
|
|
17
15
|
* @since 1.0.0
|
|
18
16
|
* @category layers
|
|
19
17
|
*/
|
|
20
|
-
export const layer: Layer.Layer<
|
|
18
|
+
export const layer: Layer.Layer<WorkerRunner.WorkerRunnerPlatform> = Layer.succeed(WorkerRunner.WorkerRunnerPlatform)({
|
|
19
|
+
start<O = unknown, I = unknown>() {
|
|
20
|
+
return Effect.gen(function*() {
|
|
21
|
+
if (!WorkerThreads.parentPort && !process.send) {
|
|
22
|
+
return yield* new WorkerError({
|
|
23
|
+
reason: new WorkerSpawnError({ message: "not in a worker" })
|
|
24
|
+
})
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const sendUnsafe = WorkerThreads.parentPort
|
|
28
|
+
? (_portId: number, message: any, transfers?: any) => WorkerThreads.parentPort!.postMessage(message, transfers)
|
|
29
|
+
: (_portId: number, message: any, _transfers?: any) => process.send!(message)
|
|
30
|
+
const send = (_portId: number, message: O, transfers?: ReadonlyArray<unknown>) =>
|
|
31
|
+
Effect.sync(() => sendUnsafe(_portId, [1, message], transfers as any))
|
|
32
|
+
|
|
33
|
+
const run = <A, E, R>(
|
|
34
|
+
handler: (portId: number, message: I) => Effect.Effect<A, E, R> | void
|
|
35
|
+
): Effect.Effect<void, WorkerError, R> =>
|
|
36
|
+
Effect.scopedWith(Effect.fnUntraced(function*(scope) {
|
|
37
|
+
const closeLatch = Deferred.makeUnsafe<void, WorkerError>()
|
|
38
|
+
const trackFiber = Fiber.runIn(scope)
|
|
39
|
+
const services = yield* Effect.services<R>()
|
|
40
|
+
const runFork = Effect.runForkWith(services)
|
|
41
|
+
const onExit = (exit: Exit.Exit<any, E>) => {
|
|
42
|
+
if (exit._tag === "Failure" && !Cause.hasInterruptsOnly(exit.cause)) {
|
|
43
|
+
runFork(Effect.logError("unhandled error in worker", exit.cause))
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
;(WorkerThreads.parentPort ?? process).on("message", (message: WorkerRunner.PlatformMessage<I>) => {
|
|
47
|
+
if (message[0] === 0) {
|
|
48
|
+
const result = handler(0, message[1])
|
|
49
|
+
if (Effect.isEffect(result)) {
|
|
50
|
+
const fiber = runFork(result)
|
|
51
|
+
fiber.addObserver(onExit)
|
|
52
|
+
trackFiber(fiber)
|
|
53
|
+
}
|
|
54
|
+
} else {
|
|
55
|
+
if (WorkerThreads.parentPort) {
|
|
56
|
+
WorkerThreads.parentPort.close()
|
|
57
|
+
} else {
|
|
58
|
+
process.channel?.unref()
|
|
59
|
+
}
|
|
60
|
+
Deferred.doneUnsafe(closeLatch, Exit.void)
|
|
61
|
+
}
|
|
62
|
+
})
|
|
63
|
+
|
|
64
|
+
if (WorkerThreads.parentPort) {
|
|
65
|
+
WorkerThreads.parentPort.on("messageerror", (cause) => {
|
|
66
|
+
Deferred.doneUnsafe(
|
|
67
|
+
closeLatch,
|
|
68
|
+
new WorkerError({
|
|
69
|
+
reason: new WorkerReceiveError({
|
|
70
|
+
message: "received messageerror event",
|
|
71
|
+
cause
|
|
72
|
+
})
|
|
73
|
+
}).asEffect()
|
|
74
|
+
)
|
|
75
|
+
})
|
|
76
|
+
WorkerThreads.parentPort.on("error", (cause) => {
|
|
77
|
+
Deferred.doneUnsafe(
|
|
78
|
+
closeLatch,
|
|
79
|
+
new WorkerError({
|
|
80
|
+
reason: new WorkerReceiveError({
|
|
81
|
+
message: "received messageerror event",
|
|
82
|
+
cause
|
|
83
|
+
})
|
|
84
|
+
}).asEffect()
|
|
85
|
+
)
|
|
86
|
+
})
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
sendUnsafe(0, [0])
|
|
90
|
+
|
|
91
|
+
return yield* Deferred.await(closeLatch)
|
|
92
|
+
}))
|
|
93
|
+
|
|
94
|
+
return { run, send, sendUnsafe }
|
|
95
|
+
})
|
|
96
|
+
}
|
|
97
|
+
})
|
package/src/Undici.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import Undici from "undici"
|
|
4
5
|
|
|
5
|
-
export {
|
|
6
|
-
/**
|
|
7
|
-
* @since 1.0.0
|
|
8
|
-
* @category undici
|
|
9
|
-
*/
|
|
10
|
-
default
|
|
11
|
-
} from "undici"
|
|
12
6
|
/**
|
|
13
7
|
* @since 1.0.0
|
|
14
8
|
* @category undici
|
|
15
9
|
*/
|
|
16
10
|
export * from "undici"
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @since 1.0.0
|
|
14
|
+
* @category undici
|
|
15
|
+
*/
|
|
16
|
+
export default Undici
|
package/src/index.ts
CHANGED
|
@@ -1,104 +1,127 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
// @barrel: Auto-generated exports. Do not edit manually.
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @since 1.0.0
|
|
9
|
+
*/
|
|
10
|
+
export * as Mime from "./Mime.ts"
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Node.js implementation of `ChildProcessSpawner`.
|
|
14
|
+
*
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
*/
|
|
17
|
+
export * as NodeChildProcessSpawner from "./NodeChildProcessSpawner.ts"
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @since 1.0.0
|
|
21
|
+
*/
|
|
22
|
+
export * as NodeClusterHttp from "./NodeClusterHttp.ts"
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @since 1.0.0
|
|
26
|
+
*/
|
|
27
|
+
export * as NodeClusterSocket from "./NodeClusterSocket.ts"
|
|
5
28
|
|
|
6
29
|
/**
|
|
7
30
|
* @since 1.0.0
|
|
8
31
|
*/
|
|
9
|
-
export * as
|
|
32
|
+
export * as NodeFileSystem from "./NodeFileSystem.ts"
|
|
10
33
|
|
|
11
34
|
/**
|
|
12
35
|
* @since 1.0.0
|
|
13
36
|
*/
|
|
14
|
-
export * as
|
|
37
|
+
export * as NodeHttpClient from "./NodeHttpClient.ts"
|
|
15
38
|
|
|
16
39
|
/**
|
|
17
40
|
* @since 1.0.0
|
|
18
41
|
*/
|
|
19
|
-
export * as
|
|
42
|
+
export * as NodeHttpIncomingMessage from "./NodeHttpIncomingMessage.ts"
|
|
20
43
|
|
|
21
44
|
/**
|
|
22
45
|
* @since 1.0.0
|
|
23
46
|
*/
|
|
24
|
-
export * as
|
|
47
|
+
export * as NodeHttpPlatform from "./NodeHttpPlatform.ts"
|
|
25
48
|
|
|
26
49
|
/**
|
|
27
50
|
* @since 1.0.0
|
|
28
51
|
*/
|
|
29
|
-
export * as
|
|
52
|
+
export * as NodeHttpServer from "./NodeHttpServer.ts"
|
|
30
53
|
|
|
31
54
|
/**
|
|
32
55
|
* @since 1.0.0
|
|
33
56
|
*/
|
|
34
|
-
export * as
|
|
57
|
+
export * as NodeHttpServerRequest from "./NodeHttpServerRequest.ts"
|
|
35
58
|
|
|
36
59
|
/**
|
|
37
60
|
* @since 1.0.0
|
|
38
61
|
*/
|
|
39
|
-
export * as
|
|
62
|
+
export * as NodeMultipart from "./NodeMultipart.ts"
|
|
40
63
|
|
|
41
64
|
/**
|
|
42
65
|
* @since 1.0.0
|
|
43
66
|
*/
|
|
44
|
-
export * as
|
|
67
|
+
export * as NodePath from "./NodePath.ts"
|
|
45
68
|
|
|
46
69
|
/**
|
|
47
70
|
* @since 1.0.0
|
|
48
71
|
*/
|
|
49
|
-
export * as
|
|
72
|
+
export * as NodeRedis from "./NodeRedis.ts"
|
|
50
73
|
|
|
51
74
|
/**
|
|
52
75
|
* @since 1.0.0
|
|
53
76
|
*/
|
|
54
|
-
export * as
|
|
77
|
+
export * as NodeRuntime from "./NodeRuntime.ts"
|
|
55
78
|
|
|
56
79
|
/**
|
|
57
80
|
* @since 1.0.0
|
|
58
81
|
*/
|
|
59
|
-
export * as
|
|
82
|
+
export * as NodeServices from "./NodeServices.ts"
|
|
60
83
|
|
|
61
84
|
/**
|
|
62
85
|
* @since 1.0.0
|
|
63
86
|
*/
|
|
64
|
-
export * as
|
|
87
|
+
export * as NodeSink from "./NodeSink.ts"
|
|
65
88
|
|
|
66
89
|
/**
|
|
67
90
|
* @since 1.0.0
|
|
68
91
|
*/
|
|
69
|
-
export * as
|
|
92
|
+
export * as NodeSocket from "./NodeSocket.ts"
|
|
70
93
|
|
|
71
94
|
/**
|
|
72
95
|
* @since 1.0.0
|
|
73
96
|
*/
|
|
74
|
-
export * as
|
|
97
|
+
export * as NodeSocketServer from "./NodeSocketServer.ts"
|
|
75
98
|
|
|
76
99
|
/**
|
|
77
100
|
* @since 1.0.0
|
|
78
101
|
*/
|
|
79
|
-
export * as
|
|
102
|
+
export * as NodeStdio from "./NodeStdio.ts"
|
|
80
103
|
|
|
81
104
|
/**
|
|
82
105
|
* @since 1.0.0
|
|
83
106
|
*/
|
|
84
|
-
export * as NodeStream from "./NodeStream.
|
|
107
|
+
export * as NodeStream from "./NodeStream.ts"
|
|
85
108
|
|
|
86
109
|
/**
|
|
87
110
|
* @since 1.0.0
|
|
88
111
|
*/
|
|
89
|
-
export * as NodeTerminal from "./NodeTerminal.
|
|
112
|
+
export * as NodeTerminal from "./NodeTerminal.ts"
|
|
90
113
|
|
|
91
114
|
/**
|
|
92
115
|
* @since 1.0.0
|
|
93
116
|
*/
|
|
94
|
-
export * as NodeWorker from "./NodeWorker.
|
|
117
|
+
export * as NodeWorker from "./NodeWorker.ts"
|
|
95
118
|
|
|
96
119
|
/**
|
|
97
120
|
* @since 1.0.0
|
|
98
121
|
*/
|
|
99
|
-
export * as NodeWorkerRunner from "./NodeWorkerRunner.
|
|
122
|
+
export * as NodeWorkerRunner from "./NodeWorkerRunner.ts"
|
|
100
123
|
|
|
101
124
|
/**
|
|
102
125
|
* @since 1.0.0
|
|
103
126
|
*/
|
|
104
|
-
export * as Undici from "./Undici.
|
|
127
|
+
export * as Undici from "./Undici.ts"
|
package/NodeContext/package.json
DELETED
package/NodePath/package.json
DELETED
package/NodeRuntime/package.json
DELETED
package/NodeSink/package.json
DELETED
package/NodeSocket/package.json
DELETED
package/NodeStream/package.json
DELETED
package/NodeWorker/package.json
DELETED
package/Undici/package.json
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.layerHttpServer = exports.layer = void 0;
|
|
7
|
-
Object.defineProperty(exports, "layerK8sHttpClient", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
get: function () {
|
|
10
|
-
return _NodeClusterSocket.layerK8sHttpClient;
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
var HttpRunner = _interopRequireWildcard(require("@effect/cluster/HttpRunner"));
|
|
14
|
-
var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
|
|
15
|
-
var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
|
|
16
|
-
var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
|
|
17
|
-
var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
|
|
18
|
-
var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
|
|
19
|
-
var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
|
|
20
|
-
var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
|
|
21
|
-
var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
|
|
22
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
23
|
-
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
24
|
-
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
25
|
-
var _nodeHttp = require("node:http");
|
|
26
|
-
var _NodeClusterSocket = require("./NodeClusterSocket.js");
|
|
27
|
-
var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
|
|
28
|
-
var NodeHttpServer = _interopRequireWildcard(require("./NodeHttpServer.js"));
|
|
29
|
-
var NodeSocket = _interopRequireWildcard(require("./NodeSocket.js"));
|
|
30
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
31
|
-
/**
|
|
32
|
-
* @since 1.0.0
|
|
33
|
-
*/
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* @since 1.0.0
|
|
37
|
-
* @category Layers
|
|
38
|
-
*/
|
|
39
|
-
const layer = options => {
|
|
40
|
-
const layer = options.clientOnly
|
|
41
|
-
// client only
|
|
42
|
-
? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
|
|
43
|
-
// with server
|
|
44
|
-
: options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
|
|
45
|
-
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide(_NodeClusterSocket.layerK8sHttpClient)) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(options.transport === "http" ? HttpRunner.layerClientProtocolHttpDefault.pipe(Layer.provide(NodeHttpClient.layerUndici)) : HttpRunner.layerClientProtocolWebsocketDefault.pipe(Layer.provide(NodeSocket.layerWebSocketConstructor))));
|
|
46
|
-
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* @since 1.0.0
|
|
50
|
-
* @category Layers
|
|
51
|
-
*/
|
|
52
|
-
exports.layer = layer;
|
|
53
|
-
const layerHttpServer = exports.layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
|
|
54
|
-
const config = yield* ShardingConfig.ShardingConfig;
|
|
55
|
-
const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress);
|
|
56
|
-
if (listenAddress._tag === "None") {
|
|
57
|
-
return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None");
|
|
58
|
-
}
|
|
59
|
-
return NodeHttpServer.layer(_nodeHttp.createServer, listenAddress.value);
|
|
60
|
-
}).pipe(Layer.unwrapEffect);
|
|
61
|
-
//# sourceMappingURL=NodeClusterHttp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NodeClusterHttp.js","names":["HttpRunner","_interopRequireWildcard","require","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SqlMessageStorage","SqlRunnerStorage","RpcSerialization","Effect","Layer","Option","_nodeHttp","_NodeClusterSocket","NodeHttpClient","NodeHttpServer","NodeSocket","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerK8sHttpClient","layerPing","layerRpc","layerClientProtocolHttpDefault","layerClientProtocolWebsocketDefault","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","exports","gen","config","listenAddress","orElse","runnerListenAddress","runnerAddress","_tag","die","createServer","value","unwrapEffect"],"sources":["../../src/NodeClusterHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.layer = void 0;
|
|
7
|
-
Object.defineProperty(exports, "layerClientProtocol", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
get: function () {
|
|
10
|
-
return _NodeClusterSocket.layerClientProtocol;
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
exports.layerK8sHttpClient = exports.layerDispatcherK8s = void 0;
|
|
14
|
-
Object.defineProperty(exports, "layerSocketServer", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function () {
|
|
17
|
-
return _NodeClusterSocket.layerSocketServer;
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
var K8sHttpClient = _interopRequireWildcard(require("@effect/cluster/K8sHttpClient"));
|
|
21
|
-
var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
|
|
22
|
-
var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
|
|
23
|
-
var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
|
|
24
|
-
var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
|
|
25
|
-
var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
|
|
26
|
-
var SocketRunner = _interopRequireWildcard(require("@effect/cluster/SocketRunner"));
|
|
27
|
-
var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
|
|
28
|
-
var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
|
|
29
|
-
var _NodeClusterSocket = require("@effect/platform-node-shared/NodeClusterSocket");
|
|
30
|
-
var FileSystem = _interopRequireWildcard(require("@effect/platform/FileSystem"));
|
|
31
|
-
var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
|
|
32
|
-
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
33
|
-
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
34
|
-
var NodeFileSystem = _interopRequireWildcard(require("./NodeFileSystem.js"));
|
|
35
|
-
var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
|
|
36
|
-
var Undici = _interopRequireWildcard(require("./Undici.js"));
|
|
37
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
38
|
-
/**
|
|
39
|
-
* @since 1.0.0
|
|
40
|
-
*/
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* @since 1.0.0
|
|
44
|
-
* @category Layers
|
|
45
|
-
*/
|
|
46
|
-
const layer = options => {
|
|
47
|
-
const layer = options?.clientOnly
|
|
48
|
-
// client only
|
|
49
|
-
? Layer.provide(SocketRunner.layerClientOnly, _NodeClusterSocket.layerClientProtocol)
|
|
50
|
-
// with server
|
|
51
|
-
: Layer.provide(SocketRunner.layer, [_NodeClusterSocket.layerSocketServer, _NodeClusterSocket.layerClientProtocol]);
|
|
52
|
-
const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide(layerK8sHttpClient)) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(_NodeClusterSocket.layerClientProtocol));
|
|
53
|
-
return layer.pipe(Layer.provide(runnerHealth), Layer.provideMerge(options?.storage === "local" ? MessageStorage.layerNoop : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlMessageStorage.layer)), Layer.provide(options?.storage === "local" ? RunnerStorage.layerMemory : options?.storage === "byo" ? Layer.empty : Layer.orDie(SqlRunnerStorage.layer)), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
|
|
54
|
-
};
|
|
55
|
-
/**
|
|
56
|
-
* @since 1.0.0
|
|
57
|
-
* @category Layers
|
|
58
|
-
*/
|
|
59
|
-
exports.layer = layer;
|
|
60
|
-
const layerDispatcherK8s = exports.layerDispatcherK8s = /*#__PURE__*/Layer.scoped(NodeHttpClient.Dispatcher)(Effect.gen(function* () {
|
|
61
|
-
const fs = yield* FileSystem.FileSystem;
|
|
62
|
-
const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(Effect.option);
|
|
63
|
-
if (caCertOption._tag === "Some") {
|
|
64
|
-
return yield* Effect.acquireRelease(Effect.sync(() => new Undici.Agent({
|
|
65
|
-
connect: {
|
|
66
|
-
ca: caCertOption.value
|
|
67
|
-
}
|
|
68
|
-
})), agent => Effect.promise(() => agent.destroy()));
|
|
69
|
-
}
|
|
70
|
-
return yield* NodeHttpClient.makeDispatcher;
|
|
71
|
-
})).pipe(/*#__PURE__*/Layer.provide(NodeFileSystem.layer));
|
|
72
|
-
/**
|
|
73
|
-
* @since 1.0.0
|
|
74
|
-
* @category Layers
|
|
75
|
-
*/
|
|
76
|
-
const layerK8sHttpClient = exports.layerK8sHttpClient = /*#__PURE__*/K8sHttpClient.layer.pipe(/*#__PURE__*/Layer.provide(/*#__PURE__*/Layer.fresh(NodeHttpClient.layerUndiciWithoutDispatcher)), /*#__PURE__*/Layer.provide(layerDispatcherK8s), /*#__PURE__*/Layer.provide(NodeFileSystem.layer));
|
|
77
|
-
//# sourceMappingURL=NodeClusterSocket.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NodeClusterSocket.js","names":["K8sHttpClient","_interopRequireWildcard","require","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SocketRunner","SqlMessageStorage","SqlRunnerStorage","_NodeClusterSocket","FileSystem","RpcSerialization","Effect","Layer","NodeFileSystem","NodeHttpClient","Undici","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","layer","options","clientOnly","provide","layerClientOnly","layerClientProtocol","layerSocketServer","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerK8sHttpClient","layerPing","layerRpc","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","exports","layerDispatcherK8s","scoped","Dispatcher","gen","fs","caCertOption","readFileString","option","_tag","acquireRelease","sync","Agent","connect","ca","value","agent","promise","destroy","makeDispatcher","fresh","layerUndiciWithoutDispatcher"],"sources":["../../src/NodeClusterSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|