@effect/platform-node-shared 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 (127) 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/NodeChildProcessSpawner.d.ts.map +1 -1
  78. package/dist/NodeChildProcessSpawner.js +14 -10
  79. package/dist/NodeChildProcessSpawner.js.map +1 -1
  80. package/dist/NodeClusterSocket.js.map +1 -1
  81. package/dist/NodeCrypto.js.map +1 -1
  82. package/dist/NodeFileSystem.d.ts.map +1 -1
  83. package/dist/NodeFileSystem.js +7 -7
  84. package/dist/NodeFileSystem.js.map +1 -1
  85. package/dist/NodeHttpCompression.d.ts +36 -0
  86. package/dist/NodeHttpCompression.d.ts.map +1 -0
  87. package/dist/NodeHttpCompression.js +146 -0
  88. package/dist/NodeHttpCompression.js.map +1 -0
  89. package/dist/NodePath.d.ts.map +1 -1
  90. package/dist/NodePath.js +23 -20
  91. package/dist/NodePath.js.map +1 -1
  92. package/dist/NodeRuntime.js.map +1 -1
  93. package/dist/NodeSink.js.map +1 -1
  94. package/dist/NodeSocket.js.map +1 -1
  95. package/dist/NodeSocketServer.d.ts.map +1 -1
  96. package/dist/NodeSocketServer.js +25 -15
  97. package/dist/NodeSocketServer.js.map +1 -1
  98. package/dist/NodeStdio.d.ts.map +1 -1
  99. package/dist/NodeStdio.js +2 -0
  100. package/dist/NodeStdio.js.map +1 -1
  101. package/dist/NodeStream.d.ts.map +1 -1
  102. package/dist/NodeStream.js +0 -3
  103. package/dist/NodeStream.js.map +1 -1
  104. package/dist/NodeTerminal.d.ts.map +1 -1
  105. package/dist/NodeTerminal.js +63 -11
  106. package/dist/NodeTerminal.js.map +1 -1
  107. package/dist/index.d.ts +4 -0
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +4 -0
  110. package/dist/index.js.map +1 -1
  111. package/dist/internal/nodeChildProcessSpawner.d.ts +4 -0
  112. package/dist/internal/nodeChildProcessSpawner.d.ts.map +1 -0
  113. package/dist/internal/nodeChildProcessSpawner.js +10 -0
  114. package/dist/internal/nodeChildProcessSpawner.js.map +1 -0
  115. package/dist/internal/utils.js.map +1 -1
  116. package/package.json +11 -9
  117. package/src/NodeChildProcessSpawner.ts +19 -12
  118. package/src/NodeFileSystem.ts +16 -12
  119. package/src/NodeHttpCompression.ts +153 -0
  120. package/src/NodePath.ts +25 -27
  121. package/src/NodeSocketServer.ts +28 -15
  122. package/src/NodeStdio.ts +2 -0
  123. package/src/NodeStream.ts +0 -3
  124. package/src/NodeTerminal.ts +62 -13
  125. package/src/index.ts +5 -0
  126. package/src/internal/nodeChildProcessSpawner.ts +16 -0
  127. package/src/internal/utils.ts +1 -1
package/dist/NodeStdio.js CHANGED
@@ -25,6 +25,8 @@ import { fromReadable } from "./NodeStream.js";
25
25
  */
