@effect/platform 0.57.0 → 0.57.2

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/README.md CHANGED
@@ -522,9 +522,9 @@ import * as Http from "@effect/platform/HttpClient"
522
522
  import { Schema } from "@effect/schema"
523
523
  import { Console, Effect } from "effect"
524
524
 
525
- const Post = Schema.struct({
526
- id: Schema.number,
527
- title: Schema.string
525
+ const Post = Schema.Struct({
526
+ id: Schema.Number,
527
+ title: Schema.String
528
528
  })
529
529
 
530
530
  /*
@@ -688,9 +688,9 @@ import * as Http from "@effect/platform/HttpClient"
688
688
  import { Schema } from "@effect/schema"
689
689
  import { Console, Effect } from "effect"
690
690
 
691
- const Post = Schema.struct({
692
- id: Schema.number,
693
- title: Schema.string
691
+ const Post = Schema.Struct({
692
+ id: Schema.Number,
693
+ title: Schema.String
694
694
  })
695
695
 
696
696
  const addPost = Http.request
@@ -146,32 +146,39 @@ class SocketCloseError extends (0, _Error.TypeIdError)(SocketErrorTypeId, "Socke
146
146
  * @category combinators
147
147
  */
148
148
  exports.SocketCloseError = SocketCloseError;
149
- const toChannel = self => Channel.unwrapScoped(Effect.gen(function* (_) {
150
- const parentScope = yield* Effect.scope;
151
- const writeScope = yield* _(Scope.fork(parentScope, ExecutionStrategy.sequential));
152
- const write = yield* _(Scope.extend(self.writer, writeScope));
153
- const exitQueue = yield* _(Queue.unbounded());
154
- const input = {
155
- awaitRead: () => Effect.void,
156
- emit(chunk) {
157
- return Effect.catchAllCause(Effect.forEach(chunk, write, {
158
- discard: true
159
- }), cause => Queue.offer(exitQueue, Exit.failCause(cause)));
160
- },
161
- error(error) {
162
- return Effect.zipRight(Scope.close(writeScope, Exit.void), Queue.offer(exitQueue, Exit.failCause(error)));
163
- },
164
- done() {
165
- return Scope.close(writeScope, Exit.void);
166
- }
167
- };
168
- yield* _(self.run(data => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))), Effect.zipRight(Effect.failCause(Cause.empty)), Effect.exit, Effect.tap(exit => Queue.offer(exitQueue, exit)), Effect.fork, Effect.interruptible);
149
+ const toChannel = self => Effect.scope.pipe(Effect.bindTo("scope"), Effect.bind("writeScope", ({
150
+ scope
151
+ }) => Scope.fork(scope, ExecutionStrategy.sequential)), Effect.bind("write", ({
152
+ writeScope
153
+ }) => Scope.extend(self.writer, writeScope)), Effect.bind("exitQueue", _ => Queue.unbounded()), Effect.let("input", ({
154
+ exitQueue,
155
+ write,
156
+ writeScope
157
+ }) => ({
158
+ awaitRead: () => Effect.void,
159
+ emit(chunk) {
160
+ return Effect.catchAllCause(Effect.forEach(chunk, write, {
161
+ discard: true
162
+ }), cause => Queue.offer(exitQueue, Exit.failCause(cause)));
163
+ },
164
+ error(error) {
165
+ return Effect.zipRight(Scope.close(writeScope, Exit.void), Queue.offer(exitQueue, Exit.failCause(error)));
166
+ },
167
+ done() {
168
+ return Scope.close(writeScope, Exit.void);
169
+ }
170
+ })), Effect.tap(({
171
+ exitQueue
172
+ }) => self.run(data => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))).pipe(Effect.zipRight(Effect.failCause(Cause.empty)), Effect.exit, Effect.tap(exit => Queue.offer(exitQueue, exit)), Effect.fork, Effect.interruptible)), Effect.map(({
173
+ exitQueue,
174
+ input
175
+ }) => {
169
176
  const loop = Channel.flatMap(Queue.take(exitQueue), Exit.match({
170
177
  onFailure: cause => Cause.isEmptyType(cause) ? Channel.void : Channel.failCause(cause),
171
178
  onSuccess: chunk => Channel.zipRight(Channel.write(chunk), loop)
172
179
  }));
173
180
  return Channel.embedInput(loop, input);
174
- }));
181
+ }), Channel.unwrapScoped);
175
182
  /**
176
183
  * @since 1.0.0
177
184
  * @category combinators
@@ -216,15 +223,19 @@ const makeWebSocket = (url, options) => fromWebSocket(Effect.acquireRelease((typ
216
223
  * @category constructors
217
224
  */
218
225
  exports.makeWebSocket = makeWebSocket;
