@effect/platform-node 0.98.4 → 0.99.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/NodeClusterHttp/package.json +6 -0
  2. package/NodeClusterSocket/package.json +6 -0
  3. package/dist/cjs/{NodeClusterRunnerHttp.js → NodeClusterHttp.js} +12 -7
  4. package/dist/cjs/NodeClusterHttp.js.map +1 -0
  5. package/dist/cjs/NodeClusterSocket.js +76 -0
  6. package/dist/cjs/NodeClusterSocket.js.map +1 -0
  7. package/dist/cjs/index.js +5 -9
  8. package/dist/dts/{NodeClusterRunnerHttp.d.ts → NodeClusterHttp.d.ts} +10 -5
  9. package/dist/dts/NodeClusterHttp.d.ts.map +1 -0
  10. package/dist/dts/NodeClusterSocket.d.ts +52 -0
  11. package/dist/dts/NodeClusterSocket.d.ts.map +1 -0
  12. package/dist/dts/index.d.ts +2 -10
  13. package/dist/dts/index.d.ts.map +1 -1
  14. package/dist/esm/NodeClusterHttp.js +47 -0
  15. package/dist/esm/NodeClusterHttp.js.map +1 -0
  16. package/dist/esm/NodeClusterSocket.js +65 -0
  17. package/dist/esm/NodeClusterSocket.js.map +1 -0
  18. package/dist/esm/index.js +2 -10
  19. package/dist/esm/index.js.map +1 -1
  20. package/package.json +19 -35
  21. package/src/{NodeClusterRunnerHttp.ts → NodeClusterHttp.ts} +52 -22
  22. package/src/NodeClusterSocket.ts +150 -0
  23. package/src/index.ts +2 -12
  24. package/NodeClusterRunnerHttp/package.json +0 -6
  25. package/NodeClusterRunnerSocket/package.json +0 -6
  26. package/NodeClusterShardManagerHttp/package.json +0 -6
  27. package/NodeClusterShardManagerSocket/package.json +0 -6
  28. package/dist/cjs/NodeClusterRunnerHttp.js.map +0 -1
  29. package/dist/cjs/NodeClusterRunnerSocket.js +0 -17
  30. package/dist/cjs/NodeClusterRunnerSocket.js.map +0 -1
  31. package/dist/cjs/NodeClusterShardManagerHttp.js +0 -41
  32. package/dist/cjs/NodeClusterShardManagerHttp.js.map +0 -1
  33. package/dist/cjs/NodeClusterShardManagerSocket.js +0 -17
  34. package/dist/cjs/NodeClusterShardManagerSocket.js.map +0 -1
  35. package/dist/dts/NodeClusterRunnerHttp.d.ts.map +0 -1
  36. package/dist/dts/NodeClusterRunnerSocket.d.ts +0 -9
  37. package/dist/dts/NodeClusterRunnerSocket.d.ts.map +0 -1
  38. package/dist/dts/NodeClusterShardManagerHttp.d.ts +0 -28
  39. package/dist/dts/NodeClusterShardManagerHttp.d.ts.map +0 -1
  40. package/dist/dts/NodeClusterShardManagerSocket.d.ts +0 -9
  41. package/dist/dts/NodeClusterShardManagerSocket.d.ts.map +0 -1
  42. package/dist/esm/NodeClusterRunnerHttp.js +0 -42
  43. package/dist/esm/NodeClusterRunnerHttp.js.map +0 -1
  44. package/dist/esm/NodeClusterRunnerSocket.js +0 -9
  45. package/dist/esm/NodeClusterRunnerSocket.js.map +0 -1
  46. package/dist/esm/NodeClusterShardManagerHttp.js +0 -32
  47. package/dist/esm/NodeClusterShardManagerHttp.js.map +0 -1
  48. package/dist/esm/NodeClusterShardManagerSocket.js +0 -9
  49. package/dist/esm/NodeClusterShardManagerSocket.js.map +0 -1
  50. package/src/NodeClusterRunnerSocket.ts +0 -9
  51. package/src/NodeClusterShardManagerHttp.ts +0 -73
  52. package/src/NodeClusterShardManagerSocket.ts +0 -9
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": [],
3
+ "main": "../dist/cjs/NodeClusterHttp.js",
4
+ "module": "../dist/esm/NodeClusterHttp.js",
5
+ "types": "../dist/dts/NodeClusterHttp.d.ts"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": [],
3
+ "main": "../dist/cjs/NodeClusterSocket.js",
4
+ "module": "../dist/esm/NodeClusterSocket.js",
5
+ "types": "../dist/dts/NodeClusterSocket.d.ts"
6
+ }
@@ -6,15 +6,19 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.layerHttpServer = exports.layer = void 0;
7
7
  var HttpRunner = _interopRequireWildcard(require("@effect/cluster/HttpRunner"));
