@effect/platform-node-shared 0.49.2 → 0.50.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/NodeSocket.js +19 -22
- package/dist/cjs/NodeSocket.js.map +1 -1
- package/dist/dts/NodeSocket.d.ts.map +1 -1
- package/dist/esm/NodeSocket.js +19 -22
- package/dist/esm/NodeSocket.js.map +1 -1
- package/package.json +6 -6
- package/src/NodeSocket.ts +27 -26
package/dist/cjs/NodeSocket.js
CHANGED
|
@@ -27,33 +27,30 @@ const NetSocket = exports.NetSocket = /*#__PURE__*/Context.GenericTag("@effect/p
|
|
|
27
27
|
* @since 1.0.0
|
|
28
28
|
* @category constructors
|
|
29
29
|
*/
|
|
30
|
-
const makeNet = options => fromDuplex(Effect.
|
|
30
|
+
const makeNet = options => fromDuplex(Effect.scopeWith(scope => {
|
|
31
31
|
const conn = Net.createConnection(options);
|
|
32
|
-
|
|
33
|
-
conn.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
return Effect.flatMap(Scope.addFinalizer(scope, Effect.sync(() => {
|
|
33
|
+
if (conn.closed === false) {
|
|
34
|
+
if ("destroySoon" in conn) {
|
|
35
|
+
conn.destroySoon();
|
|
36
|
+
} else {
|
|
37
|
+
;
|
|
38
|
+
conn.destroy();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
37
41
|
conn.removeAllListeners();
|
|
38
|
-
|
|
42
|
+
})), () => Effect.async(resume => {
|
|
43
|
+
const onError = cause => resume(Effect.fail(new Socket.SocketGenericError({
|
|
39
44
|
reason: "Open",
|
|
40
45
|
cause
|
|
41
46
|
})));
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
conn.destroySoon();
|
|
50
|
-
} else {
|
|
51
|
-
;
|
|
52
|
-
conn.destroy();
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
conn.removeAllListeners();
|
|
56
|
-
})));
|
|
47
|
+
conn.once("connect", () => {
|
|
48
|
+
conn.off("error", onError);
|
|
49
|
+
resume(Effect.succeed(conn));
|
|
50
|
+
});
|
|
51
|
+
conn.on("error", onError);
|
|
52
|
+
}));
|
|
53
|
+
}));
|
|
57
54
|
/**
|
|
58
55
|
* @since 1.0.0
|
|
59
56
|
* @category constructors
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSocket.js","names":["Socket","_interopRequireWildcard","require","Channel","Context","Deferred","Effect","FiberSet","Layer","Scope","Net","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NetSocket","exports","GenericTag","makeNet","options","fromDuplex","
|
|
1
|
+
{"version":3,"file":"NodeSocket.js","names":["Socket","_interopRequireWildcard","require","Channel","Context","Deferred","Effect","FiberSet","Layer","Scope","Net","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","NetSocket","exports","GenericTag","makeNet","options","fromDuplex","scopeWith","scope","conn","createConnection","flatMap","addFinalizer","sync","closed","destroySoon","destroy","removeAllListeners","async","resume","onError","cause","fail","SocketGenericError","reason","once","off","succeed","on","open","withFiberRuntime","fiber","currentSocket","latch","unsafeMakeLatch","openContext","currentContext","run","handler","opts","scopedWith","fnUntraced","fiberSet","make","pipe","extend","provideService","runtime","onData","chunk","result","isEffect","onEnd","unsafeDone","deferred","void","onClose","hadError","SocketCloseError","code","onOpen","join","mapInputContext","input","merge","ensuring","unsafeClose","undefined","interruptible","write","whenOpen","isCloseEvent","Error","writer","acquireRelease","writableEnded","end","of","TypeId","runRaw","makeNetChannel","unwrapScoped","map","toChannelWith","layerNet","effect"],"sources":["../../src/NodeSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSocket.d.ts","sourceRoot":"","sources":["../../src/NodeSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAExD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,GAClB,SAAS,GAAG,CAAC,cAAc,KAC1B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"NodeSocket.d.ts","sourceRoot":"","sources":["../../src/NodeSocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAExD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,GAClB,SAAS,GAAG,CAAC,cAAc,KAC1B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CA8B/C,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,EAAE,EAC3B,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,KAClD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAoG3D,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,GAAG,KAAK,EACvC,SAAS,GAAG,CAAC,cAAc,KAC1B,OAAO,CAAC,OAAO,CAChB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EACvB,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,EACpD,MAAM,CAAC,WAAW,GAAG,EAAE,EACvB,EAAE,EACF,IAAI,EACJ,OAAO,CAIN,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,SAAS,GAAG,CAAC,cAAc,KAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CACrD,CAAA"}
|
package/dist/esm/NodeSocket.js
CHANGED
|
@@ -19,33 +19,30 @@ export const NetSocket = /*#__PURE__*/Context.GenericTag("@effect/platform-node/
|
|
|
19
19
|
* @since 1.0.0
|
|
20
20
|
* @category constructors
|
|
21
21
|
*/
|
|
22
|
-
export const makeNet = options => fromDuplex(Effect.
|
|
22
|
+
export const makeNet = options => fromDuplex(Effect.scopeWith(scope => {
|
|
23
23
|
const conn = Net.createConnection(options);
|
|
24
|
-
|
|
25
|
-
conn.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
return Effect.flatMap(Scope.addFinalizer(scope, Effect.sync(() => {
|
|
25
|
+
if (conn.closed === false) {
|
|
26
|
+
if ("destroySoon" in conn) {
|
|
27
|
+
conn.destroySoon();
|
|
28
|
+
} else {
|
|
29
|
+
;
|
|
30
|
+
conn.destroy();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
29
33
|
conn.removeAllListeners();
|
|
30
|
-
|
|
34
|
+
})), () => Effect.async(resume => {
|
|
35
|
+
const onError = cause => resume(Effect.fail(new Socket.SocketGenericError({
|
|
31
36
|
reason: "Open",
|
|
32
37
|
cause
|
|
33
38
|
})));
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
conn.destroySoon();
|
|
42
|
-
} else {
|
|
43
|
-
;
|
|
44
|
-
conn.destroy();
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
conn.removeAllListeners();
|
|
48
|
-
})));
|
|
39
|
+
conn.once("connect", () => {
|
|
40
|
+
conn.off("error", onError);
|
|
41
|
+
resume(Effect.succeed(conn));
|
|
42
|
+
});
|
|
43
|
+
conn.on("error", onError);
|
|
44
|
+
}));
|
|
45
|
+
}));
|
|
49
46
|
/**
|
|
50
47
|
* @since 1.0.0
|
|
51
48
|
* @category constructors
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeSocket.js","names":["Socket","Channel","Context","Deferred","Effect","FiberSet","Layer","Scope","Net","NetSocket","GenericTag","makeNet","options","fromDuplex","
|
|
1
|
+
{"version":3,"file":"NodeSocket.js","names":["Socket","Channel","Context","Deferred","Effect","FiberSet","Layer","Scope","Net","NetSocket","GenericTag","makeNet","options","fromDuplex","scopeWith","scope","conn","createConnection","flatMap","addFinalizer","sync","closed","destroySoon","destroy","removeAllListeners","async","resume","onError","cause","fail","SocketGenericError","reason","once","off","succeed","on","open","withFiberRuntime","fiber","currentSocket","latch","unsafeMakeLatch","openContext","currentContext","run","handler","opts","scopedWith","fnUntraced","fiberSet","make","pipe","extend","provideService","runtime","onData","chunk","result","isEffect","onEnd","unsafeDone","deferred","void","onClose","hadError","SocketCloseError","code","onOpen","join","mapInputContext","input","merge","ensuring","unsafeClose","undefined","interruptible","write","whenOpen","isCloseEvent","Error","writer","acquireRelease","writableEnded","end","of","TypeId","runRaw","makeNetChannel","unwrapScoped","map","toChannelWith","layerNet","effect"],"sources":["../../src/NodeSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-node-shared",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.50.1",
|
|
4
4
|
"description": "Unified interfaces for common platform-specific services",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -16,11 +16,11 @@
|
|
|
16
16
|
"ws": "^8.18.2"
|
|
17
17
|
},
|
|
18
18
|
"peerDependencies": {
|
|
19
|
-
"@effect/cluster": "^0.
|
|
20
|
-
"@effect/platform": "^0.
|
|
21
|
-
"@effect/rpc": "^0.
|
|
22
|
-
"effect": "^
|
|
23
|
-
"
|
|
19
|
+
"@effect/cluster": "^0.49.1",
|
|
20
|
+
"@effect/platform": "^0.91.1",
|
|
21
|
+
"@effect/rpc": "^0.70.0",
|
|
22
|
+
"@effect/sql": "^0.45.0",
|
|
23
|
+
"effect": "^3.17.14"
|
|
24
24
|
},
|
|
25
25
|
"publishConfig": {
|
|
26
26
|
"provenance": true
|
package/src/NodeSocket.ts
CHANGED
|
@@ -37,33 +37,34 @@ export const makeNet = (
|
|
|
37
37
|
options: Net.NetConnectOpts
|
|
38
38
|
): Effect.Effect<Socket.Socket, Socket.SocketError> =>
|
|
39
39
|
fromDuplex(
|
|
40
|
-
Effect.
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
conn.destroy()
|
|
53
|
-
})
|
|
54
|
-
}),
|
|
55
|
-
(conn) =>
|
|
56
|
-
Effect.sync(() => {
|
|
57
|
-
if (conn.closed === false) {
|
|
58
|
-
if ("destroySoon" in conn) {
|
|
59
|
-
conn.destroySoon()
|
|
60
|
-
} else {
|
|
61
|
-
;(conn as Net.Socket).destroy()
|
|
40
|
+
Effect.scopeWith((scope) => {
|
|
41
|
+
const conn = Net.createConnection(options)
|
|
42
|
+
return Effect.flatMap(
|
|
43
|
+
Scope.addFinalizer(
|
|
44
|
+
scope,
|
|
45
|
+
Effect.sync(() => {
|
|
46
|
+
if (conn.closed === false) {
|
|
47
|
+
if ("destroySoon" in conn) {
|
|
48
|
+
conn.destroySoon()
|
|
49
|
+
} else {
|
|
50
|
+
;(conn as Net.Socket).destroy()
|
|
51
|
+
}
|
|
62
52
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
53
|
+
conn.removeAllListeners()
|
|
54
|
+
})
|
|
55
|
+
),
|
|
56
|
+
() =>
|
|
57
|
+
Effect.async<Net.Socket, Socket.SocketError, never>((resume) => {
|
|
58
|
+
const onError = (cause: Error) =>
|
|
59
|
+
resume(Effect.fail(new Socket.SocketGenericError({ reason: "Open", cause })))
|
|
60
|
+
conn.once("connect", () => {
|
|
61
|
+
conn.off("error", onError)
|
|
62
|
+
resume(Effect.succeed(conn))
|
|
63
|
+
})
|
|
64
|
+
conn.on("error", onError)
|
|
65
|
+
})
|
|
66
|
+
)
|
|
67
|
+
})
|
|
67
68
|
)
|
|
68
69
|
|
|
69
70
|
/**
|