219
- const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
226
+ const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Effect.map(Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity)), sendQueue => {
227
+ const acquireContext = fiber.getFiberRef(FiberRef.currentContext);
220
228
  const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
221
- const sendQueue = yield* _(Queue.dropping(yield* FiberRef.get(currentSendQueueCapacity)));
222
- const acquireContext = yield* Effect.context();
223
- const runRaw = handler => Effect.gen(function* (_) {
224
- const scope = yield* Effect.scope;
225
- const ws = yield* acquire.pipe(Effect.provide(Context.add(acquireContext, Scope.Scope, scope)));
226
- const fiberSet = yield* _(FiberSet.make());
227
- const run = yield* _(FiberSet.runtime(fiberSet)(), Effect.provideService(WebSocket, ws));
229
+ const runRaw = handler => Effect.scope.pipe(Effect.bindTo("scope"), Effect.bind("ws", ({
230
+ scope
231
+ }) => acquire.pipe(Effect.provide(Context.add(acquireContext, Scope.Scope, scope)))), Effect.bind("fiberSet", _ => FiberSet.make()), Effect.bind("run", ({
232
+ fiberSet,
233
+ ws
234
+ }) => Effect.provideService(FiberSet.runtime(fiberSet)(), WebSocket, ws)), Effect.tap(({
235
+ fiberSet,
236
+ run,
237
+ ws
238
+ }) => {
228
239
  let open = false;
229
240
  ws.onmessage = event => {
230
241
  run(handler(typeof event.data === "string" ? event.data : event.data instanceof Uint8Array ? event.data : new Uint8Array(event.data)));
@@ -243,7 +254,7 @@ const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
243
254
  })));
244
255
  };
245
256
  if (ws.readyState !== 1) {
246
- yield* Effect.async(resume => {
257
+ return Effect.async(resume => {
247
258
  function onOpen() {
248
259
  ws.removeEventListener("open", onOpen);
249
260
  resume(Effect.void);
@@ -252,7 +263,9 @@ const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
252
263
  return Effect.sync(() => {
253
264
  ws.removeEventListener("open", onOpen);
254
265
  });
255
- }).pipe(Effect.timeoutFail({
266
+ }).pipe(Effect.tap(_ => {
267
+ open = true;
268
+ }), Effect.timeoutFail({
256
269
  duration: options?.openTimeout ?? 10000,
257
270
  onTimeout: () => new SocketGenericError({
258
271
  reason: "OpenTimeout",
@@ -261,22 +274,26 @@ const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
261
274
  }), Effect.raceFirst(FiberSet.join(fiberSet)));
262
275
  }
263
276
  open = true;
264
- yield* _(Queue.take(sendQueue), Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
265
- ws.close(chunk.code, chunk.reason);
266
- return new SocketCloseError({
267
- reason: "Close",
268
- code: chunk.code,
269
- closeReason: chunk.reason
270
- });
271
- }) : Effect.try({
272
- try: () => ws.send(chunk),
273
- catch: error => new SocketGenericError({
274
- reason: "Write",
275
- error
276
- })
277
- })), Effect.forever, FiberSet.run(fiberSet));
278
- yield* _(FiberSet.join(fiberSet), Effect.catchIf(SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void));
279
- }).pipe(Effect.scoped, Effect.interruptible);
277
+ return Effect.void;
278
+ }), Effect.tap(({
279
+ fiberSet,
280
+ ws
281
+ }) => Queue.take(sendQueue).pipe(Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
282
+ ws.close(chunk.code, chunk.reason);
283
+ return new SocketCloseError({
284
+ reason: "Close",
285
+ code: chunk.code,
286
+ closeReason: chunk.reason
287
+ });
288
+ }) : Effect.try({
289
+ try: () => ws.send(chunk),
290
+ catch: error => new SocketGenericError({
291
+ reason: "Write",
292
+ error
293
+ })
294
+ })), Effect.forever, FiberSet.run(fiberSet))), Effect.tap(({
295
+ fiberSet
296
+ }) => Effect.catchIf(FiberSet.join(fiberSet), SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void)), Effect.scoped, Effect.interruptible);
280
297
  const encoder = new TextEncoder();
281
298
  const run = handler => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data));
282
299
  const write = chunk => Queue.offer(sendQueue, chunk);
@@ -287,7 +304,7 @@ const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
287
304
  runRaw,
288
305
  writer
289
306
  });