8
8
  var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
9
+ var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
10
+ var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
11
+ var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
9
12
  var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
10
- var ShardStorage = _interopRequireWildcard(require("@effect/cluster/ShardStorage"));
11
13
  var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
12
- var SqlShardStorage = _interopRequireWildcard(require("@effect/cluster/SqlShardStorage"));
14
+ var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
13
15
  var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
14
16
  var Effect = _interopRequireWildcard(require("effect/Effect"));
15
17
  var Layer = _interopRequireWildcard(require("effect/Layer"));
16
18
  var Option = _interopRequireWildcard(require("effect/Option"));
17
19
  var _nodeHttp = require("node:http");
20
+ var _NodeClusterSocket = require("./NodeClusterSocket.js");
21
+ var NodeFileSystem = _interopRequireWildcard(require("./NodeFileSystem.js"));
18
22
  var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
19
23
  var NodeHttpServer = _interopRequireWildcard(require("./NodeHttpServer.js"));
20
24
  var NodeSocket = _interopRequireWildcard(require("./NodeSocket.js"));
@@ -33,7 +37,8 @@ const layer = options => {
33
37
  ? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
34
38
  // with server
35
39
  : options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
36
- return layer.pipe(Layer.provideMerge(options?.storage === "sql" ? SqlMessageStorage.layer : MessageStorage.layerNoop), Layer.provide(options?.storage === "sql" ? options.clientOnly ? Layer.empty : SqlShardStorage.layer : ShardStorage.layerNoop), Layer.provide(ShardingConfig.layerFromEnv(options?.shardingConfig)), Layer.provide(options?.serialization === "ndjson" ? RpcSerialization.layerNdjson : RpcSerialization.layerMsgPack));
40
+ const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, _NodeClusterSocket.layerHttpClientK8s])) : 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))));
41
+ 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));
37
42
  };
