@effect/platform-bun 4.0.0-rc.110 → 4.0.0-rc.111
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/ai-docs/package.json +2 -2
- package/dist/BunRedis.d.ts.map +1 -1
- package/dist/BunRedis.js +37 -0
- package/dist/BunRedis.js.map +1 -1
- package/package.json +4 -4
- package/src/BunRedis.ts +35 -0
package/ai-docs/package.json
CHANGED
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"@effect/sql-sqlite-wasm": "workspace:*",
|
|
28
28
|
"@effect/vitest": "workspace:*",
|
|
29
29
|
"effect": "workspace:*",
|
|
30
|
-
"hono": "^4.
|
|
31
|
-
"nodemailer": "^9.0.
|
|
30
|
+
"hono": "^4.13.2",
|
|
31
|
+
"nodemailer": "^9.0.5"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/nodemailer": "^8.0.1"
|
package/dist/BunRedis.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BunRedis.d.ts","sourceRoot":"","sources":["../src/BunRedis.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"BunRedis.d.ts","sourceRoot":"","sources":["../src/BunRedis.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,KAAK,CAAA;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,MAAM,mCAAmC,CAAA;;qBASvC,WAAW;kBACd,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;;AARjG;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,aAGO;CAAG;AAqExC;;;;;GAKG;AACH,eAAO,MAAM,KAAK,aACN,CAAC;IAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,GAAG,SAAS,KAC/D,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAuC,CAAA;AAE5E;;;;;GAKG;AACH,eAAO,MAAM,WAAW,YACb,MAAM,CAAC,IAAI,CAAC;IAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAAC,KAC7D,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,EAAE,MAAM,CAAC,WAAW,CAKtD,CAAA"}
|
package/dist/BunRedis.js
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
import { RedisClient } from "bun";
|
|
13
13
|
import * as Config from "effect/Config";
|
|
14
14
|
import * as Context from "effect/Context";
|
|
15
|
+
import * as Deferred from "effect/Deferred";
|
|
15
16
|
import * as Effect from "effect/Effect";
|
|
16
17
|
import * as Fn from "effect/Function";
|
|
17
18
|
import * as Layer from "effect/Layer";
|
|
@@ -40,6 +41,42 @@ const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
|
|
|
40
41
|
catch: cause => new Redis.RedisError({
|
|
41
42
|
cause
|
|
42
43
|
})
|
|
44
|
+
}),
|
|
45
|
+
subscribe: (channel, onMessage) => Effect.gen(function* () {
|
|
46
|
+
const terminal = yield* Deferred.make();
|
|
47
|
+
yield* Effect.acquireRelease(Effect.tryPromise({
|
|
48
|
+
try: async () => {
|
|
49
|
+
const subscriber = new RedisClient(options?.url, {
|
|
50
|
+
...options,
|
|
51
|
+
autoReconnect: false
|
|
52
|
+
});
|
|
53
|
+
subscriber.onclose = cause => {
|
|
54
|
+
Deferred.doneUnsafe(terminal, new Redis.RedisError({
|
|
55
|
+
cause
|
|
56
|
+
}));
|
|
57
|
+
};
|
|
58
|
+
try {
|
|
59
|
+
await subscriber.subscribe(channel, (message, channel) => {
|
|
60
|
+
onMessage({
|
|
61
|
+
channel,
|
|
62
|
+
message
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
return subscriber;
|
|
66
|
+
} catch (cause) {
|
|
67
|
+
subscriber.onclose = null;
|
|
68
|
+
subscriber.close();
|
|
69
|
+
throw cause;
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
catch: cause => new Redis.RedisError({
|
|
73
|
+
cause
|
|
74
|
+
})
|
|
75
|
+
}), subscriber => Effect.sync(() => {
|
|
76
|
+
subscriber.onclose = null;
|
|
77
|
+
subscriber.close();
|
|
78
|
+
}));
|
|
79
|
+
return Deferred.await(terminal);
|
|
43
80
|
})
|
|
44
81
|
});
|
|
45
82
|
const bunRedis = Fn.identity({
|
package/dist/BunRedis.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BunRedis.js","names":[],"sources":["../src/BunRedis.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;AAWA,SAAS,WAAW,QAA2B,KAAK;AACpD,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,EAAE,MAAM,iBAAiB;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,OAAO,KAAK,KAAK,MAAM,mCAAmC;AAE1D;;;;;;AAMA,OAAM,MAAO,QAAS,sBAAQ,OAAO,CAAC,OAAO,EAGzC,CAAC,+BAA+B,CAAC;AAErC,MAAM,IAAI,gBAAG,MAAM,CAAC,UAAU,CAAC,WAC7B,OAEgB;EAEhB,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK;EACjC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;EACnE,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC;EAErD,MAAM,GAAG,GAAO,CAAsC,IACpD,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC;IACpB,KAAK,EAAG,KAAK,IAAK,IAAI,KAAK,CAAC,UAAU,CAAC;MAAE;IAAK,CAAE;GACjD,CAAC;EAEJ,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE,CAAc,OAAe,EAAE,GAAG,IAA2B,KACjE,MAAM,CAAC,UAAU,CAAC;MAChB,GAAG,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAqB,CAAe;MACpE,KAAK,EAAG,KAAK,IAAK,IAAI,KAAK,CAAC,UAAU,CAAC;QAAE;MAAK,CAAE;KACjD;GACJ,CAAC;EAEF,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAsB;IAChD,MAAM;IACN;GACD,CAAC;EAEF,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,CAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAChC;AACH,CAAC,CAAC;AAEF;;;;;;AAMA,OAAO,MAAM,KAAK,GAChB,OAAgE,IACxB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAE5E;;;;;;AAMA,OAAO,MAAM,WAAW,GACtB,OAA8D,IAE9D,KAAK,CAAC,aAAa,CACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACzB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CACrB,CACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"BunRedis.js","names":[],"sources":["../src/BunRedis.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-bun",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.0.0-rc.
|
|
4
|
+
"version": "4.0.0-rc.111",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "Platform specific implementations for the Bun runtime",
|
|
7
7
|
"homepage": "https://effect.website",
|
|
@@ -49,14 +49,14 @@
|
|
|
49
49
|
"provenance": true
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
|
-
"effect": "^4.0.0-rc.
|
|
52
|
+
"effect": "^4.0.0-rc.111"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@effect/platform-node-shared": "^4.0.0-rc.
|
|
55
|
+
"@effect/platform-node-shared": "^4.0.0-rc.111"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
58
|
"@types/bun": "^1.3.14",
|
|
59
|
-
"effect": "^4.0.0-rc.
|
|
59
|
+
"effect": "^4.0.0-rc.111"
|
|
60
60
|
},
|
|
61
61
|
"scripts": {
|
|
62
62
|
"codegen": "effect-utils codegen",
|
package/src/BunRedis.ts
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
import { RedisClient, type RedisOptions } from "bun"
|
|
13
13
|
import * as Config from "effect/Config"
|
|
14
14
|
import * as Context from "effect/Context"
|
|
15
|
+
import * as Deferred from "effect/Deferred"
|
|
15
16
|
import * as Effect from "effect/Effect"
|
|
16
17
|
import * as Fn from "effect/Function"
|
|
17
18
|
import * as Layer from "effect/Layer"
|
|
@@ -49,6 +50,40 @@ const make = Effect.fnUntraced(function*(
|
|
|
49
50
|
Effect.tryPromise({
|
|
50
51
|
try: () => client.send(command, args as Array<string>) as Promise<A>,
|
|
51
52
|
catch: (cause) => new Redis.RedisError({ cause })
|
|
53
|
+
}),
|
|
54
|
+
subscribe: (channel, onMessage) =>
|
|
55
|
+
Effect.gen(function*() {
|
|
56
|
+
const terminal = yield* Deferred.make<void, Redis.RedisError>()
|
|
57
|
+
yield* Effect.acquireRelease(
|
|
58
|
+
Effect.tryPromise({
|
|
59
|
+
try: async () => {
|
|
60
|
+
const subscriber = new RedisClient(options?.url, {
|
|
61
|
+
...options,
|
|
62
|
+
autoReconnect: false
|
|
63
|
+
})
|
|
64
|
+
subscriber.onclose = (cause) => {
|
|
65
|
+
Deferred.doneUnsafe(terminal, new Redis.RedisError({ cause }))
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
await subscriber.subscribe(channel, (message, channel) => {
|
|
69
|
+
onMessage({ channel, message })
|
|
70
|
+
})
|
|
71
|
+
return subscriber
|
|
72
|
+
} catch (cause) {
|
|
73
|
+
subscriber.onclose = null
|
|
74
|
+
subscriber.close()
|
|
75
|
+
throw cause
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
catch: (cause) => new Redis.RedisError({ cause })
|
|
79
|
+
}),
|
|
80
|
+
(subscriber) =>
|
|
81
|
+
Effect.sync(() => {
|
|
82
|
+
subscriber.onclose = null
|
|
83
|
+
subscriber.close()
|
|
84
|
+
})
|
|
85
|
+
)
|
|
86
|
+
return Deferred.await(terminal)
|
|
52
87
|
})
|
|
53
88
|
})
|
|
54
89
|
|