290
- });
307
+ }));
291
308
  /**
292
309
  * @since 1.0.0
293
310
  * @category constructors
@@ -1 +1 @@
1
- {"version":3,"file":"Socket.js","names":["Cause","_interopRequireWildcard","require","Channel","Chunk","Context","Deferred","Effect","ExecutionStrategy","Exit","FiberRef","FiberSet","_GlobalValue","Layer","Predicate","Queue","Scope","_Error","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","Socket","GenericTag","CloseEventTypeId","CloseEvent","code","reason","constructor","toString","isCloseEvent","hasProperty","SocketErrorTypeId","isSocketError","SocketGenericError","RefailError","message","SocketCloseError","TypeIdError","is","isClean","closeReason","toChannel","self","unwrapScoped","gen","_","parentScope","scope","writeScope","fork","sequential","write","extend","writer","exitQueue","unbounded","input","awaitRead","void","emit","chunk","catchAllCause","forEach","discard","cause","offer","failCause","error","zipRight","close","done","run","data","succeed","of","empty","exit","tap","interruptible","loop","flatMap","take","match","onFailure","isEmptyType","onSuccess","embedInput","toChannelWith","makeChannel","unwrap","map","defaultCloseCodeIsError","WebSocket","WebSocketConstructor","makeWebSocket","url","options","fromWebSocket","acquireRelease","pipe","f","ws","sync","onclose","onerror","onmessage","onopen","acquire","closeCodeIsError","sendQueue","dropping","currentSendQueueCapacity","acquireContext","context","runRaw","handler","provide","add","fiberSet","make","runtime","provideService","open","event","Uint8Array","unsafeDone","deferred","fail","readyState","async","resume","onOpen","removeEventListener","addEventListener","timeoutFail","duration","openTimeout","onTimeout","raceFirst","join","failSync","try","send","catch","forever","catchIf","scoped","encoder","TextEncoder","encode","makeWebSocketChannel","layerWebSocket","effect","globalValue","unsafeMake"],"sources":["../../src/Socket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Socket.js","names":["Cause","_interopRequireWildcard","require","Channel","Chunk","Context","Deferred","Effect","ExecutionStrategy","Exit","FiberRef","FiberSet","_GlobalValue","Layer","Predicate","Queue","Scope","_Error","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","Socket","GenericTag","CloseEventTypeId","CloseEvent","code","reason","constructor","toString","isCloseEvent","hasProperty","SocketErrorTypeId","isSocketError","SocketGenericError","RefailError","message","SocketCloseError","TypeIdError","is","isClean","closeReason","toChannel","self","scope","pipe","bindTo","bind","fork","sequential","writeScope","extend","writer","_","unbounded","let","exitQueue","write","awaitRead","void","emit","chunk","catchAllCause","forEach","discard","cause","offer","failCause","error","zipRight","close","done","tap","run","data","succeed","of","empty","exit","interruptible","map","input","loop","flatMap","take","match","onFailure","isEmptyType","onSuccess","embedInput","unwrapScoped","toChannelWith","makeChannel","unwrap","defaultCloseCodeIsError","WebSocket","WebSocketConstructor","makeWebSocket","url","options","fromWebSocket","acquireRelease","f","ws","sync","onclose","onerror","onmessage","onopen","acquire","withFiberRuntime","fiber","dropping","getFiberRef","currentSendQueueCapacity","sendQueue","acquireContext","currentContext","closeCodeIsError","runRaw","handler","provide","add","make","fiberSet","provideService","runtime","open","event","Uint8Array","unsafeDone","deferred","fail","readyState","async","resume","onOpen","removeEventListener","addEventListener","timeoutFail","duration","openTimeout","onTimeout","raceFirst","join","failSync","try","send","catch","forever","catchIf","scoped","encoder","TextEncoder","encode","makeWebSocketChannel","layerWebSocket","effect","globalValue","unsafeMake"],"sources":["../../src/Socket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Socket.d.ts","sourceRoot":"","sources":["../../src/Socket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Socket.d.ts","sourceRoot":"","sources":["../../src/Socket.ts"],"names":[],"mappings":"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"}
@@ -109,32 +109,39 @@ export class SocketCloseError extends TypeIdError(SocketErrorTypeId, "SocketErro
109
109
  * @since 1.0.0
110
110
  * @category combinators
111
111
  */