38
43
  /**
39
44
  * @since 1.0.0
@@ -42,10 +47,10 @@ const layer = options => {
42
47
  exports.layer = layer;
43
48
  const layerHttpServer = exports.layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
44
49
  const config = yield* ShardingConfig.ShardingConfig;
45
- const listenAddress = config.runnerListenAddress.pipe(Option.orElse(() => config.runnerAddress));
46
- if (Option.isNone(listenAddress)) {
47
- return yield* Effect.dieMessage("NodeClusterHttpRunner.layerHttpServer: ShardingConfig.podAddress is None");
50
+ const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress);
51
+ if (listenAddress._tag === "None") {
52
+ return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None");
48
53
  }
49
54
  return NodeHttpServer.layer(_nodeHttp.createServer, listenAddress.value);
50
55
  }).pipe(Layer.unwrapEffect);
51
- //# sourceMappingURL=NodeClusterRunnerHttp.js.map
56
+ //# sourceMappingURL=NodeClusterHttp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterHttp.js","names":["HttpRunner","_interopRequireWildcard","require","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SqlMessageStorage","SqlRunnerStorage","RpcSerialization","Effect","Layer","Option","_nodeHttp","_NodeClusterSocket","NodeFileSystem","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","layerHttpClientK8s","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":[]}
@@ -0,0 +1,76 @@
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.layerHttpClientK8s = exports.layerDispatcherK8s = void 0;
14
+ Object.defineProperty(exports, "layerSocketServer", {
15
+ enumerable: true,
16
+ get: function () {
17
+ return _NodeClusterSocket.layerSocketServer;
18
+ }
19
+ });
20
+ var MessageStorage = _interopRequireWildcard(require("@effect/cluster/MessageStorage"));
21
+ var RunnerHealth = _interopRequireWildcard(require("@effect/cluster/RunnerHealth"));
22
+ var Runners = _interopRequireWildcard(require("@effect/cluster/Runners"));
23
+ var RunnerStorage = _interopRequireWildcard(require("@effect/cluster/RunnerStorage"));
24
+ var ShardingConfig = _interopRequireWildcard(require("@effect/cluster/ShardingConfig"));
25
+ var SocketRunner = _interopRequireWildcard(require("@effect/cluster/SocketRunner"));
26
+ var SqlMessageStorage = _interopRequireWildcard(require("@effect/cluster/SqlMessageStorage"));
27
+ var SqlRunnerStorage = _interopRequireWildcard(require("@effect/cluster/SqlRunnerStorage"));
28
+ var _NodeClusterSocket = require("@effect/platform-node-shared/NodeClusterSocket");
29
+ var FileSystem = _interopRequireWildcard(require("@effect/platform/FileSystem"));
30
+ var RpcSerialization = _interopRequireWildcard(require("@effect/rpc/RpcSerialization"));
31
+ var Effect = _interopRequireWildcard(require("effect/Effect"));
32
+ var Layer = _interopRequireWildcard(require("effect/Layer"));
33
+ var NodeFileSystem = _interopRequireWildcard(require("./NodeFileSystem.js"));
34
+ var NodeHttpClient = _interopRequireWildcard(require("./NodeHttpClient.js"));
35
+ var Undici = _interopRequireWildcard(require("./Undici.js"));
36
+ 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); }
37
+ /**
38
+ * @since 1.0.0
39
+ */
40
+
41
+ /**
42
+ * @since 1.0.0
43
+ * @category Layers
44
+ */
45
+ const layer = options => {
46
+ const layer = options?.clientOnly
47
+ // client only
48
+ ? Layer.provide(SocketRunner.layerClientOnly, _NodeClusterSocket.layerClientProtocol)
49
+ // with server
50
+ : Layer.provide(SocketRunner.layer, [_NodeClusterSocket.layerSocketServer, _NodeClusterSocket.layerClientProtocol]);
51
+ const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(_NodeClusterSocket.layerClientProtocol));
52
+ 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));
53
+ };
54
+ /**
55
+ * @since 1.0.0
56
+ * @category Layers
57
+ */
58
+ exports.layer = layer;
59
+ const layerDispatcherK8s = exports.layerDispatcherK8s = /*#__PURE__*/Layer.scoped(NodeHttpClient.Dispatcher)(Effect.gen(function* () {
60
+ const fs = yield* FileSystem.FileSystem;
61
+ const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(Effect.option);
62
+ if (caCertOption._tag === "Some") {
63
+ return yield* Effect.acquireRelease(Effect.sync(() => new Undici.Agent({
64
+ connect: {
65
+ ca: caCertOption.value
66
+ }
67
+ })), agent => Effect.promise(() => agent.destroy()));
68
+ }
69
+ return yield* NodeHttpClient.makeDispatcher;
70
+ })).pipe(/*#__PURE__*/Layer.provide(NodeFileSystem.layer));
71
+ /**
72
+ * @since 1.0.0
73
+ * @category Layers
74
+ */
75
+ const layerHttpClientK8s = exports.layerHttpClientK8s = /*#__PURE__*/Layer.fresh(NodeHttpClient.layerUndiciWithoutDispatcher).pipe(/*#__PURE__*/Layer.provide(layerDispatcherK8s));
76
+ //# sourceMappingURL=NodeClusterSocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterSocket.js","names":["MessageStorage","_interopRequireWildcard","require","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","layerHttpClientK8s","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":[]}
package/dist/cjs/index.js CHANGED
@@ -3,15 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Undici = exports.NodeWorkerRunner = exports.NodeWorker = exports.NodeTerminal = exports.NodeStream = exports.NodeSocketServer = exports.NodeSocket = exports.NodeSink = exports.NodeRuntime = exports.NodePath = exports.NodeMultipart = exports.NodeKeyValueStore = exports.NodeHttpServerRequest = exports.NodeHttpServer = exports.NodeHttpPlatform = exports.NodeHttpClient = exports.NodeFileSystem = exports.NodeContext = exports.NodeCommandExecutor = exports.NodeClusterShardManagerSocket = exports.NodeClusterShardManagerHttp = exports.NodeClusterRunnerSocket = exports.NodeClusterRunnerHttp = void 0;
7
- var _NodeClusterRunnerHttp = _interopRequireWildcard(require("./NodeClusterRunnerHttp.js"));
8
- exports.NodeClusterRunnerHttp = _NodeClusterRunnerHttp;
9
- var _NodeClusterRunnerSocket = _interopRequireWildcard(require("./NodeClusterRunnerSocket.js"));
10
- exports.NodeClusterRunnerSocket = _NodeClusterRunnerSocket;
11
- var _NodeClusterShardManagerHttp = _interopRequireWildcard(require("./NodeClusterShardManagerHttp.js"));
12
- exports.NodeClusterShardManagerHttp = _NodeClusterShardManagerHttp;
13
- var _NodeClusterShardManagerSocket = _interopRequireWildcard(require("./NodeClusterShardManagerSocket.js"));
14
- exports.NodeClusterShardManagerSocket = _NodeClusterShardManagerSocket;
6
+ exports.Undici = exports.NodeWorkerRunner = exports.NodeWorker = exports.NodeTerminal = exports.NodeStream = exports.NodeSocketServer = exports.NodeSocket = exports.NodeSink = exports.NodeRuntime = exports.NodePath = exports.NodeMultipart = exports.NodeKeyValueStore = exports.NodeHttpServerRequest = exports.NodeHttpServer = exports.NodeHttpPlatform = exports.NodeHttpClient = exports.NodeFileSystem = exports.NodeContext = exports.NodeCommandExecutor = exports.NodeClusterSocket = exports.NodeClusterHttp = void 0;
7
+ var _NodeClusterHttp = _interopRequireWildcard(require("./NodeClusterHttp.js"));
8
+ exports.NodeClusterHttp = _NodeClusterHttp;
9
+ var _NodeClusterSocket = _interopRequireWildcard(require("./NodeClusterSocket.js"));
10
+ exports.NodeClusterSocket = _NodeClusterSocket;
15
11
  var _NodeCommandExecutor = _interopRequireWildcard(require("./NodeCommandExecutor.js"));