26
26
  export const layer = /*#__PURE__*/Layer.succeed(Stdio.Stdio, /*#__PURE__*/Stdio.make({
27
27
  args: /*#__PURE__*/Effect.sync(() => process.argv.slice(2)),
28
+ stdinIsTerminal: /*#__PURE__*/Effect.sync(() => process.stdin.isTTY === true),
29
+ stdoutIsTerminal: /*#__PURE__*/Effect.sync(() => process.stdout.isTTY === true),
28
30
  stdout: options => fromWritable({
29
31
  evaluate: () => process.stdout,
30
32
  onError: cause => systemError({
@@ -1 +1 @@
1
- {"version":3,"file":"NodeStdio.js","names":["Effect","Layer","systemError","Stdio","fromWritable","fromReadable","layer","succeed","make","args","sync","process","argv","slice","stdout","options","evaluate","onError","cause","module","method","_tag","endOnDone","stderr","stdin","closeOnDone"],"sources":["../src/NodeStdio.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;AAWA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAASC,WAAW,QAAQ,sBAAsB;AAClD,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,SAASC,YAAY,QAAQ,eAAe;AAC5C,SAASC,YAAY,QAAQ,iBAAiB;AAE9C;;;;;;;;AAQA,OAAO,MAAMC,KAAK,gBAA6BL,KAAK,CAACM,OAAO,CAC1DJ,KAAK,CAACA,KAAK,eACXA,KAAK,CAACK,IAAI,CAAC;EACTC,IAAI,eAAET,MAAM,CAACU,IAAI,CAAC,MAAMC,OAAO,CAACC,IAAI,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC;EAC9CC,MAAM,EAAGC,OAAO,IACdX,YAAY,CAAC;IACXY,QAAQ,EAAEA,CAAA,KAAML,OAAO,CAACG,MAAM;IAC9BG,OAAO,EAAGC,KAAK,IACbhB,WAAW,CAAC;MACViB,MAAM,EAAE,OAAO;MACfC,MAAM,EAAE,QAAQ;MAChBC,IAAI,EAAE,SAAS;MACfH;KACD,CAAC;IACJI,SAAS,EAAEP,OAAO,EAAEO,SAAS,IAAI;GAClC,CAAC;EACJC,MAAM,EAAGR,OAAO,IACdX,YAAY,CAAC;IACXY,QAAQ,EAAEA,CAAA,KAAML,OAAO,CAACY,MAAM;IAC9BN,OAAO,EAAGC,KAAK,IACbhB,WAAW,CAAC;MACViB,MAAM,EAAE,OAAO;MACfC,MAAM,EAAE,QAAQ;MAChBC,IAAI,EAAE,SAAS;MACfH;KACD,CAAC;IACJI,SAAS,EAAEP,OAAO,EAAEO,SAAS,IAAI;GAClC,CAAC;EACJE,KAAK,eAAEnB,YAAY,CAAC;IAClBW,QAAQ,EAAEA,CAAA,KAAML,OAAO,CAACa,KAAK;IAC7BP,OAAO,EAAGC,KAAK,IACbhB,WAAW,CAAC;MACViB,MAAM,EAAE,OAAO;MACfC,MAAM,EAAE,OAAO;MACfC,IAAI,EAAE,SAAS;MACfH;KACD,CAAC;IACJO,WAAW,EAAE;GACd;CACF,CAAC,CACH","ignoreList":[]}
1
+ {"version":3,"file":"NodeStdio.js","names":[],"sources":["../src/NodeStdio.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;AAWA,OAAO,KAAK,MAAM,MAAM,eAAe;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,SAAS,WAAW,QAAQ,sBAAsB;AAClD,OAAO,KAAK,KAAK,MAAM,cAAc;AACrC,SAAS,YAAY,QAAQ,eAAe;AAC5C,SAAS,YAAY,QAAQ,iBAAiB;AAE9C;;;;;;;;AAQA,OAAO,MAAM,KAAK,gBAA6B,KAAK,CAAC,OAAO,CAC1D,KAAK,CAAC,KAAK,eACX,KAAK,CAAC,IAAI,CAAC;EACT,IAAI,eAAE,MAAM,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;EAC9C,eAAe,eAAE,MAAM,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;EAChE,gBAAgB,eAAE,MAAM,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;EAClE,MAAM,EAAG,OAAO,IACd,YAAY,CAAC;IACX,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM;IAC9B,OAAO,EAAG,KAAK,IACb,WAAW,CAAC;MACV,MAAM,EAAE,OAAO;MACf,MAAM,EAAE,QAAQ;MAChB,IAAI,EAAE,SAAS;MACf;KACD,CAAC;IACJ,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI;GAClC,CAAC;EACJ,MAAM,EAAG,OAAO,IACd,YAAY,CAAC;IACX,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM;IAC9B,OAAO,EAAG,KAAK,IACb,WAAW,CAAC;MACV,MAAM,EAAE,OAAO;MACf,MAAM,EAAE,QAAQ;MAChB,IAAI,EAAE,SAAS;MACf;KACD,CAAC;IACJ,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI;GAClC,CAAC;EACJ,KAAK,eAAE,YAAY,CAAC;IAClB,QAAQ,EAAE,MAAM,OAAO,CAAC,KAAK;IAC7B,OAAO,EAAG,KAAK,IACb,WAAW,CAAC;MACV,MAAM,EAAE,OAAO;MACf,MAAM,EAAE,OAAO;MACf,IAAI,EAAE,SAAS;MACf;KACD,CAAC;IACJ,WAAW,EAAE;GACd;CACF,CAAC,CACH","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeStream.d.ts","sourceRoot":"","sources":["../src/NodeStream.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,GAAG,MAAM,cAAc,CAAA;AACnC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAEzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAQ,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAKpD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAGtC;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,WAAW;IAC5E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3C,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAA2D,CAAA;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,WAAW;IACnF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA;IAC5D,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC3C,KAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,CAShD,CAAA;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,EAAE,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,WAC1E;IACP,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;CAC/C,KACA,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,CA4B3F,CAAA;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE;IAC9B;;;;;;OAMG;IACH,CAAC,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC,YAAY,EACtC,OAAO,EAAE;QACP,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,EAAE,CAAA;QACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;KAC/C,GACA,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IACzE;;;;;;OAMG;IACH,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC,YAAY,EAC/C,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC5B,OAAO,EAAE;QACP,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,EAAE,CAAA;QACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;KAC/C,GACA,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;CAe5B,CAAA;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,EAAE;IAC9B;;;;;;OAMG;IACH,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;IACzI;;;;;;OAMG;IACH,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;CAI9B,CAAA;AAEzG;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAIjH,CAAA;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,KAAG,QAIvF,CAAA;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,GAAG,KAAK,CAAC,YAAY,YACnC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,YACzC;IACR,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CAC1C,KACA,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAoCzB,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,GAAG,KAAK,CAAC,YAAY,YACxC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,YACzC;IACR,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CAC1C,KACA,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAmC9B,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,GAAG,KAAK,CAAC,YAAY,YACvC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,YACzC;IACR,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CAC1C,KACA,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAqF,CAAA"}
1
+ {"version":3,"file":"NodeStream.d.ts","sourceRoot":"","sources":["../src/NodeStream.ts"],"names":[],"mappings":"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"}
@@ -133,9 +133,6 @@ export const toString = (readable, options) => {
133
133
  }
134
134
  resume(Effect.fail(onError(err)));
135
135
  });
136
- stream.once("error", err => {
137
- resume(Effect.fail(onError(err)));
138
- });
139
136
  let string = "";
140
137
  let bytes = 0;
141
138
  stream.once("end", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"NodeStream.js","names":["Arr","Cause","Channel","Context","Effect","Exit","Fiber","dual","Latch","MutableRef","Pull","Scope","Stream","Readable","pullIntoWritable","fromReadable","options","fromChannel","fromReadableChannel","fromTransform","_","scope","readableToPullUnsafe","readable","evaluate","onError","defaultOnError","chunkSize","closeOnDone","fromDuplex","upstream","duplex","exit","make","undefined","pull","writable","endOnDone","encoding","pipe","catchCause","cause","isDoneCause","void","current","failCause","forkIn","flatMap","pipeThroughDuplex","self","pipeThroughChannelOrFail","pipeThroughSimple","toReadable","stream","map","context","StreamAdapter","toReadableNever","empty","toString","maxBytesNumber","maxBytes","Number","callback","resume","setEncoding","once","err","closed","destroy","fail","string","bytes","succeed","on","chunk","Buffer","byteLength","Error","sync","toArrayBuffer","buffers","buffer","length","concat","byteOffset","slice","push","toUint8Array","Uint8Array","latch","makeUnsafe","onReadable","openUnsafe","error","onEnd","Done","suspend","loop","item","read","readableEnded","closeUnsafe","await","of","as","addFinalizer","off","readLatch","fiber","constructor","runForEachArray","whenOpen","i","provideContext","runFork","addObserver","isSuccess","squash","_read","_size","_destroy","interrupt","_tag","UnknownError"],"sources":["../src/NodeStream.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NodeStream.js","names":[],"sources":["../src/NodeStream.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTerminal.d.ts","sourceRoot":"","sources":["../src/NodeTerminal.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAMrC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAG3C;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,KAAK,OAAO,KAChD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAkFvD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAA4D,CAAA"}
1
+ {"version":3,"file":"NodeTerminal.d.ts","sourceRoot":"","sources":["../src/NodeTerminal.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAMrC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAG3C;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,EAAE,CACjB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,KAAK,OAAO,KAChD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAmIvD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAA4D,CAAA"}
@@ -18,29 +18,63 @@ import * as readline from "node:readline";
18
18
  export const make = /*#__PURE__*/Effect.fnUntraced(function* (shouldQuit = defaultShouldQuit) {
19
19
  const stdin = process.stdin;
20
20
  const stdout = process.stdout;
21
- // Acquire readline interface with TTY setup/cleanup inside the scope
21
+ const lines = yield* Queue.make();
22
+ // stdin "end" fires once per process, so remember end-of-input for readers
23
+ // created after the event (Bun never sets `readableEnded`).
24
+ let inputEnded = stdin.readableEnded;
25
+ let readlineActive = false;
26
+ const onStdinEnd = () => {
27
+ inputEnded = true;
28
+ if (!readlineActive) {
29
+ Queue.endUnsafe(lines);
30
+ }
31
+ };
32
+ stdin.once("end", onStdinEnd);
33
+ yield* Effect.addFinalizer(() => Effect.sync(() => stdin.off("end", onStdinEnd)));
22
34
  const rlRef = yield* RcRef.make({
23
35
  acquire: Effect.acquireRelease(Effect.sync(() => {
24
36
  const rl = readline.createInterface({
25
37
  input: stdin,
26
38
  escapeCodeTimeout: 50
27
39
  });
40
+ const onLine = line => Queue.offerUnsafe(lines, line);
41
+ const onClose = () => {
42
+ readlineActive = false;
43
+ Queue.endUnsafe(lines);
44
+ };
45
+ readlineActive = true;
28
46
  readline.emitKeypressEvents(stdin, rl);
47
+ rl.on("line", onLine);
48
+ rl.once("close", onClose);
29
49
  if (stdin.isTTY) {
30
50
  stdin.setRawMode(true);
31
51
  }
32
- return rl;
33
- }), rl => Effect.sync(() => {
52
+ return {
53
+ rl,
54
+ onClose,
55
+ onLine
56
+ };
57
+ }), ({
58
+ rl,
59
+ onClose,
60
+ onLine
61
+ }) => Effect.sync(() => {
62
+ readlineActive = false;
63
+ rl.off("line", onLine);
64
+ rl.off("close", onClose);
34
65
  if (stdin.isTTY) {
35
66
  stdin.setRawMode(false);
36
67
  }
37
68
  rl.close();
38
- }))
69
+ if (inputEnded) {
70
+ Queue.endUnsafe(lines);
71
+ }
72
+ })),
73
+ idleTimeToLive: "10 millis"
39
74
  });
40
75
  const columns = Effect.sync(() => stdout.columns ?? 0);
41
76
  const rows = Effect.sync(() => stdout.rows ?? 0);
42
77
  const readInput = Effect.gen(function* () {
43
- yield* RcRef.get(rlRef);
44
78
  const queue = yield* Queue.make();
45
79
  const handleKeypress = (s, k) => {
46
80
  const userInput = {
@@ -57,15 +91,33 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (shouldQuit = defau
57
91
  Queue.endUnsafe(queue);
58
92
  }
59
93
  };
60
- yield* Effect.addFinalizer(() => Effect.sync(() => stdin.off("keypress", handleKeypress)));
94
+ // Deno's `process.stdin` shim does not keep the event loop alive, so a
95
+ // program blocked on input can exit before `end` is ever delivered. A
96
+ // timer holds the loop open for as long as this reader is active.
97
+ const keepAlive = setInterval(() => {}, 2147483647);
98
+ // Without this, consumers (e.g. `Prompt.run`) hang forever on closed stdin.
99
+ const handleEnd = () => {
100
+ clearInterval(keepAlive);
101
+ Queue.endUnsafe(queue);
102
+ };
103
+ yield* Effect.addFinalizer(() => Effect.sync(() => {
104
+ clearInterval(keepAlive);
105
+ stdin.off("keypress", handleKeypress);
106
+ stdin.off("end", handleEnd);
107
+ }));
61
108
  stdin.on("keypress", handleKeypress);
109
+ if (inputEnded) {
110
+ handleEnd();
111
+ } else {
112
+ yield* RcRef.get(rlRef);
113
+ stdin.once("end", handleEnd);
114
+ }
62
115
  return queue;
63
116
  });
64
- const readLine = Effect.scoped(Effect.flatMap(RcRef.get(rlRef), readlineInterface => Effect.callback(resume => {
65
- const onLine = line => resume(Effect.succeed(line));
66
- readlineInterface.once("line", onLine);
67
- return Effect.sync(() => readlineInterface.off("line", onLine));
68
- })));
117
+ const readLine = Effect.suspend(() => Queue.poll(lines).pipe(Effect.flatMap(Option.match({
118
+ onNone: () => Effect.scoped(Effect.andThen(RcRef.get(rlRef), Queue.take(lines))),
119
+ onSome: Effect.succeed
120
+ })), Effect.mapError(() => new Terminal.QuitError({}))));
69
121
  const display = prompt => Effect.uninterruptible(Effect.callback(resume => {
70
122
  stdout.write(prompt, err => Predicate.isNullish(err) ? resume(Effect.void) : resume(Effect.fail(badArgument({
71
123
  module: "Terminal",
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTerminal.js","names":["Effect","Layer","Option","badArgument","Predicate","Queue","RcRef","Terminal","readline","make","fnUntraced","shouldQuit","defaultShouldQuit","stdin","process","stdout","rlRef","acquire","acquireRelease","sync","rl","createInterface","input","escapeCodeTimeout","emitKeypressEvents","isTTY","setRawMode","close","columns","rows","readInput","gen","get","queue","handleKeypress","s","k","userInput","fromUndefinedOr","key","name","ctrl","meta","shift","offerUnsafe","endUnsafe","addFinalizer","off","on","readLine","scoped","flatMap","readlineInterface","callback","resume","onLine","line","succeed","once","display","prompt","uninterruptible","write","err","isNullish","void","fail","module","method","description","cause","layer","effect"],"sources":["../src/NodeTerminal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NodeTerminal.js","names":[],"sources":["../src/NodeTerminal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/index.d.ts CHANGED
@@ -17,6 +17,10 @@ export * as NodeCrypto from "./NodeCrypto.ts";
17
17
  * @since 4.0.0
18
18
  */
19
19
  export * as NodeFileSystem from "./NodeFileSystem.ts";
20
+ /**
21
+ * @since 4.0.0
22
+ */
23
+ export * as NodeHttpCompression from "./NodeHttpCompression.ts";
20
24
  /**
21
25
  * @since 4.0.0
22
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,OAAO,KAAK,uBAAuB,MAAM,8BAA8B,CAAA;AAEvE;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,OAAO,KAAK,uBAAuB,MAAM,8BAA8B,CAAA;AAEvE;;GAEG;AACH,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AAErD;;GAEG;AACH,OAAO,KAAK,mBAAmB,MAAM,0BAA0B,CAAA;AAE/D;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAEzD;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA"}
package/dist/index.js CHANGED
@@ -18,6 +18,10 @@ export * as NodeCrypto from "./NodeCrypto.js";
18
18
  * @since 4.0.0
19
19
  */
20
20
  export * as NodeFileSystem from "./NodeFileSystem.js";
21
+ /**
22
+ * @since 4.0.0
23
+ */
24
+ export * as NodeHttpCompression from "./NodeHttpCompression.js";
21
25
  /**
22
26
  * @since 4.0.0
23
27
  */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["NodeChildProcessSpawner","NodeClusterSocket","NodeCrypto","NodeFileSystem","NodePath","NodeRuntime","NodeSink","NodeSocket","NodeSocketServer","NodeStdio","NodeStream","NodeTerminal"],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;AAGA,OAAO,KAAKA,uBAAuB,MAAM,8BAA8B;AAEvE;;;AAGA,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAKC,YAAY,MAAM,mBAAmB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;AAGA,OAAO,KAAK,uBAAuB,MAAM,8BAA8B;AAEvE;;;AAGA,OAAO,KAAK,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAK,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAK,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAK,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAK,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAK,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAK,QAAQ,MAAM,eAAe;AAEzC;;;AAGA,OAAO,KAAK,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAK,gBAAgB,MAAM,uBAAuB;AAEzD;;;AAGA,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAK,UAAU,MAAM,iBAAiB;AAE7C;;;AAGA,OAAO,KAAK,YAAY,MAAM,mBAAmB","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type * as ChildProcess from "effect/unstable/process/ChildProcess";
2
+ import type * as NodeChildProcess from "node:child_process";
3
+ export declare const buildSpawnOptions: (options: ChildProcess.CommandOptions, base: Pick<NodeChildProcess.SpawnOptions, "cwd" | "env" | "stdio">, platform: NodeJS.Platform) => NodeChildProcess.SpawnOptions;
4
+ //# sourceMappingURL=nodeChildProcessSpawner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeChildProcessSpawner.d.ts","sourceRoot":"","sources":["../../src/internal/nodeChildProcessSpawner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,YAAY,MAAM,sCAAsC,CAAA;AACzE,OAAO,KAAK,KAAK,gBAAgB,MAAM,oBAAoB,CAAA;AAE3D,eAAO,MAAM,iBAAiB,YACnB,YAAY,CAAC,cAAc,QAC9B,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC,YACxD,MAAM,CAAC,QAAQ,KACxB,gBAAgB,CAAC,YAQnB,CAAA"}
@@ -0,0 +1,10 @@
1
+ export const buildSpawnOptions = (options, base, platform) => {
2
+ const detached = options.detached ?? platform !== "win32";
3
+ return {
4
+ ...base,
5
+ detached,
6
+ shell: options.shell,
7
+ windowsHide: options.windowsHide ?? !detached
8
+ };
9
+ };
10
+ //# sourceMappingURL=nodeChildProcessSpawner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeChildProcessSpawner.js","names":[],"sources":["../../src/internal/nodeChildProcessSpawner.ts"],"sourcesContent":[null],"mappings":"AAGA,OAAO,MAAM,iBAAiB,GAAG,CAC/B,OAAoC,EACpC,IAAkE,EAClE,QAAyB,KACQ;EACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,KAAK,OAAO;EACzD,OAAO;IACL,GAAG,IAAI;IACP,QAAQ;IACR,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC;GACtC;AACH,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["PlatformError","handleErrnoException","module","method","err","path","reason","code","systemError","_tag","pathOrDescriptor","syscall","cause"],"sources":["../../src/internal/utils.ts"],"sourcesContent":[null],"mappings":"AACA,OAAO,KAAKA,aAAa,MAAM,sBAAsB;AAGrD;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAACC,MAA6B,EAAEC,MAAc,KAClF,CACEC,GAA0B,EAC1B,CAACC,IAAI,CAA8E,KACpD;EAC/B,IAAIC,MAAM,GAAmB,SAAS;EAEtC,QAAQF,GAAG,CAACG,IAAI;IACd,KAAK,QAAQ;MACXD,MAAM,GAAG,UAAU;MACnB;IAEF,KAAK,QAAQ;MACXA,MAAM,GAAG,kBAAkB;MAC3B;IAEF,KAAK,QAAQ;MACXA,MAAM,GAAG,eAAe;MACxB;IAEF,KAAK,QAAQ;MACXA,MAAM,GAAG,aAAa;MACtB;IAEF,KAAK,SAAS;MACZA,MAAM,GAAG,aAAa;MACtB;IAEF,KAAK,OAAO;MACVA,MAAM,GAAG,MAAM;MACf;IAEF,KAAK,OAAO;MACVA,MAAM,GAAG,aAAa;MACtB;EACJ;EAEA,OAAON,aAAa,CAACQ,WAAW,CAAC;IAC/BC,IAAI,EAAEH,MAAM;IACZJ,MAAM;IACNC,MAAM;IACNO,gBAAgB,EAAEL,IAAuB;IACzCM,OAAO,EAAEP,GAAG,CAACO,OAAO;IACpBC,KAAK,EAAER;GACR,CAAC;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":[],"sources":["../../src/internal/utils.ts"],"sourcesContent":[null],"mappings":"AACA,OAAO,KAAK,aAAa,MAAM,sBAAsB;AAGrD;AACA,OAAO,MAAM,oBAAoB,GAAG,CAAC,MAA6B,EAAE,MAAc,KAClF,CACE,GAA0B,EAC1B,CAAC,IAAI,CAAkF,KACxD;EAC/B,IAAI,MAAM,GAAmB,SAAS;EAEtC,QAAQ,GAAG,CAAC,IAAI;IACd,KAAK,QAAQ;MACX,MAAM,GAAG,UAAU;MACnB;IAEF,KAAK,QAAQ;MACX,MAAM,GAAG,kBAAkB;MAC3B;IAEF,KAAK,QAAQ;MACX,MAAM,GAAG,eAAe;MACxB;IAEF,KAAK,QAAQ;MACX,MAAM,GAAG,aAAa;MACtB;IAEF,KAAK,SAAS;MACZ,MAAM,GAAG,aAAa;MACtB;IAEF,KAAK,OAAO;MACV,MAAM,GAAG,MAAM;MACf;IAEF,KAAK,OAAO;MACV,MAAM,GAAG,aAAa;MACtB;EACJ;EAEA,OAAO,aAAa,CAAC,WAAW,CAAC;IAC/B,IAAI,EAAE,MAAM;IACZ,MAAM;IACN,MAAM;IACN,gBAAgB,EAAE,IAAuB;IACzC,OAAO,EAAE,GAAG,CAAC,OAAO;IACpB,KAAK,EAAE;GACR,CAAC;AACJ,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@effect/platform-node-shared",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.99",
4
+ "version": "4.0.0-rc.108",
5
5
  "license": "MIT",
6
6
  "description": "Unified interfaces for common platform-specific services",
7
7
  "homepage": "https://effect.website",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "https://github.com/Effect-TS/effect.git",
11
- "directory": "packages/platform-node-shared"
11
+ "directory": "packages/platform/node-shared"
12
12
  },
13
13
  "bugs": {
14
14
  "url": "https://github.com/Effect-TS/effect/issues"
@@ -32,6 +32,7 @@
32
32
  ".": "./dist/index.js",
33
33
  "./*": "./dist/*.js",
34
34
  "./internal/*": null,
35
+ "./index": null,
35
36
  "./*/index": null
36
37
  },
37
38
  "files": [
@@ -39,19 +40,22 @@
39
40
  "dist/**/*.js",
40
41
  "dist/**/*.js.map",
41
42
  "dist/**/*.d.ts",
42
- "dist/**/*.d.ts.map"
43
+ "dist/**/*.d.ts.map",
44
+ "AGENTS.md",
45
+ "CLAUDE.md",
46
+ "ai-docs/**/*"
43
47
  ],
44
48
  "publishConfig": {
45
49
  "access": "public",
46
50
  "provenance": true
47
51
  },
48
52
  "peerDependencies": {
49
- "effect": "^4.0.0-beta.99"
53
+ "effect": "^4.0.0-rc.108"
50
54
  },
51
55
  "devDependencies": {
52
- "@types/node": "^26.1.1",
56
+ "@types/node": "^26.1.2",
53
57
  "tar": "^7.5.19",
54
- "effect": "^4.0.0-beta.99"
58
+ "effect": "^4.0.0-rc.108"
55
59
  },
56
60
  "dependencies": {
57
61
  "@types/ws": "^8.18.1",
@@ -61,8 +65,6 @@
61
65
  "codegen": "effect-utils codegen",
62
66
  "build": "tsc -b tsconfig.json && pnpm babel",
63
67
  "babel": "babel dist --plugins annotate-pure-calls --out-dir dist --source-maps",
64
- "check": "tsc -b tsconfig.json",
65
- "test": "vitest",
66
- "coverage": "vitest --coverage"
68
+ "check": "tsc -b tsconfig.json"
67
69
  }
68
70
  }
@@ -40,6 +40,7 @@ import {
40
40
  } from "effect/unstable/process/ChildProcessSpawner"
41
41
  import * as NodeChildProcess from "node:child_process"
42
42
  import { PassThrough } from "node:stream"
43
+ import { buildSpawnOptions } from "./internal/nodeChildProcessSpawner.ts"
43
44
  import { handleErrnoException } from "./internal/utils.ts"
44
45
  import * as NodeSink from "./NodeSink.ts"
45
46
  import * as NodeStream from "./NodeStream.ts"
@@ -65,6 +66,17 @@ const toPlatformError = (
65
66
  type ExitCodeWithSignal = readonly [code: number | null, signal: NodeJS.Signals | null]
66
67
  type ExitSignal = Deferred.Deferred<ExitCodeWithSignal>
67
68
 
69
+ const taskkill = (
70
+ childProcess: NodeChildProcess.ChildProcess,
71
+ onExit: (error: NodeChildProcess.ExecException | null) => void = () => {}
72
+ ) =>
73
+ NodeChildProcess.execFile(
74
+ "taskkill",
75
+ ["/pid", String(childProcess.pid!), "/T", "/F"],
76
+ { windowsHide: true },
77
+ onExit
78
+ )
79
+
68
80
  const make = Effect.gen(function*() {
69
81
  const fs = yield* FileSystem.FileSystem
70
82
  const path = yield* Path.Path
@@ -354,7 +366,7 @@ const make = Effect.gen(function*() {
354
366
  ) => {
355
367
  if (globalThis.process.platform === "win32") {
356
368
  return Effect.callback<void, PlatformError.PlatformError>((resume) => {
357
- NodeChildProcess.exec(`taskkill /pid ${childProcess.pid} /T /F`, (error) => {
369
+ taskkill(childProcess, (error) => {
358
370
  if (error) {
359
371
  resume(Effect.fail(toPlatformError("kill", toError(error), command)))
360
372
  } else {
@@ -376,9 +388,8 @@ const make = Effect.gen(function*() {
376
388
  signal: NodeJS.Signals
377
389
  ): void => {
378
390
  if (globalThis.process.platform === "win32") {
379
- NodeChildProcess.exec(`taskkill /pid ${childProcess.pid} /T /F`, () => {
380
- // ignore errors during best-effort cleanup
381
- })
391
+ // ignore errors during best-effort cleanup
392
+ taskkill(childProcess)
382
393
  return
383
394
  }
384
395
  try {
@@ -471,13 +482,7 @@ const make = Effect.gen(function*() {
471
482
  const stdio = buildStdioArray(stdinConfig, stdoutConfig, stderrConfig, resolvedAdditionalFds)
472
483
 
473
484
  const [childProcess, exitSignal] = yield* Effect.acquireRelease(
474
- spawn(cmd, {
475
- cwd,
476
- env,
477
- stdio,
478
- detached: cmd.options.detached ?? process.platform !== "win32",
479
- shell: cmd.options.shell
480
- }),
485
+ spawn(cmd, buildSpawnOptions(cmd.options, { cwd, env, stdio }, process.platform)),
481
486
  Effect.fnUntraced(function*([childProcess, exitSignal]) {
482
487
  const exited = yield* Deferred.isDone(exitSignal)
483
488
  const killWithTimeout = withTimeout(childProcess, cmd, cmd.options)
@@ -619,6 +624,8 @@ const make = Effect.gen(function*() {
619
624
  }
620
625
 
621
626
  const handle = handles[handles.length - 1]
627
+ const kill = (options?: ChildProcess.KillOptions | undefined) =>
628
+ Effect.forEach([...handles].reverse(), (handle) => Effect.ignore(handle.kill(options)), { discard: true })
622
629
  const unref = Effect.gen(function*() {
623
630
  const rerefs: Array<Effect.Effect<void, PlatformError.PlatformError>> = []
624
631
  for (const handle of handles) {
@@ -631,7 +638,7 @@ const make = Effect.gen(function*() {
631
638
  pid: handle.pid,
632
639
  exitCode: handle.exitCode,
633
640
  isRunning: handle.isRunning,
634
- kill: handle.kill,
641
+ kill,
635
642
  stdin: handle.stdin,
636
643
  stdout: handle.stdout,
637
644
  stderr: handle.stderr,
@@ -210,7 +210,7 @@ const openFactory = (method: string): FileSystem.FileSystem["open"] => {
210
210
  nodeOpen(path, options?.flag ?? "r", options?.mode),
211
211
  (fd) => Effect.orDie(nodeClose(fd))
212
212
  ),
213
- Effect.map((fd) => makeFile(FileSystem.FileDescriptor(fd), options?.flag?.startsWith("a") ?? false))
213
+ Effect.map((fd) => makeFile(fd, options?.flag?.startsWith("a") ?? false))
214
214
  )
215
215
  }
216
216
  const open = openFactory("open")
@@ -252,13 +252,13 @@ const makeFile = (() => {
252
252
 
253
253
  class FileImpl implements FileSystem.File {
254
254
  readonly [FileSystem.FileTypeId]: typeof FileSystem.FileTypeId
255
- readonly fd: FileSystem.File.Descriptor
255
+ readonly fd: number
256
256
  private readonly append: boolean
257
257
 
258
258
  private position: bigint = BigInt(0)
259
259
 
260
260
  constructor(
261
- fd: FileSystem.File.Descriptor,
261
+ fd: number,
262
262
  append: boolean
263
263
  ) {
264
264
  this[FileSystem.FileTypeId] = FileSystem.FileTypeId
@@ -283,7 +283,7 @@ const makeFile = (() => {
283
283
  this.position = this.position + offsetSize
284
284
  }
285
285
 
286
- return this.position
286
+ return FileSystem.Size(this.position)
287
287
  })
288
288
  }
289
289
 
@@ -386,7 +386,7 @@ const makeFile = (() => {
386
386
  }
387
387
  }
388
388
 
389
- return (fd: FileSystem.File.Descriptor, append: boolean): FileSystem.File => new FileImpl(fd, append)
389
+ return (fd: number, append: boolean): FileSystem.File => new FileImpl(fd, append)
390
390
  })()
391
391
 
392
392
  // == makeTempFile
@@ -550,12 +550,12 @@ const utimes = (() => {
550
550
 
551
551
  // == watch
552
552
 
553
- const watchNode = (path: string) =>
553
+ const watchNode = (path: string, options?: FileSystem.WatchOptions) =>
554
554
  Stream.callback<FileSystem.WatchEvent, Error.PlatformError>((queue) =>
555
555
  Effect.acquireRelease(
556
556
  Effect.sync(() => {
557
557
  const watcher = NFS.watch(path, {
558
- recursive: true
558
+ recursive: options?.recursive ?? false
559
559
  }, (event, path) => {
560
560
  if (!path) return
561
561
  switch (event) {
@@ -595,12 +595,16 @@ const watchNode = (path: string) =>
595
595
  )
596
596
  )
597
597
 
598
- const watch = (backend: Option.Option<FileSystem.WatchBackend["Service"]>, path: string) =>
598
+ const watch = (
599
+ backend: Option.Option<FileSystem.WatchBackend["Service"]>,
600
+ path: string,
601
+ options?: FileSystem.WatchOptions
602
+ ) =>
599
603
  stat(path).pipe(
600
604
  Effect.map((stat) =>
601
605
  backend.pipe(
602
- Option.flatMap((_) => _.register(path, stat)),
603
- Option.getOrElse(() => watchNode(path))
606
+ Option.flatMap((_) => _.register(path, stat, options)),
607
+ Option.getOrElse(() => watchNode(path, options))
604
608
  )
605
609
  ),
606
610
  Stream.unwrap
@@ -652,8 +656,8 @@ const makeFileSystem = Effect.map(Effect.serviceOption(FileSystem.WatchBackend),
652
656
  symlink,
653
657
  truncate,
654
658
  utimes,
655
- watch(path) {
656
- return watch(backend, path)
659
+ watch(path, options) {
660
+ return watch(backend, path, options)
657
661
  },
658
662
  writeFile
659
663
  }))