112
- export const toChannel = self => Channel.unwrapScoped(Effect.gen(function* (_) {
113
- const parentScope = yield* Effect.scope;
114
- const writeScope = yield* _(Scope.fork(parentScope, ExecutionStrategy.sequential));
115
- const write = yield* _(Scope.extend(self.writer, writeScope));
116
- const exitQueue = yield* _(Queue.unbounded());
117
- const input = {
118
- awaitRead: () => Effect.void,
119
- emit(chunk) {
120
- return Effect.catchAllCause(Effect.forEach(chunk, write, {
121
- discard: true
122
- }), cause => Queue.offer(exitQueue, Exit.failCause(cause)));
123
- },
124
- error(error) {
125
- return Effect.zipRight(Scope.close(writeScope, Exit.void), Queue.offer(exitQueue, Exit.failCause(error)));
126
- },
127
- done() {
128
- return Scope.close(writeScope, Exit.void);
129
- }
130
- };
131
- yield* _(self.run(data => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))), Effect.zipRight(Effect.failCause(Cause.empty)), Effect.exit, Effect.tap(exit => Queue.offer(exitQueue, exit)), Effect.fork, Effect.interruptible);
112
+ export const toChannel = self => Effect.scope.pipe(Effect.bindTo("scope"), Effect.bind("writeScope", ({
113
+ scope
114
+ }) => Scope.fork(scope, ExecutionStrategy.sequential)), Effect.bind("write", ({
115
+ writeScope
116
+ }) => Scope.extend(self.writer, writeScope)), Effect.bind("exitQueue", _ => Queue.unbounded()), Effect.let("input", ({
117
+ exitQueue,
118
+ write,
119
+ writeScope
120
+ }) => ({
121
+ awaitRead: () => Effect.void,
122
+ emit(chunk) {
123
+ return Effect.catchAllCause(Effect.forEach(chunk, write, {
124
+ discard: true
125
+ }), cause => Queue.offer(exitQueue, Exit.failCause(cause)));
126
+ },
127
+ error(error) {
128
+ return Effect.zipRight(Scope.close(writeScope, Exit.void), Queue.offer(exitQueue, Exit.failCause(error)));
129
+ },
130
+ done() {
131
+ return Scope.close(writeScope, Exit.void);
132
+ }
133
+ })), Effect.tap(({
134
+ exitQueue
135
+ }) => self.run(data => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))).pipe(Effect.zipRight(Effect.failCause(Cause.empty)), Effect.exit, Effect.tap(exit => Queue.offer(exitQueue, exit)), Effect.fork, Effect.interruptible)), Effect.map(({
136
+ exitQueue,
137
+ input
138
+ }) => {
132
139
  const loop = Channel.flatMap(Queue.take(exitQueue), Exit.match({
133
140
  onFailure: cause => Cause.isEmptyType(cause) ? Channel.void : Channel.failCause(cause),
134
141
  onSuccess: chunk => Channel.zipRight(Channel.write(chunk), loop)
135
142
  }));
136
143
  return Channel.embedInput(loop, input);
137
- }));
144
+ }), Channel.unwrapScoped);
138
145
  /**
139
146
  * @since 1.0.0
140
147
  * @category combinators
@@ -174,15 +181,19 @@ export const makeWebSocket = (url, options) => fromWebSocket(Effect.acquireRelea
174
181
  * @since 1.0.0
175
182
  * @category constructors
176
183
  */