16
12
  exports.NodeCommandExecutor = _NodeCommandExecutor;
17
13
  var _NodeContext = _interopRequireWildcard(require("./NodeContext.js"));
@@ -1,5 +1,6 @@
1
1
  import * as MessageStorage from "@effect/cluster/MessageStorage";
2
- import type * as Runners from "@effect/cluster/Runners";
2
+ import * as Runners from "@effect/cluster/Runners";
3
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage";
3
4
  import type { Sharding } from "@effect/cluster/Sharding";
4
5
  import * as ShardingConfig from "@effect/cluster/ShardingConfig";
5
6
  import type * as Etag from "@effect/platform/Etag";
@@ -7,7 +8,6 @@ import type { HttpPlatform } from "@effect/platform/HttpPlatform";
7
8
  import type { HttpServer } from "@effect/platform/HttpServer";
8
9
  import type { ServeError } from "@effect/platform/HttpServerError";
9
10
  import type { SqlClient } from "@effect/sql/SqlClient";
10
- import type { SqlError } from "@effect/sql/SqlError";
11
11
  import type { ConfigError } from "effect/ConfigError";
12
12
  import * as Layer from "effect/Layer";
13
13
  import type { NodeContext } from "./NodeContext.js";
@@ -15,16 +15,21 @@ import type { NodeContext } from "./NodeContext.js";
15
15
  * @since 1.0.0
16
16
  * @category Layers
17
17
  */
18
- export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "noop" | "sql" = never>(options: {
18
+ export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "local" | "sql" | "byo" = never, const Health extends "ping" | "k8s" = never>(options: {
19
19
  readonly transport: "http" | "websocket";
20
20
  readonly serialization?: "msgpack" | "ndjson" | undefined;
21
21
  readonly clientOnly?: ClientOnly | undefined;
22
22
  readonly storage?: Storage | undefined;
23
+ readonly runnerHealth?: Health | undefined;
24
+ readonly runnerHealthK8s?: {
25
+ readonly namespace?: string | undefined;
26
+ readonly labelSelector?: string | undefined;
27
+ } | undefined;
23
28
  readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined;
24
- }) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | MessageStorage.MessageStorage, ConfigError | ("sql" extends Storage ? SqlError : never), "sql" extends Storage ? SqlClient : never> : Layer.Layer<Sharding | Runners.Runners | MessageStorage.MessageStorage, ServeError | ConfigError | ("sql" extends Storage ? SqlError : never), "sql" extends Storage ? SqlClient : never>;
29
+ }) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient> : Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ServeError | ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient>;
25
30
  /**
26
31
  * @since 1.0.0
27
32
  * @category Layers
28
33
  */
29
34
  export declare const layerHttpServer: Layer.Layer<HttpPlatform | Etag.Generator | NodeContext | HttpServer, ServeError, ShardingConfig.ShardingConfig>;
