@effect/platform-bun 4.0.0-beta.99 → 4.0.0-rc.108

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 (117) hide show
  1. package/AGENTS.md +381 -0
  2. package/CLAUDE.md +381 -0
  3. package/README.md +10 -3
  4. package/ai-docs/README.md +44 -0
  5. package/ai-docs/package.json +36 -0
  6. package/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
  7. package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
  8. package/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
  9. package/ai-docs/src/01_effect/01_basics/index.md +5 -0
  10. package/ai-docs/src/01_effect/02_schema/10_schema-basics.ts +43 -0
  11. package/ai-docs/src/01_effect/02_schema/index.md +7 -0
  12. package/ai-docs/src/01_effect/03_services/01_service.ts +45 -0
  13. package/ai-docs/src/01_effect/03_services/10_reference.ts +10 -0
  14. package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +70 -0
  15. package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +66 -0
  16. package/ai-docs/src/01_effect/03_services/index.md +5 -0
  17. package/ai-docs/src/01_effect/04_errors/01_error-handling.ts +30 -0
  18. package/ai-docs/src/01_effect/04_errors/10_catch-tags.ts +24 -0
  19. package/ai-docs/src/01_effect/04_errors/20_reason-errors.ts +64 -0
  20. package/ai-docs/src/01_effect/04_errors/index.md +1 -0
  21. package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +105 -0
  22. package/ai-docs/src/01_effect/05_resources/20_layer-side-effects.ts +31 -0
  23. package/ai-docs/src/01_effect/05_resources/30_layer-map.ts +86 -0
  24. package/ai-docs/src/01_effect/05_resources/index.md +3 -0
  25. package/ai-docs/src/01_effect/06_running/10_run-main.ts +30 -0
  26. package/ai-docs/src/01_effect/06_running/20_layer-launch.ts +27 -0
  27. package/ai-docs/src/01_effect/06_running/index.md +1 -0
  28. package/ai-docs/src/01_effect/07_pubsub/10_pubsub.ts +56 -0
  29. package/ai-docs/src/01_effect/07_pubsub/index.md +3 -0
  30. package/ai-docs/src/03_stream/10_creating-streams.ts +103 -0
  31. package/ai-docs/src/03_stream/20_consuming-streams.ts +137 -0
  32. package/ai-docs/src/03_stream/30_encoding.ts +165 -0
  33. package/ai-docs/src/03_stream/index.md +4 -0
  34. package/ai-docs/src/04_integration/10_managed-runtime.ts +129 -0
  35. package/ai-docs/src/04_integration/index.md +5 -0
  36. package/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
  37. package/ai-docs/src/05_batching/index.md +3 -0
  38. package/ai-docs/src/06_schedule/10_schedules.ts +110 -0
  39. package/ai-docs/src/06_schedule/index.md +3 -0
  40. package/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
  41. package/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
  42. package/ai-docs/src/07_datetime/index.md +5 -0
  43. package/ai-docs/src/08_observability/10_logging.ts +66 -0
  44. package/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
  45. package/ai-docs/src/08_observability/index.md +7 -0
  46. package/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
  47. package/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
  48. package/ai-docs/src/09_testing/index.md +1 -0
  49. package/ai-docs/src/10_predicate/01_basics.ts +14 -0
  50. package/ai-docs/src/10_predicate/index.md +9 -0
  51. package/ai-docs/src/50_http-client/10_basics.ts +102 -0
  52. package/ai-docs/src/50_http-client/index.md +3 -0
  53. package/ai-docs/src/51_http-server/10_basics.ts +116 -0
  54. package/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
  55. package/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
  56. package/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
  57. package/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
  58. package/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
  59. package/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
  60. package/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
  61. package/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
  62. package/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
  63. package/ai-docs/src/51_http-server/index.md +3 -0
  64. package/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
  65. package/ai-docs/src/60_child-process/index.md +3 -0
  66. package/ai-docs/src/70_cli/10_basics.ts +136 -0
  67. package/ai-docs/src/70_cli/index.md +5 -0
  68. package/ai-docs/src/71_ai/10_language-model.ts +156 -0
  69. package/ai-docs/src/71_ai/20_tools.ts +226 -0
  70. package/ai-docs/src/71_ai/30_chat.ts +158 -0
  71. package/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
  72. package/ai-docs/src/71_ai/index.md +5 -0
  73. package/ai-docs/src/80_cluster/10_entities.ts +97 -0
  74. package/ai-docs/src/80_cluster/index.md +4 -0
  75. package/ai-docs/src/index.md +10 -0
  76. package/ai-docs/tsconfig.json +24 -0
  77. package/dist/BunClusterHttp.d.ts +1 -0
  78. package/dist/BunClusterHttp.d.ts.map +1 -1
  79. package/dist/BunClusterHttp.js +6 -1
  80. package/dist/BunClusterHttp.js.map +1 -1
  81. package/dist/BunClusterSocket.d.ts +1 -0
  82. package/dist/BunClusterSocket.d.ts.map +1 -1
  83. package/dist/BunClusterSocket.js +6 -1
  84. package/dist/BunClusterSocket.js.map +1 -1
  85. package/dist/BunCrypto.js.map +1 -1
  86. package/dist/BunFileSystem.js.map +1 -1
  87. package/dist/BunHttpPlatform.d.ts.map +1 -1
  88. package/dist/BunHttpPlatform.js +25 -2
  89. package/dist/BunHttpPlatform.js.map +1 -1
  90. package/dist/BunHttpServer.d.ts +20 -1
  91. package/dist/BunHttpServer.d.ts.map +1 -1
  92. package/dist/BunHttpServer.js +7 -6
  93. package/dist/BunHttpServer.js.map +1 -1
  94. package/dist/BunHttpServerRequest.js.map +1 -1
  95. package/dist/BunMultipart.d.ts.map +1 -1
  96. package/dist/BunMultipart.js +6 -7
  97. package/dist/BunMultipart.js.map +1 -1
  98. package/dist/BunPath.js.map +1 -1
  99. package/dist/BunRedis.js.map +1 -1
  100. package/dist/BunRuntime.js.map +1 -1
  101. package/dist/BunServices.js.map +1 -1
  102. package/dist/BunSocket.js.map +1 -1
  103. package/dist/BunStdio.js.map +1 -1
  104. package/dist/BunStream.js.map +1 -1
  105. package/dist/BunTerminal.js.map +1 -1
  106. package/dist/BunWorker.js.map +1 -1
  107. package/dist/BunWorkerRunner.d.ts.map +1 -1
  108. package/dist/BunWorkerRunner.js +1 -9
  109. package/dist/BunWorkerRunner.js.map +1 -1
  110. package/dist/index.js.map +1 -1
  111. package/package.json +11 -9
  112. package/src/BunClusterHttp.ts +6 -2
  113. package/src/BunClusterSocket.ts +6 -2
  114. package/src/BunHttpPlatform.ts +18 -3
  115. package/src/BunHttpServer.ts +32 -7
  116. package/src/BunMultipart.ts +7 -8
  117. package/src/BunWorkerRunner.ts +1 -12
