@effect/platform-node 0.45.31 → 0.46.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.
Files changed (43) hide show
  1. package/dist/cjs/NodeFileSystem/ParcelWatcher.js +42 -0
  2. package/dist/cjs/NodeFileSystem/ParcelWatcher.js.map +1 -0
  3. package/dist/cjs/NodeHttpClient.js +11 -1
  4. package/dist/cjs/NodeHttpClient.js.map +1 -1
  5. package/dist/cjs/internal/http/client.js +1 -1
  6. package/dist/cjs/internal/http/client.js.map +1 -1
  7. package/dist/cjs/internal/http/clientUndici.js +11 -3
  8. package/dist/cjs/internal/http/clientUndici.js.map +1 -1
  9. package/dist/cjs/internal/http/server.js +9 -9
  10. package/dist/cjs/internal/http/server.js.map +1 -1
  11. package/dist/cjs/internal/worker.js +1 -1
  12. package/dist/cjs/internal/worker.js.map +1 -1
  13. package/dist/cjs/internal/workerRunner.js +3 -3
  14. package/dist/cjs/internal/workerRunner.js.map +1 -1
  15. package/dist/dts/Http/Server.d.ts +2 -2
  16. package/dist/dts/Http/Server.d.ts.map +1 -1
  17. package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts +8 -0
  18. package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts.map +1 -0
  19. package/dist/dts/NodeHttpClient.d.ts +14 -0
  20. package/dist/dts/NodeHttpClient.d.ts.map +1 -1
  21. package/dist/esm/NodeFileSystem/ParcelWatcher.js +10 -0
  22. package/dist/esm/NodeFileSystem/ParcelWatcher.js.map +1 -0
  23. package/dist/esm/NodeHttpClient.js +10 -0
  24. package/dist/esm/NodeHttpClient.js.map +1 -1
  25. package/dist/esm/internal/http/client.js +1 -1
  26. package/dist/esm/internal/http/client.js.map +1 -1
  27. package/dist/esm/internal/http/clientUndici.js +10 -2
  28. package/dist/esm/internal/http/clientUndici.js.map +1 -1
  29. package/dist/esm/internal/http/server.js +9 -9
  30. package/dist/esm/internal/http/server.js.map +1 -1
  31. package/dist/esm/internal/worker.js +1 -1
  32. package/dist/esm/internal/worker.js.map +1 -1
  33. package/dist/esm/internal/workerRunner.js +3 -3
  34. package/dist/esm/internal/workerRunner.js.map +1 -1
  35. package/package.json +5 -5
  36. package/src/Http/Server.ts +3 -3
  37. package/src/NodeFileSystem/ParcelWatcher.ts +12 -0
  38. package/src/NodeHttpClient.ts +19 -0
  39. package/src/internal/http/client.ts +1 -1
  40. package/src/internal/http/clientUndici.ts +23 -2
  41. package/src/internal/http/server.ts +15 -15
  42. package/src/internal/worker.ts +1 -1
  43. package/src/internal/workerRunner.ts +4 -4
@@ -21,7 +21,7 @@ import * as FiberSet from "effect/FiberSet"
21
21
  import { type LazyArg } from "effect/Function"
22
22
  import * as Layer from "effect/Layer"
23
23
  import * as Option from "effect/Option"
24
- import type { ReadonlyRecord } from "effect/ReadonlyRecord"
24
+ import type { ReadonlyRecord } from "effect/Record"
25
25
  import * as Scope from "effect/Scope"
26
26
  import * as Stream from "effect/Stream"
27
27
  import * as Http from "node:http"
@@ -51,7 +51,7 @@ export const make = (
51
51
  if (error) {
52
52
  resume(Effect.die(error))
53
53
  } else {
54
- resume(Effect.unit)
54
+ resume(Effect.void)
55
55
  }
56
56
  })
57
57
  })
@@ -62,7 +62,7 @@ export const make = (
62
62
  resume(Effect.fail(new Error.ServeError({ error })))
63
63
  })
64
64
  server.listen(options, () => {
65
- resume(Effect.unit)
65
+ resume(Effect.void)
66
66
  })
67
67
  }))
68
68
 
@@ -73,7 +73,7 @@ export const make = (
73
73
  Effect.sync(() => new WS.WebSocketServer({ noServer: true })),
74
74
  (wss) =>
75
75
  Effect.async<void>((resume) => {
76
- wss.close(() => resume(Effect.unit))
76
+ wss.close(() => resume(Effect.void))
77
77
  })
78
78
  ),
79
79
  Scope.extend(scope),