30
- //# sourceMappingURL=NodeClusterRunnerHttp.d.ts.map
35
+ //# sourceMappingURL=NodeClusterHttp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterHttp.d.ts","sourceRoot":"","sources":["../../src/NodeClusterHttp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAEhE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAGhE,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAIrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAMnD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,CAAC,UAAU,SAAS,OAAO,GAAG,KAAK,EACxC,KAAK,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EACrD,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAC3C,SAAS;IACT,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC5C,GAAG,SAAS,CAAA;IACb,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACrF,KAAG,UAAU,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CACrC,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,WAAW,EACX,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CACd,GACD,KAAK,CAAC,KAAK,CACT,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,UAAU,GAAG,WAAW,EACxB,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CAiDhB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,KAAK,CACrC,YAAY,GACZ,IAAI,CAAC,SAAS,GACd,WAAW,GACX,UAAU,EACZ,UAAU,EACV,cAAc,CAAC,cAAc,CAQJ,CAAA"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as MessageStorage from "@effect/cluster/MessageStorage";
5
+ import * as Runners from "@effect/cluster/Runners";
6
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage";
7
+ import type { Sharding } from "@effect/cluster/Sharding";
8
+ import * as ShardingConfig from "@effect/cluster/ShardingConfig";
9
+ import { layerClientProtocol, layerSocketServer } from "@effect/platform-node-shared/NodeClusterSocket";
10
+ import type * as HttpClient from "@effect/platform/HttpClient";
11
+ import type * as SocketServer from "@effect/platform/SocketServer";
12
+ import type { SqlClient } from "@effect/sql/SqlClient";
13
+ import type { ConfigError } from "effect/ConfigError";
14
+ import * as Layer from "effect/Layer";
15
+ import * as NodeHttpClient from "./NodeHttpClient.js";
16
+ export {
17
+ /**
18
+ * @since 1.0.0
19
+ * @category Re-exports
20
+ */
21
+ layerClientProtocol,
22
+ /**
23
+ * @since 1.0.0
24
+ * @category Re-exports
25
+ */
26
+ layerSocketServer };
27
+ /**
28
+ * @since 1.0.0
29
+ * @category Layers
30
+ */
31
+ export declare const layer: <const ClientOnly extends boolean = false, const Storage extends "local" | "sql" | "byo" = never, const Health extends "ping" | "k8s" = never>(options?: {
32
+ readonly serialization?: "msgpack" | "ndjson" | undefined;
33
+ readonly clientOnly?: ClientOnly | undefined;
34
+ readonly storage?: Storage | undefined;
35
+ readonly runnerHealth?: Health | undefined;
36
+ readonly runnerHealthK8s?: {
37
+ readonly namespace?: string | undefined;
38
+ readonly labelSelector?: string | undefined;
39
+ } | undefined;
40
+ readonly shardingConfig?: Partial<ShardingConfig.ShardingConfig["Type"]> | undefined;
41
+ }) => ClientOnly extends true ? Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient> : Layer.Layer<Sharding | Runners.Runners | ("byo" extends Storage ? never : MessageStorage.MessageStorage), SocketServer.SocketServerError | ConfigError, "local" extends Storage ? never : "byo" extends Storage ? (MessageStorage.MessageStorage | RunnerStorage.RunnerStorage) : SqlClient>;
42
+ /**
43
+ * @since 1.0.0
44
+ * @category Layers
45
+ */
46
+ export declare const layerDispatcherK8s: Layer.Layer<NodeHttpClient.Dispatcher>;
47
+ /**
48
+ * @since 1.0.0
49
+ * @category Layers
50
+ */
51
+ export declare const layerHttpClientK8s: Layer.Layer<HttpClient.HttpClient>;
52
+ //# sourceMappingURL=NodeClusterSocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterSocket.d.ts","sourceRoot":"","sources":["../../src/NodeClusterSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAEhE,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAA;AAIhE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAA;AAEvG,OAAO,KAAK,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAGrD,OAAO;AACL;;;GAGG;AACH,mBAAmB;AACnB;;;GAGG;AACH,iBAAiB,EAClB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK,GAChB,KAAK,CAAC,UAAU,SAAS,OAAO,GAAG,KAAK,EACxC,KAAK,CAAC,OAAO,SAAS,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EACrD,KAAK,CAAC,MAAM,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAE3C,UAAU;IACR,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE;QACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC5C,GAAG,SAAS,CAAA;IACb,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACrF,KACA,UAAU,SAAS,IAAI,GAAG,KAAK,CAAC,KAAK,CACpC,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,WAAW,EACX,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CACd,GACD,KAAK,CAAC,KAAK,CACT,QAAQ,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,SAAS,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,cAAc,CAAC,EAC5F,YAAY,CAAC,iBAAiB,GAAG,WAAW,EAC5C,OAAO,SAAS,OAAO,GAAG,KAAK,GAC3B,KAAK,SAAS,OAAO,GAAG,CAAC,cAAc,CAAC,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GACrF,SAAS,CAyChB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAuBrE,CAAA;AACD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAIjE,CAAA"}
@@ -1,19 +1,11 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- export * as NodeClusterRunnerHttp from "./NodeClusterRunnerHttp.js";
4
+ export * as NodeClusterHttp from "./NodeClusterHttp.js";
5
5
  /**
6
6
  * @since 1.0.0
7
7
  */