@@ -24,19 +24,18 @@ import * as BunStream from "./BunStream.ts"
24
24
  */
25
25
  export const stream = (source: Request): Stream.Stream<Multipart.Part, Multipart.MultipartError> =>
26
26
  BunStream.fromReadableStream({
27
- evaluate: () => source.body ?? emptyReadbleStream,
27
+ evaluate: () =>
28
+ source.body ?? new ReadableStream({
29
+ start(controller) {
30
+ controller.enqueue(new Uint8Array())
31
+ controller.close()
32
+ }
33
+ }),
28
34
  onError: (cause) => Multipart.MultipartError.fromReason("InternalError", cause)
29
35
  }).pipe(
30
36
  Stream.pipeThroughChannel(Multipart.makeChannel(Object.fromEntries(source.headers)))
31
37
  )
32
38
 
33
- const emptyReadbleStream = new ReadableStream({
34
- start(controller) {
35
- controller.enqueue(new Uint8Array())
36
- controller.close()
37
- }
38
- })
39
-
40
39
  /**
41
40
  * Parses and persists multipart data from a Bun `Request`, requiring file-system, path, and scope services.
42
41
  *
@@ -77,22 +77,11 @@ export const layer: Layer.Layer<WorkerRunner.WorkerRunnerPlatform> = Layer.succe
77
77
  })
78
78
  )
79
79
  }
80
- function onError(error: MessageEvent) {
81
- Deferred.doneUnsafe(
82
- closeLatch,
83
- new WorkerError({
84
- reason: new WorkerReceiveError({
85
- message: "received error event",
86
- cause: error.data
87
- })
88
- })
89
- )
90
- }
91
80
  yield* Scope.addFinalizer(
92
81
  scope,
93
82
  Effect.sync(() => {
94
83
  port.removeEventListener("message", onMessage)
95
- port.removeEventListener("messageerror", onError)
84
+ port.removeEventListener("messageerror", onMessageError)
96
85
  })
97
86
  )
98
87
  port.addEventListener("message", onMessage)