177
- export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
184
+ export const fromWebSocket = (acquire, options) => Effect.withFiberRuntime(fiber => Effect.map(Queue.dropping(fiber.getFiberRef(currentSendQueueCapacity)), sendQueue => {
185
+ const acquireContext = fiber.getFiberRef(FiberRef.currentContext);
178
186
  const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError;
179
- const sendQueue = yield* _(Queue.dropping(yield* FiberRef.get(currentSendQueueCapacity)));
180
- const acquireContext = yield* Effect.context();
181
- const runRaw = handler => Effect.gen(function* (_) {
182
- const scope = yield* Effect.scope;
183
- const ws = yield* acquire.pipe(Effect.provide(Context.add(acquireContext, Scope.Scope, scope)));
184
- const fiberSet = yield* _(FiberSet.make());
185
- const run = yield* _(FiberSet.runtime(fiberSet)(), Effect.provideService(WebSocket, ws));
187
+ const runRaw = handler => Effect.scope.pipe(Effect.bindTo("scope"), Effect.bind("ws", ({
188
+ scope
189
+ }) => acquire.pipe(Effect.provide(Context.add(acquireContext, Scope.Scope, scope)))), Effect.bind("fiberSet", _ => FiberSet.make()), Effect.bind("run", ({
190
+ fiberSet,
191
+ ws
192
+ }) => Effect.provideService(FiberSet.runtime(fiberSet)(), WebSocket, ws)), Effect.tap(({
193
+ fiberSet,
194
+ run,
195
+ ws
196
+ }) => {
186
197
  let open = false;
187
198
  ws.onmessage = event => {
188
199
  run(handler(typeof event.data === "string" ? event.data : event.data instanceof Uint8Array ? event.data : new Uint8Array(event.data)));
@@ -201,7 +212,7 @@ export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
201
212
  })));
202
213
  };
203
214
  if (ws.readyState !== 1) {
204
- yield* Effect.async(resume => {
215
+ return Effect.async(resume => {
205
216
  function onOpen() {
206
217
  ws.removeEventListener("open", onOpen);
207
218
  resume(Effect.void);
@@ -210,7 +221,9 @@ export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
210
221
  return Effect.sync(() => {
211
222
  ws.removeEventListener("open", onOpen);
212
223
  });
213
- }).pipe(Effect.timeoutFail({
224
+ }).pipe(Effect.tap(_ => {
225
+ open = true;
226
+ }), Effect.timeoutFail({
214
227
  duration: options?.openTimeout ?? 10000,
215
228
  onTimeout: () => new SocketGenericError({
216
229
  reason: "OpenTimeout",
@@ -219,22 +232,26 @@ export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
219
232
  }), Effect.raceFirst(FiberSet.join(fiberSet)));
220
233
  }
221
234
  open = true;
222
- yield* _(Queue.take(sendQueue), Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
223
- ws.close(chunk.code, chunk.reason);
224
- return new SocketCloseError({
225
- reason: "Close",
226
- code: chunk.code,
227
- closeReason: chunk.reason
228
- });
229
- }) : Effect.try({
230
- try: () => ws.send(chunk),
231
- catch: error => new SocketGenericError({
232
- reason: "Write",
233
- error
234
- })
235
- })), Effect.forever, FiberSet.run(fiberSet));
236
- yield* _(FiberSet.join(fiberSet), Effect.catchIf(SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void));
237
- }).pipe(Effect.scoped, Effect.interruptible);
235
+ return Effect.void;
236
+ }), Effect.tap(({
237
+ fiberSet,
238
+ ws
239
+ }) => Queue.take(sendQueue).pipe(Effect.tap(chunk => isCloseEvent(chunk) ? Effect.failSync(() => {
240
+ ws.close(chunk.code, chunk.reason);
241
+ return new SocketCloseError({
242
+ reason: "Close",
243
+ code: chunk.code,
244
+ closeReason: chunk.reason
245
+ });
246
+ }) : Effect.try({
247
+ try: () => ws.send(chunk),
248
+ catch: error => new SocketGenericError({
249
+ reason: "Write",
250
+ error
251
+ })
252
+ })), Effect.forever, FiberSet.run(fiberSet))), Effect.tap(({
253
+ fiberSet
254
+ }) => Effect.catchIf(FiberSet.join(fiberSet), SocketCloseError.isClean(_ => !closeCodeIsError(_)), _ => Effect.void)), Effect.scoped, Effect.interruptible);
238
255
  const encoder = new TextEncoder();
239
256
  const run = handler => runRaw(data => typeof data === "string" ? handler(encoder.encode(data)) : handler(data));
240
257
  const write = chunk => Queue.offer(sendQueue, chunk);
@@ -245,7 +262,7 @@ export const fromWebSocket = (acquire, options) => Effect.gen(function* (_) {
245
262
  runRaw,
246
263
  writer
247
264
  });
248
- });
265
+ }));
249
266
  /**
250
267
  * @since 1.0.0
251
268
  * @category constructors
@@ -1 +1 @@
1
- {"version":3,"file":"Socket.js","names":["Cause","Channel","Chunk","Context","Deferred","Effect","ExecutionStrategy","Exit","FiberRef","FiberSet","globalValue","Layer","Predicate","Queue","Scope","RefailError","TypeIdError","TypeId","Symbol","for","Socket","GenericTag","CloseEventTypeId","CloseEvent","code","reason","constructor","toString","isCloseEvent","u","hasProperty","SocketErrorTypeId","isSocketError","SocketGenericError","message","SocketCloseError","is","isClean","closeReason","toChannel","self","unwrapScoped","gen","_","parentScope","scope","writeScope","fork","sequential","write","extend","writer","exitQueue","unbounded","input","awaitRead","void","emit","chunk","catchAllCause","forEach","discard","cause","offer","failCause","error","zipRight","close","done","run","data","succeed","of","empty","exit","tap","interruptible","loop","flatMap","take","match","onFailure","isEmptyType","onSuccess","embedInput","toChannelWith","makeChannel","unwrap","map","defaultCloseCodeIsError","WebSocket","WebSocketConstructor","makeWebSocket","url","options","fromWebSocket","acquireRelease","pipe","f","ws","sync","onclose","onerror","onmessage","onopen","acquire","closeCodeIsError","sendQueue","dropping","get","currentSendQueueCapacity","acquireContext","context","runRaw","handler","provide","add","fiberSet","make","runtime","provideService","open","event","Uint8Array","unsafeDone","deferred","fail","readyState","async","resume","onOpen","removeEventListener","addEventListener","timeoutFail","duration","openTimeout","onTimeout","raceFirst","join","failSync","try","send","catch","forever","catchIf","scoped","encoder","TextEncoder","encode","makeWebSocketChannel","layerWebSocket","effect","unsafeMake"],"sources":["../../src/Socket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Socket.js","names":["Cause","Channel","Chunk","Context","Deferred","Effect","ExecutionStrategy","Exit","FiberRef","FiberSet","globalValue","Layer","Predicate","Queue","Scope","RefailError","TypeIdError","TypeId","Symbol","for","Socket","GenericTag","CloseEventTypeId","CloseEvent","code","reason","constructor","toString","isCloseEvent","u","hasProperty","SocketErrorTypeId","isSocketError","SocketGenericError","message","SocketCloseError","is","isClean","closeReason","toChannel","self","scope","pipe","bindTo","bind","fork","sequential","writeScope","extend","writer","_","unbounded","let","exitQueue","write","awaitRead","void","emit","chunk","catchAllCause","forEach","discard","cause","offer","failCause","error","zipRight","close","done","tap","run","data","succeed","of","empty","exit","interruptible","map","input","loop","flatMap","take","match","onFailure","isEmptyType","onSuccess","embedInput","unwrapScoped","toChannelWith","makeChannel","unwrap","defaultCloseCodeIsError","WebSocket","WebSocketConstructor","makeWebSocket","url","options","fromWebSocket","acquireRelease","f","ws","sync","onclose","onerror","onmessage","onopen","acquire","withFiberRuntime","fiber","dropping","getFiberRef","currentSendQueueCapacity","sendQueue","acquireContext","currentContext","closeCodeIsError","runRaw","handler","provide","add","make","fiberSet","provideService","runtime","open","event","Uint8Array","unsafeDone","deferred","fail","readyState","async","resume","onOpen","removeEventListener","addEventListener","timeoutFail","duration","openTimeout","onTimeout","raceFirst","join","failSync","try","send","catch","forever","catchIf","scoped","encoder","TextEncoder","encode","makeWebSocketChannel","layerWebSocket","effect","unsafeMake"],"sources":["../../src/Socket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/platform",
3
- "version": "0.57.0",
3
+ "version": "0.57.2",
4
4
  "description": "Unified interfaces for common platform-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -15,8 +15,8 @@
15
15
  "path-browserify": "^1.0.1"
16
16
  },
17
17
  "peerDependencies": {
18
- "@effect/schema": "^0.67.22",
19
- "effect": "^3.3.1"
18
+ "@effect/schema": "^0.67.24",
19
+ "effect": "^3.3.3"
20
20
  },
21
21
  "publishConfig": {
22
22
  "provenance": true
package/src/Socket.ts CHANGED
@@ -180,14 +180,16 @@ export const toChannel = <IE>(
180
180
  void,
181
181
  unknown
182
182
  > =>
183
- Channel.unwrapScoped(
184
- Effect.gen(function*(_) {
185
- const parentScope = yield* Effect.scope
186
- const writeScope = yield* _(Scope.fork(parentScope, ExecutionStrategy.sequential))
187
- const write = yield* _(Scope.extend(self.writer, writeScope))
188
- const exitQueue = yield* _(Queue.unbounded<Exit.Exit<Chunk.Chunk<Uint8Array>, SocketError | IE>>())
189
-
190
- const input: AsyncProducer.AsyncInputProducer<IE, Chunk.Chunk<Uint8Array | string | CloseEvent>, unknown> = {
183
+ Effect.scope.pipe(
184
+ Effect.bindTo("scope"),
185
+ Effect.bind("writeScope", ({ scope }) => Scope.fork(scope, ExecutionStrategy.sequential)),
186
+ Effect.bind("write", ({ writeScope }) => Scope.extend(self.writer, writeScope)),
187
+ Effect.bind("exitQueue", (_) => Queue.unbounded<Exit.Exit<Chunk.Chunk<Uint8Array>, SocketError | IE>>()),
188
+ Effect.let(
189
+ "input",
190
+ (
191
+ { exitQueue, write, writeScope }
192
+ ): AsyncProducer.AsyncInputProducer<IE, Chunk.Chunk<Uint8Array | string | CloseEvent>, unknown> => ({
191
193
  awaitRead: () => Effect.void,
192
194
  emit(chunk) {
193
195
  return Effect.catchAllCause(
@@ -204,17 +206,18 @@ export const toChannel = <IE>(
204
206
  done() {
205
207
  return Scope.close(writeScope, Exit.void)
206
208
  }
207
- }
208
-
209
- yield* _(
210
- self.run((data) => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))),
209
+ })
210
+ ),
211
+ Effect.tap(({ exitQueue }) =>
212
+ self.run((data) => Queue.offer(exitQueue, Exit.succeed(Chunk.of(data)))).pipe(
211
213
  Effect.zipRight(Effect.failCause(Cause.empty)),
212
214
  Effect.exit,
213
215
  Effect.tap((exit) => Queue.offer(exitQueue, exit)),
214
216
  Effect.fork,
215
217
  Effect.interruptible
216
218
  )
217
-
219
+ ),
220
+ Effect.map(({ exitQueue, input }) => {
218
221
  const loop: Channel.Channel<Chunk.Chunk<Uint8Array>, unknown, SocketError | IE, unknown, void, unknown> = Channel
219
222
  .flatMap(
220
223
  Queue.take(exitQueue),
@@ -225,7 +228,8 @@ export const toChannel = <IE>(
225
228
  )
226
229
 
227
230
  return Channel.embedInput(loop, input)
228
- })
231
+ }),
232
+ Channel.unwrapScoped
229
233
  )
230
234
 
231
235
  /**
@@ -330,126 +334,131 @@ export const fromWebSocket = <R>(
330
334
  readonly openTimeout?: DurationInput
331
335
  }
332
336
  ): Effect.Effect<Socket, never, Exclude<R, Scope.Scope>> =>
333
- Effect.gen(function*(_) {
334
- const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError
335
- const sendQueue = yield* _(Queue.dropping<Uint8Array | string | CloseEvent>(
336
- yield* FiberRef.get(currentSendQueueCapacity)
337
- ))
338
- const acquireContext = yield* Effect.context<Exclude<R, Scope.Scope>>()
339
-
340
- const runRaw = <_, E, R>(handler: (_: string | Uint8Array) => Effect.Effect<_, E, R>) =>
341
- Effect.gen(function*(_) {
342
- const scope = yield* Effect.scope
343
- const ws = yield* (acquire.pipe(
344
- Effect.provide(Context.add(acquireContext, Scope.Scope, scope))
345
- ) as Effect.Effect<globalThis.WebSocket>)
346
- const fiberSet = yield* _(FiberSet.make<any, E | SocketError>())
347
- const run = yield* _(
348
- FiberSet.runtime(fiberSet)<R>(),
349
- Effect.provideService(WebSocket, ws)
350
- )
351
- let open = false
352
-
353
- ws.onmessage = (event) => {
354
- run(handler(
355
- typeof event.data === "string"
356
- ? event.data
357
- : event.data instanceof Uint8Array
358
- ? event.data
359
- : new Uint8Array(event.data)
360
- ))
361
- }
362
- ws.onclose = (event) => {
363
- Deferred.unsafeDone(
364
- fiberSet.deferred,
365
- Effect.fail(
366
- new SocketCloseError({
367
- reason: "Close",
368
- code: event.code,
369
- closeReason: event.reason
370
- })
371
- )
372
- )
373
- }
374
- ws.onerror = (error) => {
375
- Deferred.unsafeDone(
376
- fiberSet.deferred,
377
- Effect.fail(new SocketGenericError({ reason: open ? "Read" : "Open", error }))
378
- )
379
- }
380
-
381
- if (ws.readyState !== 1) {
382
- yield* Effect.async<void, SocketError, never>((resume) => {
383
- function onOpen() {
384
- ws.removeEventListener("open", onOpen)
385
- resume(Effect.void)
386
- }
387
- ws.addEventListener("open", onOpen)
388
- return Effect.sync(() => {
389
- ws.removeEventListener("open", onOpen)
390
- })
391
- }).pipe(
392
- Effect.timeoutFail({
393
- duration: options?.openTimeout ?? 10000,
394
- onTimeout: () => new SocketGenericError({ reason: "OpenTimeout", error: "timeout waiting for \"open\"" })
337
+ Effect.withFiberRuntime<Socket, never, Exclude<R, Scope.Scope>>((fiber) =>
338
+ Effect.map(
339
+ Queue.dropping<Uint8Array | string | CloseEvent>(fiber.getFiberRef(currentSendQueueCapacity)),
340
+ (sendQueue) => {
341
+ const acquireContext = fiber.getFiberRef(FiberRef.currentContext) as Context.Context<Exclude<R, Scope.Scope>>
342
+ const closeCodeIsError = options?.closeCodeIsError ?? defaultCloseCodeIsError
343
+ const runRaw = <_, E, R>(handler: (_: string | Uint8Array) => Effect.Effect<_, E, R>) =>
344
+ Effect.scope.pipe(
345
+ Effect.bindTo("scope"),
346
+ Effect.bind("ws", ({ scope }) =>
347
+ acquire.pipe(
348
+ Effect.provide(Context.add(acquireContext, Scope.Scope, scope))
349
+ ) as Effect.Effect<globalThis.WebSocket>),
350
+ Effect.bind("fiberSet", (_) => FiberSet.make<any, E | SocketError>()),
351
+ Effect.bind("run", ({ fiberSet, ws }) =>
352
+ Effect.provideService(FiberSet.runtime(fiberSet)<R>(), WebSocket, ws)),
353
+ Effect.tap(({ fiberSet, run, ws }) => {
354
+ let open = false
355
+
356
+ ws.onmessage = (event) => {
357
+ run(handler(
358
+ typeof event.data === "string"
359
+ ? event.data
360
+ : event.data instanceof Uint8Array
361
+ ? event.data
362
+ : new Uint8Array(event.data)
363
+ ))
364
+ }
365
+ ws.onclose = (event) => {
366
+ Deferred.unsafeDone(
367
+ fiberSet.deferred,
368
+ Effect.fail(
369
+ new SocketCloseError({
370
+ reason: "Close",
371
+ code: event.code,
372
+ closeReason: event.reason
373
+ })
374
+ )
375
+ )
376
+ }
377
+ ws.onerror = (error) => {
378
+ Deferred.unsafeDone(
379
+ fiberSet.deferred,
380
+ Effect.fail(new SocketGenericError({ reason: open ? "Read" : "Open", error }))
381
+ )
382
+ }
383
+
384
+ if (ws.readyState !== 1) {
385
+ return Effect.async<void, SocketError, never>((resume) => {
386
+ function onOpen() {
387
+ ws.removeEventListener("open", onOpen)
388
+ resume(Effect.void)
389
+ }
390
+ ws.addEventListener("open", onOpen)
391
+ return Effect.sync(() => {
392
+ ws.removeEventListener("open", onOpen)
393
+ })
394
+ }).pipe(
395
+ Effect.tap((_) => {
396
+ open = true
397
+ }),
398
+ Effect.timeoutFail({
399
+ duration: options?.openTimeout ?? 10000,
400
+ onTimeout: () =>
401
+ new SocketGenericError({ reason: "OpenTimeout", error: "timeout waiting for \"open\"" })
402
+ }),
403
+ Effect.raceFirst(FiberSet.join(fiberSet))
404
+ )
405
+ }
406
+ open = true
407
+ return Effect.void
395
408
  }),
396
- Effect.raceFirst(FiberSet.join(fiberSet))
409
+ Effect.tap(({ fiberSet, ws }) =>
410
+ Queue.take(sendQueue).pipe(
411
+ Effect.tap((chunk) =>
412
+ isCloseEvent(chunk) ?
413
+ Effect.failSync(() => {
414
+ ws.close(chunk.code, chunk.reason)
415
+ return new SocketCloseError({
416
+ reason: "Close",
417
+ code: chunk.code,
418
+ closeReason: chunk.reason
419
+ })
420
+ }) :
421
+ Effect.try({
422
+ try: () =>
423
+ ws.send(chunk),
424
+ catch: (error) => new SocketGenericError({ reason: "Write", error })
425
+ })
426
+ ),
427
+ Effect.forever,
428
+ FiberSet.run(fiberSet)
429
+ )
430
+ ),
431
+ Effect.tap(({ fiberSet }) =>
432
+ Effect.catchIf(
433
+ FiberSet.join(fiberSet),
434
+ SocketCloseError.isClean((_) => !closeCodeIsError(_)),
435
+ (_) => Effect.void
436
+ )
437
+ ),
438
+ Effect.scoped,
439
+ Effect.interruptible
397
440
  )
398
- }
399
-
400
- open = true
401
-
402
- yield* _(
403
- Queue.take(sendQueue),
404
- Effect.tap((chunk) =>
405
- isCloseEvent(chunk) ?
406
- Effect.failSync(() => {
407
- ws.close(chunk.code, chunk.reason)
408
- return new SocketCloseError({
409
- reason: "Close",
410
- code: chunk.code,
411
- closeReason: chunk.reason
412
- })
413
- }) :
414
- Effect.try({
415
- try: () => ws.send(chunk),
416
- catch: (error) => new SocketGenericError({ reason: "Write", error })
417
- })
418
- ),
419
- Effect.forever,
420
- FiberSet.run(fiberSet)
421
- )
422
441
 
423
- yield* _(
424
- FiberSet.join(fiberSet),
425
- Effect.catchIf(
426
- SocketCloseError.isClean((_) => !closeCodeIsError(_)),
427
- (_) => Effect.void
442
+ const encoder = new TextEncoder()
443
+ const run = <_, E, R>(handler: (_: Uint8Array) => Effect.Effect<_, E, R>) =>
444
+ runRaw((data) =>
445
+ typeof data === "string"
446
+ ? handler(encoder.encode(data))
447
+ : handler(data)
428
448
  )
429
- )
430
- }).pipe(
431
- Effect.scoped,
432
- Effect.interruptible
433
- )
434
-
435
- const encoder = new TextEncoder()
436
- const run = <_, E, R>(handler: (_: Uint8Array) => Effect.Effect<_, E, R>) =>
437
- runRaw((data) =>
438
- typeof data === "string"
439
- ? handler(encoder.encode(data))
440
- : handler(data)
441
- )
442
449
 
443
- const write = (chunk: Uint8Array | string | CloseEvent) => Queue.offer(sendQueue, chunk)
444
- const writer = Effect.succeed(write)
450
+ const write = (chunk: Uint8Array | string | CloseEvent) => Queue.offer(sendQueue, chunk)
451
+ const writer = Effect.succeed(write)
445
452
 
446
- return Socket.of({
447
- [TypeId]: TypeId,
448
- run,
449
- runRaw,
450
- writer
451
- })
452
- })
453
+ return Socket.of({
454
+ [TypeId]: TypeId,
455
+ run,
456
+ runRaw,
457
+ writer
458
+ })
459
+ }
460
+ )
461
+ )
453
462
 
454
463
  /**
455
464
  * @since 1.0.0