8
- export * as NodeClusterRunnerSocket from "./NodeClusterRunnerSocket.js";
9
- /**
10
- * @since 1.0.0
11
- */
12
- export * as NodeClusterShardManagerHttp from "./NodeClusterShardManagerHttp.js";
13
- /**
14
- * @since 1.0.0
15
- */
16
- export * as NodeClusterShardManagerSocket from "./NodeClusterShardManagerSocket.js";
8
+ export * as NodeClusterSocket from "./NodeClusterSocket.js";
17
9
  /**
18
10
  * @since 1.0.0
19
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,OAAO,KAAK,uBAAuB,MAAM,8BAA8B,CAAA;AAEvE;;GAEG;AACH,OAAO,KAAK,2BAA2B,MAAM,kCAAkC,CAAA;AAE/E;;GAEG;AACH,OAAO,KAAK,6BAA6B,MAAM,oCAAoC,CAAA;AAEnF;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,eAAe,MAAM,sBAAsB,CAAA;AAEvD;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAA;AAEnE;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAEnD;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as HttpRunner from "@effect/cluster/HttpRunner";
5
+ import * as MessageStorage from "@effect/cluster/MessageStorage";
6
+ import * as RunnerHealth from "@effect/cluster/RunnerHealth";
7
+ import * as Runners from "@effect/cluster/Runners";
8
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage";
9
+ import * as ShardingConfig from "@effect/cluster/ShardingConfig";
10
+ import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage";
11
+ import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage";
12
+ import * as RpcSerialization from "@effect/rpc/RpcSerialization";
13
+ import * as Effect from "effect/Effect";
14
+ import * as Layer from "effect/Layer";
15
+ import * as Option from "effect/Option";
16
+ import { createServer } from "node:http";
17
+ import { layerHttpClientK8s } from "./NodeClusterSocket.js";
18
+ import * as NodeFileSystem from "./NodeFileSystem.js";
19
+ import * as NodeHttpClient from "./NodeHttpClient.js";
20
+ import * as NodeHttpServer from "./NodeHttpServer.js";
21
+ import * as NodeSocket from "./NodeSocket.js";
22
+ /**
23
+ * @since 1.0.0
24
+ * @category Layers
25
+ */
26
+ export const layer = options => {
27
+ const layer = options.clientOnly
28
+ // client only
29
+ ? options.transport === "http" ? Layer.provide(HttpRunner.layerHttpClientOnly, NodeHttpClient.layerUndici) : Layer.provide(HttpRunner.layerWebsocketClientOnly, NodeSocket.layerWebSocketConstructor)
30
+ // with server
31
+ : options.transport === "http" ? Layer.provide(HttpRunner.layerHttp, [layerHttpServer, NodeHttpClient.layerUndici]) : Layer.provide(HttpRunner.layerWebsocket, [layerHttpServer, NodeSocket.layerWebSocketConstructor]);
32
+ const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : 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))));
33
+ 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));
34
+ };
35
+ /**
36
+ * @since 1.0.0
37
+ * @category Layers
38
+ */
39
+ export const layerHttpServer = /*#__PURE__*/Effect.gen(function* () {
40
+ const config = yield* ShardingConfig.ShardingConfig;
41
+ const listenAddress = Option.orElse(config.runnerListenAddress, () => config.runnerAddress);
42
+ if (listenAddress._tag === "None") {
43
+ return yield* Effect.die("NodeClusterHttp.layerHttpServer: ShardingConfig.runnerAddress is None");
44
+ }
45
+ return NodeHttpServer.layer(createServer, listenAddress.value);
46
+ }).pipe(Layer.unwrapEffect);
47
+ //# sourceMappingURL=NodeClusterHttp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterHttp.js","names":["HttpRunner","MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SqlMessageStorage","SqlRunnerStorage","RpcSerialization","Effect","Layer","Option","createServer","layerHttpClientK8s","NodeFileSystem","NodeHttpClient","NodeHttpServer","NodeSocket","layer","options","clientOnly","transport","provide","layerHttpClientOnly","layerUndici","layerWebsocketClientOnly","layerWebSocketConstructor","layerHttp","layerHttpServer","layerWebsocket","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerPing","layerRpc","layerClientProtocolHttpDefault","layerClientProtocolWebsocketDefault","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","gen","config","listenAddress","orElse","runnerListenAddress","runnerAddress","_tag","die","value","unwrapEffect"],"sources":["../../src/NodeClusterHttp.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as MessageStorage from "@effect/cluster/MessageStorage";
5
+ import * as RunnerHealth from "@effect/cluster/RunnerHealth";
6
+ import * as Runners from "@effect/cluster/Runners";
7
+ import * as RunnerStorage from "@effect/cluster/RunnerStorage";
8
+ import * as ShardingConfig from "@effect/cluster/ShardingConfig";
9
+ import * as SocketRunner from "@effect/cluster/SocketRunner";
10
+ import * as SqlMessageStorage from "@effect/cluster/SqlMessageStorage";
11
+ import * as SqlRunnerStorage from "@effect/cluster/SqlRunnerStorage";
12
+ import { layerClientProtocol, layerSocketServer } from "@effect/platform-node-shared/NodeClusterSocket";
13
+ import * as FileSystem from "@effect/platform/FileSystem";
14
+ import * as RpcSerialization from "@effect/rpc/RpcSerialization";
15
+ import * as Effect from "effect/Effect";
16
+ import * as Layer from "effect/Layer";
17
+ import * as NodeFileSystem from "./NodeFileSystem.js";
18
+ import * as NodeHttpClient from "./NodeHttpClient.js";
19
+ import * as Undici from "./Undici.js";
20
+ export {
21
+ /**
22
+ * @since 1.0.0
23
+ * @category Re-exports
24
+ */
25
+ layerClientProtocol,
26
+ /**
27
+ * @since 1.0.0
28
+ * @category Re-exports
29
+ */
30
+ layerSocketServer };
31
+ /**
32
+ * @since 1.0.0
33
+ * @category Layers
34
+ */
35
+ export const layer = options => {
36
+ const layer = options?.clientOnly
37
+ // client only
38
+ ? Layer.provide(SocketRunner.layerClientOnly, layerClientProtocol)
39
+ // with server
40
+ : Layer.provide(SocketRunner.layer, [layerSocketServer, layerClientProtocol]);
41
+ const runnerHealth = options?.clientOnly ? Layer.empty : options?.runnerHealth === "k8s" ? RunnerHealth.layerK8s(options.runnerHealthK8s).pipe(Layer.provide([NodeFileSystem.layer, layerHttpClientK8s])) : RunnerHealth.layerPing.pipe(Layer.provide(Runners.layerRpc), Layer.provide(layerClientProtocol));
42
+ 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));
43
+ };
44
+ /**
45
+ * @since 1.0.0
46
+ * @category Layers
47
+ */
48
+ export const layerDispatcherK8s = /*#__PURE__*/Layer.scoped(NodeHttpClient.Dispatcher)(Effect.gen(function* () {
49
+ const fs = yield* FileSystem.FileSystem;
50
+ const caCertOption = yield* fs.readFileString("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt").pipe(Effect.option);
51
+ if (caCertOption._tag === "Some") {
52
+ return yield* Effect.acquireRelease(Effect.sync(() => new Undici.Agent({
53
+ connect: {
54
+ ca: caCertOption.value
55
+ }
56
+ })), agent => Effect.promise(() => agent.destroy()));
57
+ }
58
+ return yield* NodeHttpClient.makeDispatcher;
59
+ })).pipe(/*#__PURE__*/Layer.provide(NodeFileSystem.layer));
60
+ /**
61
+ * @since 1.0.0
62
+ * @category Layers
63
+ */
64
+ export const layerHttpClientK8s = /*#__PURE__*/Layer.fresh(NodeHttpClient.layerUndiciWithoutDispatcher).pipe(/*#__PURE__*/Layer.provide(layerDispatcherK8s));
65
+ //# sourceMappingURL=NodeClusterSocket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeClusterSocket.js","names":["MessageStorage","RunnerHealth","Runners","RunnerStorage","ShardingConfig","SocketRunner","SqlMessageStorage","SqlRunnerStorage","layerClientProtocol","layerSocketServer","FileSystem","RpcSerialization","Effect","Layer","NodeFileSystem","NodeHttpClient","Undici","layer","options","clientOnly","provide","layerClientOnly","runnerHealth","empty","layerK8s","runnerHealthK8s","pipe","layerHttpClientK8s","layerPing","layerRpc","provideMerge","storage","layerNoop","orDie","layerMemory","layerFromEnv","shardingConfig","serialization","layerNdjson","layerMsgPack","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":[]}
package/dist/esm/index.js CHANGED
@@ -1,19 +1,11 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- export * as NodeClusterRunnerHttp from "./NodeClusterRunnerHttp.js";
4
+ export * as NodeClusterHttp from "./NodeClusterHttp.js";
5
5
  /**
6
6
  * @since 1.0.0
7
7
  */