@@ -114,20 +114,20 @@ export const make = (
114
114
 
115
115
  /** @internal */
116
116
  export const makeHandler: {
117
- <R, E>(httpApp: App.Default<R, E>): Effect.Effect<
117
+ <R, E>(httpApp: App.Default<E, R>): Effect.Effect<
118
118
  (nodeRequest: Http.IncomingMessage, nodeResponse: Http.ServerResponse) => void,
119
119
  never,
120
120
  Exclude<R, ServerRequest.ServerRequest | Scope.Scope>
121
121
  >
122
122
  <R, E, App extends App.Default<any, any>>(
123
- httpApp: App.Default<R, E>,
124
- middleware: Middleware.Middleware.Applied<R, E, App>
123
+ httpApp: App.Default<E, R>,
124
+ middleware: Middleware.Middleware.Applied<App, E, R>
125
125
  ): Effect.Effect<
126
126
  (nodeRequest: Http.IncomingMessage, nodeResponse: Http.ServerResponse) => void,
127
127
  never,
128
128
  Exclude<Effect.Effect.Context<App>, ServerRequest.ServerRequest | Scope.Scope>
129
129
  >
130
- } = <R, E>(httpApp: App.Default<R, E>, middleware?: Middleware.Middleware) => {
130
+ } = <E, R>(httpApp: App.Default<E, R>, middleware?: Middleware.Middleware) => {
131
131
  const handledApp = App.toHandled(httpApp, (request, exit) => {
132
132
  if (exit._tag === "Success") {
133
133
  return Effect.catchAllCause(
@@ -164,7 +164,7 @@ export const makeHandler: {
164
164
  /** @internal */
165
165
  export const makeUpgradeHandler = <R, E>(
166
166
  lazyWss: Effect.Effect<WS.WebSocketServer>,
167
- httpApp: App.Default<R, E>,
167
+ httpApp: App.Default<E, R>,
168
168
  middleware?: Middleware.Middleware
169
169
  ) => {
170
170
  const handledApp = App.toHandled(httpApp, (request, exit) => {
@@ -380,7 +380,7 @@ const handleResponse = (request: ServerRequest.ServerRequest, response: ServerRe
380
380
  Effect.suspend((): Effect.Effect<void, Error.ResponseError> => {
381
381
  const nodeResponse = (request as ServerRequestImpl).resolvedResponse
382
382
  if (nodeResponse.writableEnded) {
383
- return Effect.unit
383
+ return Effect.void
384
384
  }
385
385
 
386
386
  let headers: Record<string, string | Array<string>> = response.headers
@@ -396,14 +396,14 @@ const handleResponse = (request: ServerRequest.ServerRequest, response: ServerRe
396
396
  if (request.method === "HEAD") {
397
397
  nodeResponse.writeHead(response.status, headers)
398
398
  nodeResponse.end()
399
- return Effect.unit
399
+ return Effect.void
400
400
  }
401
401
  const body = response.body
402
402
  switch (body._tag) {
403
403
  case "Empty": {
404
404
  nodeResponse.writeHead(response.status, headers)
405
405
  nodeResponse.end()
406
- return Effect.unit
406
+ return Effect.void
407
407
  }
408
408
  case "Raw": {
409
409
  nodeResponse.writeHead(response.status, headers)
@@ -423,12 +423,12 @@ const handleResponse = (request: ServerRequest.ServerRequest, response: ServerRe
423
423
  })
424
424
  }
425
425
  nodeResponse.end(body.body)
426
- return Effect.unit
426
+ return Effect.void
427
427
  }
428
428
  case "Uint8Array": {
429
429
  nodeResponse.writeHead(response.status, headers)
430
430
  nodeResponse.end(body.body)
431
- return Effect.unit
431
+ return Effect.void
432
432
  }
433
433
  case "FormData": {
434
434
  return Effect.async<void, Error.ResponseError>((resume) => {
@@ -450,7 +450,7 @@ const handleResponse = (request: ServerRequest.ServerRequest, response: ServerRe
450
450
  ))
451
451
  })
452
452
  .once("finish", () => {
453
- resume(Effect.unit)
453
+ resume(Effect.void)
454
454
  })
455
455
  })
456
456
  }
@@ -15,7 +15,7 @@ const platformWorkerImpl = Worker.PlatformWorker.of({
15
15
  pipe(
16
16
  Effect.async<void>((resume) => {
17
17
  worker.once("exit", () => {
18
- resume(Effect.unit)
18
+ resume(Effect.void)
19
19
  })
20
20
  worker.postMessage([1])
21
21
  }),
@@ -15,12 +15,12 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
15
15
  return yield* _(new WorkerError({ reason: "spawn", error: new Error("not in worker") }))
16
16
  }
17
17
  const port = WorkerThreads.parentPort
18
- const queue = yield* _(Queue.unbounded<I>())
18
+ const queue = yield* _(Queue.unbounded<readonly [portId: number, message: I]>())
19
19
  yield* _(
20
20
  Effect.async<never, WorkerError>((resume) => {
21
21
  port.on("message", (message: Runner.BackingRunner.Message<I>) => {
22
22
  if (message[0] === 0) {
23
- queue.unsafeOffer(message[1])
23
+ queue.unsafeOffer([0, message[1]])
24
24
  } else {
25
25
  Effect.runFork(shutdown)
26
26
  }
@@ -32,7 +32,7 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
32
32
  resume(new WorkerError({ reason: "unknown", error }))
33
33
  })
34
34
  }),
35
- Effect.tapErrorCause((cause) => Cause.isInterruptedOnly(cause) ? Effect.unit : Effect.logDebug(cause)),
35
+ Effect.tapErrorCause((cause) => Cause.isInterruptedOnly(cause) ? Effect.void : Effect.logDebug(cause)),
36
36
  Effect.retry(Schedule.forever),
37
37
  Effect.annotateLogs({
38
38
  package: "@effect/platform-node",
@@ -41,7 +41,7 @@ const platformRunnerImpl = Runner.PlatformRunner.of({
41
41
  Effect.interruptible,
42
42
  Effect.forkScoped
43
43
  )
44
- const send = (message: O, transfers?: ReadonlyArray<unknown>) =>
44
+ const send = (_portId: number, message: O, transfers?: ReadonlyArray<unknown>) =>
45
45
  Effect.sync(() => port.postMessage([1, message], transfers as any))
46
46
  // ready
47
47
  port.postMessage([0])