8
- export * as NodeClusterRunnerSocket from "./NodeClusterRunnerSocket.js";
9
- /**
10
- * @since 1.0.0
11
- */
12
- export * as NodeClusterShardManagerHttp from "./NodeClusterShardManagerHttp.js";
13
- /**
14
- * @since 1.0.0
15
- */
16
- export * as NodeClusterShardManagerSocket from "./NodeClusterShardManagerSocket.js";
8
+ export * as NodeClusterSocket from "./NodeClusterSocket.js";
17
9
  /**
18
10
  * @since 1.0.0
19
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["NodeClusterRunnerHttp","NodeClusterRunnerSocket","NodeClusterShardManagerHttp","NodeClusterShardManagerSocket","NodeCommandExecutor","NodeContext","NodeFileSystem","NodeHttpClient","NodeHttpPlatform","NodeHttpServer","NodeHttpServerRequest","NodeKeyValueStore","NodeMultipart","NodePath","NodeRuntime","NodeSink","NodeSocket","NodeSocketServer","NodeStream","NodeTerminal","NodeWorker","NodeWorkerRunner","Undici"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,qBAAqB,MAAM,4BAA4B;AAEnE;;;AAGA,OAAO,KAAKC,uBAAuB,MAAM,8BAA8B;AAEvE;;;AAGA,OAAO,KAAKC,2BAA2B,MAAM,kCAAkC;AAE/E;;;AAGA,OAAO,KAAKC,6BAA6B,MAAM,oCAAoC;AAEnF;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,qBAAqB,MAAM,4BAA4B;AAEnE;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["NodeClusterHttp","NodeClusterSocket","NodeCommandExecutor","NodeContext","NodeFileSystem","NodeHttpClient","NodeHttpPlatform","NodeHttpServer","NodeHttpServerRequest","NodeKeyValueStore","NodeMultipart","NodePath","NodeRuntime","NodeSink","NodeSocket","NodeSocketServer","NodeStream","NodeTerminal","NodeWorker","NodeWorkerRunner","Undici"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,eAAe,MAAM,sBAAsB;AAEvD;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,qBAAqB,MAAM,4BAA4B;AAEnE;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB;AAEjD;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,MAAM,MAAM,aAAa","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform-node",
3
- "version": "0.98.4",
3
+ "version": "0.99.0",
4
4
  "description": "Platform specific implementations for the Node.js runtime",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -14,14 +14,14 @@
14
14
  "mime": "^3.0.0",
15
15
  "undici": "^7.10.0",
16
16
  "ws": "^8.18.2",
17
- "@effect/platform-node-shared": "^0.51.6"
17
+ "@effect/platform-node-shared": "^0.52.0"
18
18
  },
19
19
  "peerDependencies": {
20
- "@effect/cluster": "^0.50.6",
21
- "@effect/platform": "^0.92.1",
22
- "@effect/rpc": "^0.71.1",
23
- "@effect/sql": "^0.46.0",
24
- "effect": "^3.18.4"
20
+ "@effect/cluster": "^0.51.0",
21
+ "@effect/platform": "^0.93.0",
22
+ "@effect/rpc": "^0.72.0",
23
+ "@effect/sql": "^0.47.0",
24
+ "effect": "^3.19.0"
25
25
  },
26
26
  "publishConfig": {
27
27
  "provenance": true
@@ -36,25 +36,15 @@
36
36
  "import": "./dist/esm/index.js",
37
37
  "default": "./dist/cjs/index.js"
38
38
  },
39
- "./NodeClusterRunnerHttp": {
40
- "types": "./dist/dts/NodeClusterRunnerHttp.d.ts",
41
- "import": "./dist/esm/NodeClusterRunnerHttp.js",
42
- "default": "./dist/cjs/NodeClusterRunnerHttp.js"
39
+ "./NodeClusterHttp": {
40
+ "types": "./dist/dts/NodeClusterHttp.d.ts",
41
+ "import": "./dist/esm/NodeClusterHttp.js",
42
+ "default": "./dist/cjs/NodeClusterHttp.js"
43
43
  },
44
- "./NodeClusterRunnerSocket": {
45
- "types": "./dist/dts/NodeClusterRunnerSocket.d.ts",
46
- "import": "./dist/esm/NodeClusterRunnerSocket.js",
47
- "default": "./dist/cjs/NodeClusterRunnerSocket.js"
48
- },
49
- "./NodeClusterShardManagerHttp": {
50
- "types": "./dist/dts/NodeClusterShardManagerHttp.d.ts",
51
- "import": "./dist/esm/NodeClusterShardManagerHttp.js",
52
- "default": "./dist/cjs/NodeClusterShardManagerHttp.js"
53
- },
54
- "./NodeClusterShardManagerSocket": {
55
- "types": "./dist/dts/NodeClusterShardManagerSocket.d.ts",
56
- "import": "./dist/esm/NodeClusterShardManagerSocket.js",
57
- "default": "./dist/cjs/NodeClusterShardManagerSocket.js"
44
+ "./NodeClusterSocket": {
45
+ "types": "./dist/dts/NodeClusterSocket.d.ts",
46
+ "import": "./dist/esm/NodeClusterSocket.js",
47
+ "default": "./dist/cjs/NodeClusterSocket.js"
58
48
  },
59
49
  "./NodeCommandExecutor": {
60
50
  "types": "./dist/dts/NodeCommandExecutor.d.ts",
@@ -164,17 +154,11 @@
164
154
  },
165
155
  "typesVersions": {
166
156
  "*": {
167
- "NodeClusterRunnerHttp": [
168
- "./dist/dts/NodeClusterRunnerHttp.d.ts"
169
- ],
170
- "NodeClusterRunnerSocket": [
171
- "./dist/dts/NodeClusterRunnerSocket.d.ts"
172
- ],
173
- "NodeClusterShardManagerHttp": [
174
- "./dist/dts/NodeClusterShardManagerHttp.d.ts"
157
+ "NodeClusterHttp": [
158
+ "./dist/dts/NodeClusterHttp.d.ts"
175
159
  ],
176
- "NodeClusterShardManagerSocket": [
177
- "./dist/dts/NodeClusterShardManagerSocket.d.ts"
160
+ "NodeClusterSocket": [
161
+ "./dist/dts/NodeClusterSocket.d.ts"
178
162
  ],
179
163
  "NodeCommandExecutor": [
180
164
  "./dist/dts/NodeCommandExecutor.d.ts"