effect 4.0.0-beta.2 → 4.0.0-beta.21

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 (881) hide show
  1. package/dist/Array.d.ts +127 -299
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +102 -62
  4. package/dist/Array.js.map +1 -1
  5. package/dist/Cache.d.ts +2 -2
  6. package/dist/Cache.d.ts.map +1 -1
  7. package/dist/Cache.js +6 -5
  8. package/dist/Cache.js.map +1 -1
  9. package/dist/Cause.d.ts +1 -1
  10. package/dist/Cause.d.ts.map +1 -1
  11. package/dist/Channel.d.ts +116 -30
  12. package/dist/Channel.d.ts.map +1 -1
  13. package/dist/Channel.js +82 -37
  14. package/dist/Channel.js.map +1 -1
  15. package/dist/Chunk.d.ts +54 -247
  16. package/dist/Chunk.d.ts.map +1 -1
  17. package/dist/Chunk.js +36 -67
  18. package/dist/Chunk.js.map +1 -1
  19. package/dist/Combiner.d.ts +280 -13
  20. package/dist/Combiner.d.ts.map +1 -1
  21. package/dist/Combiner.js +198 -7
  22. package/dist/Combiner.js.map +1 -1
  23. package/dist/Config.d.ts +165 -9
  24. package/dist/Config.d.ts.map +1 -1
  25. package/dist/Config.js +62 -7
  26. package/dist/Config.js.map +1 -1
  27. package/dist/ConfigProvider.d.ts +1 -1
  28. package/dist/Cron.d.ts +1 -1
  29. package/dist/Data.d.ts +534 -365
  30. package/dist/Data.d.ts.map +1 -1
  31. package/dist/Data.js +132 -79
  32. package/dist/Data.js.map +1 -1
  33. package/dist/DateTime.d.ts +23 -161
  34. package/dist/DateTime.d.ts.map +1 -1
  35. package/dist/DateTime.js +6 -51
  36. package/dist/DateTime.js.map +1 -1
  37. package/dist/Duration.d.ts +12 -12
  38. package/dist/Duration.d.ts.map +1 -1
  39. package/dist/Duration.js +12 -12
  40. package/dist/Duration.js.map +1 -1
  41. package/dist/Effect.d.ts +829 -692
  42. package/dist/Effect.d.ts.map +1 -1
  43. package/dist/Effect.js +263 -251
  44. package/dist/Effect.js.map +1 -1
  45. package/dist/Encoding.d.ts +194 -0
  46. package/dist/Encoding.d.ts.map +1 -0
  47. package/dist/Encoding.js +352 -0
  48. package/dist/Encoding.js.map +1 -0
  49. package/dist/Equal.d.ts +276 -109
  50. package/dist/Equal.d.ts.map +1 -1
  51. package/dist/Equal.js +124 -48
  52. package/dist/Equal.js.map +1 -1
  53. package/dist/ErrorReporter.d.ts +376 -0
  54. package/dist/ErrorReporter.d.ts.map +1 -0
  55. package/dist/ErrorReporter.js +246 -0
  56. package/dist/ErrorReporter.js.map +1 -0
  57. package/dist/Fiber.d.ts +2 -2
  58. package/dist/Fiber.d.ts.map +1 -1
  59. package/dist/Fiber.js.map +1 -1
  60. package/dist/FileSystem.d.ts +1 -1
  61. package/dist/FileSystem.d.ts.map +1 -1
  62. package/dist/FileSystem.js +5 -5
  63. package/dist/FileSystem.js.map +1 -1
  64. package/dist/Filter.d.ts +30 -34
  65. package/dist/Filter.d.ts.map +1 -1
  66. package/dist/Filter.js +15 -13
  67. package/dist/Filter.js.map +1 -1
  68. package/dist/Formatter.d.ts +131 -47
  69. package/dist/Formatter.d.ts.map +1 -1
  70. package/dist/Formatter.js +229 -51
  71. package/dist/Formatter.js.map +1 -1
  72. package/dist/Graph.d.ts +1 -1
  73. package/dist/Graph.d.ts.map +1 -1
  74. package/dist/Graph.js +5 -8
  75. package/dist/Graph.js.map +1 -1
  76. package/dist/HashMap.d.ts +15 -14
  77. package/dist/HashMap.d.ts.map +1 -1
  78. package/dist/HashMap.js +4 -4
  79. package/dist/HashMap.js.map +1 -1
  80. package/dist/Iterable.d.ts +40 -39
  81. package/dist/Iterable.d.ts.map +1 -1
  82. package/dist/Iterable.js +94 -22
  83. package/dist/Iterable.js.map +1 -1
  84. package/dist/JsonSchema.d.ts +299 -10
  85. package/dist/JsonSchema.d.ts.map +1 -1
  86. package/dist/JsonSchema.js +323 -4
  87. package/dist/JsonSchema.js.map +1 -1
  88. package/dist/Latch.d.ts +109 -0
  89. package/dist/Latch.d.ts.map +1 -0
  90. package/dist/Latch.js +72 -0
  91. package/dist/Latch.js.map +1 -0
  92. package/dist/Layer.d.ts +9 -9
  93. package/dist/Layer.d.ts.map +1 -1
  94. package/dist/Layer.js.map +1 -1
  95. package/dist/LayerMap.d.ts +4 -4
  96. package/dist/LayerMap.d.ts.map +1 -1
  97. package/dist/LogLevel.d.ts +32 -0
  98. package/dist/LogLevel.d.ts.map +1 -1
  99. package/dist/LogLevel.js +28 -100
  100. package/dist/LogLevel.js.map +1 -1
  101. package/dist/Logger.d.ts +29 -95
  102. package/dist/Logger.d.ts.map +1 -1
  103. package/dist/Logger.js +2 -3
  104. package/dist/Logger.js.map +1 -1
  105. package/dist/ManagedRuntime.d.ts +1 -1
  106. package/dist/ManagedRuntime.js +1 -1
  107. package/dist/Metric.d.ts +2 -2
  108. package/dist/Metric.d.ts.map +1 -1
  109. package/dist/Metric.js +1 -1
  110. package/dist/Metric.js.map +1 -1
  111. package/dist/Optic.d.ts +947 -18
  112. package/dist/Optic.d.ts.map +1 -1
  113. package/dist/Optic.js +454 -5
  114. package/dist/Optic.js.map +1 -1
  115. package/dist/Option.d.ts +22 -15
  116. package/dist/Option.d.ts.map +1 -1
  117. package/dist/Option.js +14 -7
  118. package/dist/Option.js.map +1 -1
  119. package/dist/Pipeable.d.ts +17 -0
  120. package/dist/Pipeable.d.ts.map +1 -1
  121. package/dist/Pipeable.js +19 -1
  122. package/dist/Pipeable.js.map +1 -1
  123. package/dist/PlatformError.d.ts +10 -9
  124. package/dist/PlatformError.d.ts.map +1 -1
  125. package/dist/PlatformError.js +2 -2
  126. package/dist/PlatformError.js.map +1 -1
  127. package/dist/Pool.d.ts +6 -4
  128. package/dist/Pool.d.ts.map +1 -1
  129. package/dist/Pool.js +7 -5
  130. package/dist/Pool.js.map +1 -1
  131. package/dist/PubSub.d.ts +3 -2
  132. package/dist/PubSub.d.ts.map +1 -1
  133. package/dist/PubSub.js +3 -2
  134. package/dist/PubSub.js.map +1 -1
  135. package/dist/Pull.d.ts.map +1 -1
  136. package/dist/Pull.js +1 -1
  137. package/dist/Pull.js.map +1 -1
  138. package/dist/Queue.d.ts.map +1 -1
  139. package/dist/Queue.js +0 -1
  140. package/dist/Queue.js.map +1 -1
  141. package/dist/Random.d.ts +35 -1
  142. package/dist/Random.d.ts.map +1 -1
  143. package/dist/Random.js +46 -12
  144. package/dist/Random.js.map +1 -1
  145. package/dist/RcMap.d.ts +2 -2
  146. package/dist/RcMap.d.ts.map +1 -1
  147. package/dist/RcMap.js +1 -1
  148. package/dist/RcMap.js.map +1 -1
  149. package/dist/RcRef.d.ts +1 -1
  150. package/dist/RcRef.d.ts.map +1 -1
  151. package/dist/Record.d.ts +24 -120
  152. package/dist/Record.d.ts.map +1 -1
  153. package/dist/Record.js +21 -41
  154. package/dist/Record.js.map +1 -1
  155. package/dist/Reducer.d.ts +166 -7
  156. package/dist/Reducer.d.ts.map +1 -1
  157. package/dist/Reducer.js +135 -1
  158. package/dist/Reducer.js.map +1 -1
  159. package/dist/References.d.ts +3 -3
  160. package/dist/References.d.ts.map +1 -1
  161. package/dist/Request.d.ts +1 -1
  162. package/dist/Request.d.ts.map +1 -1
  163. package/dist/Request.js +2 -1
  164. package/dist/Request.js.map +1 -1
  165. package/dist/RequestResolver.d.ts +6 -26
  166. package/dist/RequestResolver.d.ts.map +1 -1
  167. package/dist/RequestResolver.js +0 -20
  168. package/dist/RequestResolver.js.map +1 -1
  169. package/dist/Result.d.ts +12 -0
  170. package/dist/Result.d.ts.map +1 -1
  171. package/dist/Result.js +12 -0
  172. package/dist/Result.js.map +1 -1
  173. package/dist/Schedule.d.ts +47 -20
  174. package/dist/Schedule.d.ts.map +1 -1
  175. package/dist/Schedule.js +94 -34
  176. package/dist/Schedule.js.map +1 -1
  177. package/dist/Schema.d.ts +266 -50
  178. package/dist/Schema.d.ts.map +1 -1
  179. package/dist/Schema.js +426 -74
  180. package/dist/Schema.js.map +1 -1
  181. package/dist/SchemaAST.d.ts.map +1 -1
  182. package/dist/SchemaAST.js +7 -6
  183. package/dist/SchemaAST.js.map +1 -1
  184. package/dist/SchemaGetter.d.ts +2 -2
  185. package/dist/SchemaGetter.d.ts.map +1 -1
  186. package/dist/SchemaGetter.js +12 -14
  187. package/dist/SchemaGetter.js.map +1 -1
  188. package/dist/SchemaParser.d.ts +5 -0
  189. package/dist/SchemaParser.d.ts.map +1 -1
  190. package/dist/SchemaParser.js +10 -0
  191. package/dist/SchemaParser.js.map +1 -1
  192. package/dist/SchemaRepresentation.d.ts +44 -43
  193. package/dist/SchemaRepresentation.d.ts.map +1 -1
  194. package/dist/SchemaRepresentation.js +43 -24
  195. package/dist/SchemaRepresentation.js.map +1 -1
  196. package/dist/SchemaTransformation.d.ts +107 -3
  197. package/dist/SchemaTransformation.d.ts.map +1 -1
  198. package/dist/SchemaTransformation.js +159 -4
  199. package/dist/SchemaTransformation.js.map +1 -1
  200. package/dist/ScopedCache.d.ts +2 -2
  201. package/dist/ScopedCache.d.ts.map +1 -1
  202. package/dist/ScopedCache.js +1 -1
  203. package/dist/ScopedCache.js.map +1 -1
  204. package/dist/Semaphore.d.ts +211 -0
  205. package/dist/Semaphore.d.ts.map +1 -0
  206. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  207. package/dist/Semaphore.js.map +1 -0
  208. package/dist/ServiceMap.d.ts +39 -30
  209. package/dist/ServiceMap.d.ts.map +1 -1
  210. package/dist/ServiceMap.js +3 -3
  211. package/dist/ServiceMap.js.map +1 -1
  212. package/dist/Sink.d.ts +13 -13
  213. package/dist/Sink.d.ts.map +1 -1
  214. package/dist/Sink.js +53 -6
  215. package/dist/Sink.js.map +1 -1
  216. package/dist/Stream.d.ts +235 -423
  217. package/dist/Stream.d.ts.map +1 -1
  218. package/dist/Stream.js +124 -77
  219. package/dist/Stream.js.map +1 -1
  220. package/dist/Struct.d.ts +16 -0
  221. package/dist/Struct.d.ts.map +1 -1
  222. package/dist/Struct.js +22 -0
  223. package/dist/Struct.js.map +1 -1
  224. package/dist/SubscriptionRef.d.ts +2 -1
  225. package/dist/SubscriptionRef.d.ts.map +1 -1
  226. package/dist/SubscriptionRef.js +2 -1
  227. package/dist/SubscriptionRef.js.map +1 -1
  228. package/dist/SynchronizedRef.d.ts +2 -1
  229. package/dist/SynchronizedRef.d.ts.map +1 -1
  230. package/dist/SynchronizedRef.js +2 -1
  231. package/dist/SynchronizedRef.js.map +1 -1
  232. package/dist/Trie.d.ts +18 -17
  233. package/dist/Trie.d.ts.map +1 -1
  234. package/dist/Trie.js +5 -5
  235. package/dist/Trie.js.map +1 -1
  236. package/dist/TxChunk.d.ts +37 -37
  237. package/dist/TxChunk.d.ts.map +1 -1
  238. package/dist/TxChunk.js +3 -3
  239. package/dist/TxChunk.js.map +1 -1
  240. package/dist/TxDeferred.d.ts +328 -0
  241. package/dist/TxDeferred.d.ts.map +1 -0
  242. package/dist/TxDeferred.js +196 -0
  243. package/dist/TxDeferred.js.map +1 -0
  244. package/dist/TxHashMap.d.ts +84 -83
  245. package/dist/TxHashMap.d.ts.map +1 -1
  246. package/dist/TxHashMap.js +24 -24
  247. package/dist/TxHashMap.js.map +1 -1
  248. package/dist/TxHashSet.d.ts +35 -35
  249. package/dist/TxHashSet.d.ts.map +1 -1
  250. package/dist/TxHashSet.js +14 -14
  251. package/dist/TxHashSet.js.map +1 -1
  252. package/dist/TxPriorityQueue.d.ts +609 -0
  253. package/dist/TxPriorityQueue.d.ts.map +1 -0
  254. package/dist/TxPriorityQueue.js +415 -0
  255. package/dist/TxPriorityQueue.js.map +1 -0
  256. package/dist/TxPubSub.d.ts +585 -0
  257. package/dist/TxPubSub.d.ts.map +1 -0
  258. package/dist/TxPubSub.js +521 -0
  259. package/dist/TxPubSub.js.map +1 -0
  260. package/dist/TxQueue.d.ts +32 -32
  261. package/dist/TxQueue.d.ts.map +1 -1
  262. package/dist/TxQueue.js +26 -26
  263. package/dist/TxQueue.js.map +1 -1
  264. package/dist/TxReentrantLock.d.ts +523 -0
  265. package/dist/TxReentrantLock.d.ts.map +1 -0
  266. package/dist/TxReentrantLock.js +504 -0
  267. package/dist/TxReentrantLock.js.map +1 -0
  268. package/dist/TxRef.d.ts +34 -34
  269. package/dist/TxRef.d.ts.map +1 -1
  270. package/dist/TxRef.js +21 -14
  271. package/dist/TxRef.js.map +1 -1
  272. package/dist/TxSemaphore.d.ts +8 -8
  273. package/dist/TxSemaphore.d.ts.map +1 -1
  274. package/dist/TxSemaphore.js +7 -7
  275. package/dist/TxSemaphore.js.map +1 -1
  276. package/dist/TxSubscriptionRef.d.ts +508 -0
  277. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  278. package/dist/TxSubscriptionRef.js +293 -0
  279. package/dist/TxSubscriptionRef.js.map +1 -0
  280. package/dist/Types.d.ts +84 -6
  281. package/dist/Types.d.ts.map +1 -1
  282. package/dist/index.d.ts +591 -20
  283. package/dist/index.d.ts.map +1 -1
  284. package/dist/index.js +591 -20
  285. package/dist/index.js.map +1 -1
  286. package/dist/internal/core.js +11 -3
  287. package/dist/internal/core.js.map +1 -1
  288. package/dist/internal/dateTime.js +3 -11
  289. package/dist/internal/dateTime.js.map +1 -1
  290. package/dist/internal/effect.js +263 -99
  291. package/dist/internal/effect.js.map +1 -1
  292. package/dist/internal/hashMap.js +5 -4
  293. package/dist/internal/hashMap.js.map +1 -1
  294. package/dist/internal/random.d.ts +2 -0
  295. package/dist/internal/random.d.ts.map +1 -0
  296. package/dist/internal/random.js +13 -0
  297. package/dist/internal/random.js.map +1 -0
  298. package/dist/internal/rcRef.js +3 -2
  299. package/dist/internal/rcRef.js.map +1 -1
  300. package/dist/internal/request.js +2 -2
  301. package/dist/internal/request.js.map +1 -1
  302. package/dist/internal/schema/annotations.js +2 -0
  303. package/dist/internal/schema/annotations.js.map +1 -1
  304. package/dist/internal/schema/schema.js +1 -0
  305. package/dist/internal/schema/schema.js.map +1 -1
  306. package/dist/internal/trie.js +5 -4
  307. package/dist/internal/trie.js.map +1 -1
  308. package/dist/testing/TestClock.d.ts +7 -6
  309. package/dist/testing/TestClock.d.ts.map +1 -1
  310. package/dist/testing/TestClock.js +6 -4
  311. package/dist/testing/TestClock.js.map +1 -1
  312. package/dist/testing/TestSchema.d.ts +8 -8
  313. package/dist/testing/TestSchema.d.ts.map +1 -1
  314. package/dist/testing/TestSchema.js.map +1 -1
  315. package/dist/unstable/ai/AiError.d.ts +128 -48
  316. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  317. package/dist/unstable/ai/AiError.js +11 -12
  318. package/dist/unstable/ai/AiError.js.map +1 -1
  319. package/dist/unstable/ai/Chat.d.ts +3 -3
  320. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  321. package/dist/unstable/ai/Chat.js +4 -3
  322. package/dist/unstable/ai/Chat.js.map +1 -1
  323. package/dist/unstable/ai/LanguageModel.d.ts +4 -2
  324. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  325. package/dist/unstable/ai/LanguageModel.js +86 -14
  326. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  327. package/dist/unstable/ai/McpSchema.d.ts +163 -87
  328. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  329. package/dist/unstable/ai/McpSchema.js +49 -12
  330. package/dist/unstable/ai/McpSchema.js.map +1 -1
  331. package/dist/unstable/ai/McpServer.d.ts +1 -1
  332. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  333. package/dist/unstable/ai/McpServer.js +35 -7
  334. package/dist/unstable/ai/McpServer.js.map +1 -1
  335. package/dist/unstable/ai/Model.d.ts +25 -7
  336. package/dist/unstable/ai/Model.d.ts.map +1 -1
  337. package/dist/unstable/ai/Model.js +22 -6
  338. package/dist/unstable/ai/Model.js.map +1 -1
  339. package/dist/unstable/ai/Prompt.d.ts +20 -20
  340. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  341. package/dist/unstable/ai/Response.d.ts +26 -26
  342. package/dist/unstable/ai/Response.d.ts.map +1 -1
  343. package/dist/unstable/ai/Response.js +1 -1
  344. package/dist/unstable/ai/Response.js.map +1 -1
  345. package/dist/unstable/ai/Tool.d.ts +19 -3
  346. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  347. package/dist/unstable/ai/Tool.js +14 -9
  348. package/dist/unstable/ai/Tool.js.map +1 -1
  349. package/dist/unstable/ai/index.d.ts +1 -1
  350. package/dist/unstable/ai/index.js +1 -1
  351. package/dist/unstable/cli/CliError.d.ts +5 -5
  352. package/dist/unstable/cli/CliOutput.js +59 -6
  353. package/dist/unstable/cli/CliOutput.js.map +1 -1
  354. package/dist/unstable/cli/Command.d.ts +276 -19
  355. package/dist/unstable/cli/Command.d.ts.map +1 -1
  356. package/dist/unstable/cli/Command.js +234 -36
  357. package/dist/unstable/cli/Command.js.map +1 -1
  358. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  359. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  360. package/dist/unstable/cli/GlobalFlag.js +118 -0
  361. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  362. package/dist/unstable/cli/HelpDoc.d.ts +70 -2
  363. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  364. package/dist/unstable/cli/index.d.ts +4 -0
  365. package/dist/unstable/cli/index.d.ts.map +1 -1
  366. package/dist/unstable/cli/index.js +4 -0
  367. package/dist/unstable/cli/index.js.map +1 -1
  368. package/dist/unstable/cli/internal/command.d.ts +17 -8
  369. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  370. package/dist/unstable/cli/internal/command.js +32 -23
  371. package/dist/unstable/cli/internal/command.js.map +1 -1
  372. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
  373. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  374. package/dist/unstable/cli/internal/help.d.ts +33 -0
  375. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  376. package/dist/unstable/cli/internal/help.js +107 -0
  377. package/dist/unstable/cli/internal/help.js.map +1 -0
  378. package/dist/unstable/cli/internal/parser.js +29 -36
  379. package/dist/unstable/cli/internal/parser.js.map +1 -1
  380. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  381. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  382. package/dist/unstable/cluster/ClusterCron.js +1 -1
  383. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  384. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  385. package/dist/unstable/cluster/ClusterWorkflowEngine.js +4 -3
  386. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  387. package/dist/unstable/cluster/Entity.d.ts +7 -6
  388. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  389. package/dist/unstable/cluster/Entity.js.map +1 -1
  390. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  391. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  392. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  393. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  394. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  395. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  396. package/dist/unstable/cluster/Message.d.ts +10 -10
  397. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  398. package/dist/unstable/cluster/MessageStorage.js +2 -1
  399. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  400. package/dist/unstable/cluster/Reply.d.ts +6 -6
  401. package/dist/unstable/cluster/Runner.d.ts +1 -1
  402. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  403. package/dist/unstable/cluster/Runners.js +4 -3
  404. package/dist/unstable/cluster/Runners.js.map +1 -1
  405. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  406. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  407. package/dist/unstable/cluster/Sharding.js +9 -7
  408. package/dist/unstable/cluster/Sharding.js.map +1 -1
  409. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  410. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  411. package/dist/unstable/cluster/ShardingConfig.js +20 -20
  412. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  413. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  414. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  415. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  416. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  417. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  418. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  419. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  420. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  421. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  422. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  423. package/dist/unstable/encoding/Ndjson.d.ts +1 -1
  424. package/dist/unstable/encoding/Sse.d.ts +4 -4
  425. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  426. package/dist/unstable/encoding/Sse.js +1 -1
  427. package/dist/unstable/encoding/Sse.js.map +1 -1
  428. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  429. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  430. package/dist/unstable/eventlog/EventLog.js +2 -1
  431. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  432. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  433. package/dist/unstable/http/Cookies.d.ts +3 -3
  434. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  435. package/dist/unstable/http/Cookies.js +2 -2
  436. package/dist/unstable/http/Cookies.js.map +1 -1
  437. package/dist/unstable/http/Headers.d.ts.map +1 -1
  438. package/dist/unstable/http/Headers.js +27 -10
  439. package/dist/unstable/http/Headers.js.map +1 -1
  440. package/dist/unstable/http/HttpBody.d.ts +17 -2
  441. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  442. package/dist/unstable/http/HttpBody.js +28 -1
  443. package/dist/unstable/http/HttpBody.js.map +1 -1
  444. package/dist/unstable/http/HttpClient.d.ts +37 -13
  445. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  446. package/dist/unstable/http/HttpClient.js +4 -4
  447. package/dist/unstable/http/HttpClient.js.map +1 -1
  448. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  449. package/dist/unstable/http/HttpClientRequest.d.ts +27 -11
  450. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  451. package/dist/unstable/http/HttpClientRequest.js +15 -3
  452. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  453. package/dist/unstable/http/HttpEffect.d.ts +3 -8
  454. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  455. package/dist/unstable/http/HttpEffect.js +42 -56
  456. package/dist/unstable/http/HttpEffect.js.map +1 -1
  457. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  458. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  459. package/dist/unstable/http/HttpMethod.js +3 -3
  460. package/dist/unstable/http/HttpMethod.js.map +1 -1
  461. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  462. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  463. package/dist/unstable/http/HttpMiddleware.js +8 -17
  464. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  465. package/dist/unstable/http/HttpServerError.d.ts +20 -33
  466. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  467. package/dist/unstable/http/HttpServerError.js +37 -44
  468. package/dist/unstable/http/HttpServerError.js.map +1 -1
  469. package/dist/unstable/http/HttpServerRequest.d.ts +1 -1
  470. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  471. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  472. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  473. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  474. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  475. package/dist/unstable/http/HttpServerResponse.d.ts +2 -1
  476. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  477. package/dist/unstable/http/HttpServerResponse.js +3 -1
  478. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  479. package/dist/unstable/http/Multipart.d.ts +3 -3
  480. package/dist/unstable/http/UrlParams.d.ts +14 -6
  481. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  482. package/dist/unstable/http/UrlParams.js +1 -1
  483. package/dist/unstable/http/UrlParams.js.map +1 -1
  484. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  485. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  486. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  487. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  488. package/dist/unstable/httpapi/HttpApi.d.ts +3 -3
  489. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  490. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  491. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  492. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  493. package/dist/unstable/httpapi/HttpApiBuilder.js +23 -12
  494. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  495. package/dist/unstable/httpapi/HttpApiClient.d.ts +7 -2
  496. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  497. package/dist/unstable/httpapi/HttpApiClient.js +3 -3
  498. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  499. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +31 -44
  500. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  501. package/dist/unstable/httpapi/HttpApiEndpoint.js +15 -24
  502. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  503. package/dist/unstable/httpapi/HttpApiError.d.ts +11 -0
  504. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  505. package/dist/unstable/httpapi/HttpApiError.js +29 -9
  506. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  507. package/dist/unstable/httpapi/HttpApiGroup.d.ts +3 -3
  508. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  509. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  510. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
  511. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  512. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  513. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  514. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  515. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  516. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  517. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  518. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  519. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  520. package/dist/unstable/httpapi/OpenApi.js +32 -21
  521. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  522. package/dist/unstable/observability/Otlp.d.ts +12 -12
  523. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  524. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  525. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  526. package/dist/unstable/observability/OtlpExporter.js +1 -1
  527. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  528. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  529. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  530. package/dist/unstable/observability/OtlpLogger.js +7 -4
  531. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  532. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  533. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  534. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  535. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  536. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  537. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  538. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  539. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  540. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  541. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  542. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  543. package/dist/unstable/persistence/PersistedCache.js +2 -1
  544. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  545. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  546. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  547. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  548. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  549. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  550. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  551. package/dist/unstable/persistence/Persistence.js +2 -2
  552. package/dist/unstable/persistence/Persistence.js.map +1 -1
  553. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  554. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  555. package/dist/unstable/persistence/RateLimiter.js +1 -1
  556. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  557. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  558. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  559. package/dist/unstable/process/ChildProcess.js +1 -65
  560. package/dist/unstable/process/ChildProcess.js.map +1 -1
  561. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  562. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  563. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  564. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  565. package/dist/unstable/reactivity/Atom.d.ts +10 -10
  566. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  567. package/dist/unstable/reactivity/Atom.js +16 -13
  568. package/dist/unstable/reactivity/Atom.js.map +1 -1
  569. package/dist/unstable/reactivity/AtomHttpApi.d.ts +8 -8
  570. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  571. package/dist/unstable/reactivity/AtomHttpApi.js +3 -3
  572. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  573. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  574. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  575. package/dist/unstable/reactivity/AtomRegistry.js +24 -7
  576. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  577. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  578. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  579. package/dist/unstable/reactivity/AtomRpc.js +1 -1
  580. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  581. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  582. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  583. package/dist/unstable/reactivity/Hydration.js +76 -0
  584. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  585. package/dist/unstable/reactivity/index.d.ts +4 -0
  586. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  587. package/dist/unstable/reactivity/index.js +4 -0
  588. package/dist/unstable/reactivity/index.js.map +1 -1
  589. package/dist/unstable/rpc/Rpc.d.ts +4 -4
  590. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  591. package/dist/unstable/rpc/Rpc.js.map +1 -1
  592. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  593. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  594. package/dist/unstable/rpc/RpcClient.js +6 -13
  595. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  596. package/dist/unstable/rpc/RpcGroup.d.ts +2 -2
  597. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  598. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  599. package/dist/unstable/rpc/RpcMiddleware.d.ts +3 -3
  600. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  601. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  602. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  603. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  604. package/dist/unstable/rpc/RpcSchema.js +14 -0
  605. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  606. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  607. package/dist/unstable/rpc/RpcSerialization.js +34 -9
  608. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  609. package/dist/unstable/rpc/RpcServer.d.ts +0 -7
  610. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  611. package/dist/unstable/rpc/RpcServer.js +15 -15
  612. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  613. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  614. package/dist/unstable/rpc/Utils.js +2 -1
  615. package/dist/unstable/rpc/Utils.js.map +1 -1
  616. package/dist/unstable/schema/Model.d.ts +1 -1
  617. package/dist/unstable/schema/Model.d.ts.map +1 -1
  618. package/dist/unstable/schema/VariantSchema.d.ts +3 -3
  619. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  620. package/dist/unstable/schema/VariantSchema.js +3 -3
  621. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  622. package/dist/unstable/socket/Socket.d.ts +4 -4
  623. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  624. package/dist/unstable/socket/Socket.js +6 -5
  625. package/dist/unstable/socket/Socket.js.map +1 -1
  626. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  627. package/dist/unstable/sql/Migrator.d.ts +1 -1
  628. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  629. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  630. package/dist/unstable/sql/SqlError.d.ts +14 -14
  631. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  632. package/dist/unstable/sql/SqlError.js +9 -3
  633. package/dist/unstable/sql/SqlError.js.map +1 -1
  634. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  635. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  636. package/dist/unstable/sql/SqlModel.js +3 -3
  637. package/dist/unstable/sql/SqlModel.js.map +1 -1
  638. package/dist/unstable/sql/SqlSchema.d.ts +16 -5
  639. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  640. package/dist/unstable/sql/SqlSchema.js +17 -7
  641. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  642. package/dist/unstable/sql/Statement.js +0 -1
  643. package/dist/unstable/sql/Statement.js.map +1 -1
  644. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  645. package/dist/unstable/workers/Worker.js +2 -1
  646. package/dist/unstable/workers/Worker.js.map +1 -1
  647. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  648. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  649. package/dist/unstable/workflow/DurableClock.js +3 -3
  650. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  651. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  652. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  653. package/dist/unstable/workflow/Workflow.d.ts +3 -3
  654. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  655. package/dist/unstable/workflow/Workflow.js +1 -1
  656. package/dist/unstable/workflow/Workflow.js.map +1 -1
  657. package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
  658. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  659. package/dist/unstable/workflow/WorkflowEngine.js +137 -1
  660. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  661. package/package.json +2 -2
  662. package/src/Array.ts +190 -342
  663. package/src/Cache.ts +9 -8
  664. package/src/Cause.ts +1 -1
  665. package/src/Channel.ts +554 -138
  666. package/src/Chunk.ts +81 -268
  667. package/src/Combiner.ts +280 -13
  668. package/src/Config.ts +183 -21
  669. package/src/Data.ts +538 -374
  670. package/src/DateTime.ts +24 -164
  671. package/src/Duration.ts +15 -15
  672. package/src/Effect.ts +991 -800
  673. package/src/Encoding.ts +879 -0
  674. package/src/Equal.ts +278 -111
  675. package/src/ErrorReporter.ts +459 -0
  676. package/src/Fiber.ts +9 -2
  677. package/src/FileSystem.ts +7 -8
  678. package/src/Filter.ts +48 -58
  679. package/src/Formatter.ts +253 -51
  680. package/src/Graph.ts +24 -11
  681. package/src/HashMap.ts +15 -14
  682. package/src/Iterable.ts +105 -50
  683. package/src/JsonSchema.ts +383 -10
  684. package/src/Latch.ts +112 -0
  685. package/src/Layer.ts +11 -15
  686. package/src/LayerMap.ts +5 -5
  687. package/src/LogLevel.ts +37 -0
  688. package/src/Logger.ts +33 -100
  689. package/src/ManagedRuntime.ts +1 -1
  690. package/src/Metric.ts +4 -4
  691. package/src/Optic.ts +948 -19
  692. package/src/Option.ts +30 -20
  693. package/src/Pipeable.ts +32 -1
  694. package/src/PlatformError.ts +5 -5
  695. package/src/Pool.ts +13 -11
  696. package/src/PubSub.ts +10 -9
  697. package/src/Pull.ts +1 -1
  698. package/src/Queue.ts +0 -1
  699. package/src/Random.ts +51 -14
  700. package/src/RcMap.ts +5 -5
  701. package/src/RcRef.ts +1 -1
  702. package/src/Record.ts +43 -152
  703. package/src/Reducer.ts +166 -7
  704. package/src/References.ts +4 -4
  705. package/src/Request.ts +3 -2
  706. package/src/RequestResolver.ts +9 -29
  707. package/src/Result.ts +13 -0
  708. package/src/Schedule.ts +318 -160
  709. package/src/Schema.ts +661 -116
  710. package/src/SchemaAST.ts +7 -6
  711. package/src/SchemaGetter.ts +12 -14
  712. package/src/SchemaParser.ts +11 -0
  713. package/src/SchemaRepresentation.ts +43 -24
  714. package/src/SchemaTransformation.ts +189 -4
  715. package/src/ScopedCache.ts +3 -3
  716. package/src/Semaphore.ts +356 -0
  717. package/src/ServiceMap.ts +47 -38
  718. package/src/Sink.ts +78 -26
  719. package/src/Stream.ts +566 -601
  720. package/src/Struct.ts +26 -0
  721. package/src/SubscriptionRef.ts +3 -2
  722. package/src/SynchronizedRef.ts +3 -2
  723. package/src/Trie.ts +18 -17
  724. package/src/TxChunk.ts +72 -53
  725. package/src/TxDeferred.ts +394 -0
  726. package/src/TxHashMap.ts +332 -285
  727. package/src/TxHashSet.ts +111 -116
  728. package/src/TxPriorityQueue.ts +767 -0
  729. package/src/TxPubSub.ts +789 -0
  730. package/src/TxQueue.ts +241 -251
  731. package/src/TxReentrantLock.ts +753 -0
  732. package/src/TxRef.ts +50 -38
  733. package/src/TxSemaphore.ts +29 -32
  734. package/src/TxSubscriptionRef.ts +639 -0
  735. package/src/Types.ts +78 -2
  736. package/src/index.ts +600 -21
  737. package/src/internal/core.ts +12 -5
  738. package/src/internal/dateTime.ts +9 -30
  739. package/src/internal/effect.ts +744 -265
  740. package/src/internal/hashMap.ts +9 -7
  741. package/src/internal/random.ts +20 -0
  742. package/src/internal/rcRef.ts +4 -3
  743. package/src/internal/request.ts +2 -2
  744. package/src/internal/schema/annotations.ts +2 -0
  745. package/src/internal/schema/schema.ts +1 -0
  746. package/src/internal/trie.ts +16 -9
  747. package/src/testing/TestClock.ts +13 -11
  748. package/src/testing/TestSchema.ts +10 -10
  749. package/src/unstable/ai/AiError.ts +97 -44
  750. package/src/unstable/ai/Chat.ts +12 -11
  751. package/src/unstable/ai/LanguageModel.ts +129 -25
  752. package/src/unstable/ai/McpSchema.ts +59 -13
  753. package/src/unstable/ai/McpServer.ts +48 -9
  754. package/src/unstable/ai/Model.ts +40 -9
  755. package/src/unstable/ai/Prompt.ts +37 -37
  756. package/src/unstable/ai/Response.ts +25 -25
  757. package/src/unstable/ai/Tool.ts +19 -13
  758. package/src/unstable/ai/index.ts +1 -1
  759. package/src/unstable/cli/CliOutput.ts +75 -6
  760. package/src/unstable/cli/Command.ts +501 -60
  761. package/src/unstable/cli/GlobalFlag.ts +243 -0
  762. package/src/unstable/cli/HelpDoc.ts +80 -2
  763. package/src/unstable/cli/index.ts +5 -0
  764. package/src/unstable/cli/internal/command.ts +50 -34
  765. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
  766. package/src/unstable/cli/internal/help.ts +146 -0
  767. package/src/unstable/cli/internal/parser.ts +33 -54
  768. package/src/unstable/cluster/ClusterCron.ts +2 -2
  769. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -4
  770. package/src/unstable/cluster/Entity.ts +11 -10
  771. package/src/unstable/cluster/EntityResource.ts +4 -4
  772. package/src/unstable/cluster/Envelope.ts +1 -1
  773. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  774. package/src/unstable/cluster/MessageStorage.ts +3 -5
  775. package/src/unstable/cluster/Runners.ts +6 -5
  776. package/src/unstable/cluster/Sharding.ts +12 -10
  777. package/src/unstable/cluster/ShardingConfig.ts +30 -31
  778. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  779. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  780. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  781. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  782. package/src/unstable/encoding/Sse.ts +3 -5
  783. package/src/unstable/eventlog/EventLog.ts +2 -1
  784. package/src/unstable/http/Cookies.ts +3 -3
  785. package/src/unstable/http/Headers.ts +28 -13
  786. package/src/unstable/http/HttpBody.ts +42 -1
  787. package/src/unstable/http/HttpClient.ts +58 -23
  788. package/src/unstable/http/HttpClientRequest.ts +38 -13
  789. package/src/unstable/http/HttpEffect.ts +46 -68
  790. package/src/unstable/http/HttpMethod.ts +16 -4
  791. package/src/unstable/http/HttpMiddleware.ts +9 -24
  792. package/src/unstable/http/HttpServerError.ts +42 -45
  793. package/src/unstable/http/HttpServerRequest.ts +1 -1
  794. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  795. package/src/unstable/http/HttpServerResponse.ts +4 -2
  796. package/src/unstable/http/Multipart.ts +2 -2
  797. package/src/unstable/http/UrlParams.ts +20 -5
  798. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  799. package/src/unstable/httpapi/HttpApi.ts +5 -5
  800. package/src/unstable/httpapi/HttpApiBuilder.ts +77 -21
  801. package/src/unstable/httpapi/HttpApiClient.ts +14 -6
  802. package/src/unstable/httpapi/HttpApiEndpoint.ts +67 -83
  803. package/src/unstable/httpapi/HttpApiError.ts +30 -9
  804. package/src/unstable/httpapi/HttpApiGroup.ts +6 -6
  805. package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
  806. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  807. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  808. package/src/unstable/httpapi/OpenApi.ts +41 -23
  809. package/src/unstable/observability/Otlp.ts +12 -12
  810. package/src/unstable/observability/OtlpExporter.ts +3 -3
  811. package/src/unstable/observability/OtlpLogger.ts +13 -9
  812. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  813. package/src/unstable/observability/OtlpTracer.ts +4 -4
  814. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  815. package/src/unstable/persistence/Persistable.ts +2 -2
  816. package/src/unstable/persistence/PersistedCache.ts +20 -9
  817. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  818. package/src/unstable/persistence/Persistence.ts +3 -3
  819. package/src/unstable/persistence/RateLimiter.ts +4 -4
  820. package/src/unstable/process/ChildProcess.ts +6 -208
  821. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  822. package/src/unstable/reactivity/Atom.ts +27 -25
  823. package/src/unstable/reactivity/AtomHttpApi.ts +21 -20
  824. package/src/unstable/reactivity/AtomRegistry.ts +31 -7
  825. package/src/unstable/reactivity/AtomRpc.ts +3 -3
  826. package/src/unstable/reactivity/Hydration.ts +112 -0
  827. package/src/unstable/reactivity/index.ts +5 -0
  828. package/src/unstable/rpc/Rpc.ts +6 -6
  829. package/src/unstable/rpc/RpcClient.ts +12 -54
  830. package/src/unstable/rpc/RpcGroup.ts +4 -4
  831. package/src/unstable/rpc/RpcMiddleware.ts +3 -3
  832. package/src/unstable/rpc/RpcSchema.ts +17 -0
  833. package/src/unstable/rpc/RpcSerialization.ts +44 -9
  834. package/src/unstable/rpc/RpcServer.ts +21 -30
  835. package/src/unstable/rpc/Utils.ts +2 -1
  836. package/src/unstable/schema/VariantSchema.ts +6 -6
  837. package/src/unstable/socket/Socket.ts +16 -17
  838. package/src/unstable/sql/SqlClient.ts +1 -1
  839. package/src/unstable/sql/SqlError.ts +11 -9
  840. package/src/unstable/sql/SqlModel.ts +5 -5
  841. package/src/unstable/sql/SqlSchema.ts +41 -25
  842. package/src/unstable/sql/Statement.ts +0 -1
  843. package/src/unstable/workers/Worker.ts +2 -1
  844. package/src/unstable/workflow/DurableClock.ts +8 -8
  845. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  846. package/src/unstable/workflow/Workflow.ts +6 -2
  847. package/src/unstable/workflow/WorkflowEngine.ts +185 -2
  848. package/dist/PartitionedSemaphore.d.ts +0 -52
  849. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  850. package/dist/PartitionedSemaphore.js.map +0 -1
  851. package/dist/encoding/Base64.d.ts +0 -67
  852. package/dist/encoding/Base64.d.ts.map +0 -1
  853. package/dist/encoding/Base64.js +0 -146
  854. package/dist/encoding/Base64.js.map +0 -1
  855. package/dist/encoding/Base64Url.d.ts +0 -60
  856. package/dist/encoding/Base64Url.d.ts.map +0 -1
  857. package/dist/encoding/Base64Url.js +0 -89
  858. package/dist/encoding/Base64Url.js.map +0 -1
  859. package/dist/encoding/EncodingError.d.ts +0 -31
  860. package/dist/encoding/EncodingError.d.ts.map +0 -1
  861. package/dist/encoding/EncodingError.js +0 -22
  862. package/dist/encoding/EncodingError.js.map +0 -1
  863. package/dist/encoding/Hex.d.ts +0 -61
  864. package/dist/encoding/Hex.d.ts.map +0 -1
  865. package/dist/encoding/Hex.js +0 -115
  866. package/dist/encoding/Hex.js.map +0 -1
  867. package/dist/encoding/index.d.ts +0 -26
  868. package/dist/encoding/index.d.ts.map +0 -1
  869. package/dist/encoding/index.js +0 -27
  870. package/dist/encoding/index.js.map +0 -1
  871. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  872. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  873. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  874. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  875. package/src/PartitionedSemaphore.ts +0 -182
  876. package/src/encoding/Base64.ts +0 -366
  877. package/src/encoding/Base64Url.ts +0 -104
  878. package/src/encoding/EncodingError.ts +0 -35
  879. package/src/encoding/Hex.ts +0 -390
  880. package/src/encoding/index.ts +0 -31
  881. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
@@ -4,7 +4,7 @@
4
4
  import * as Arr from "../../Array.ts"
5
5
  import * as Cause from "../../Cause.ts"
6
6
  import { Clock } from "../../Clock.ts"
7
- import type { DurationInput } from "../../Duration.ts"
7
+ import type { Input } from "../../Duration.ts"
8
8
  import * as Duration from "../../Duration.ts"
9
9
  import * as Effect from "../../Effect.ts"
10
10
  import * as Equal from "../../Equal.ts"
@@ -13,6 +13,7 @@ import * as Fiber from "../../Fiber.ts"
13
13
  import * as FiberMap from "../../FiberMap.ts"
14
14
  import { constant, flow } from "../../Function.ts"
15
15
  import * as HashRing from "../../HashRing.ts"
16
+ import * as Latch from "../../Latch.ts"
16
17
  import * as Layer from "../../Layer.ts"
17
18
  import * as MutableHashMap from "../../MutableHashMap.ts"
18
19
  import * as MutableHashSet from "../../MutableHashSet.ts"
@@ -23,6 +24,7 @@ import { CurrentLogAnnotations } from "../../References.ts"
23
24
  import * as Result from "../../Result.ts"
24
25
  import * as Schedule from "../../Schedule.ts"
25
26
  import * as Scope from "../../Scope.ts"
27
+ import * as Semaphore from "../../Semaphore.ts"
26
28
  import * as ServiceMap from "../../ServiceMap.ts"
27
29
  import * as Stream from "../../Stream.ts"
28
30
  import type * as Rpc from "../rpc/Rpc.ts"
@@ -113,7 +115,7 @@ export class Sharding extends ServiceMap.Service<Sharding, {
113
115
  entity: Entity<Type, Rpcs>,
114
116
  handlers: Effect.Effect<Handlers, never, RX>,
115
117
  options?: {
116
- readonly maxIdleTime?: DurationInput | undefined
118
+ readonly maxIdleTime?: Input | undefined
117
119
  readonly concurrency?: number | "unbounded" | undefined
118
120
  readonly mailboxCapacity?: number | "unbounded" | undefined
119
121
  readonly disableFatalDefects?: boolean | undefined
@@ -221,7 +223,7 @@ const make = Effect.gen(function*() {
221
223
 
222
224
  // the active shards are the ones that we have acquired the lock for
223
225
  const acquiredShards = MutableHashSet.empty<ShardId>()
224
- const activeShardsLatch = yield* Effect.makeLatch(false)
226
+ const activeShardsLatch = yield* Latch.make(false)
225
227
 
226
228
  const events = yield* PubSub.unbounded<ShardingRegistrationEvent>()
227
229
  const getRegistrationEvents: Stream.Stream<ShardingRegistrationEvent> = Stream.fromPubSub(events)
@@ -429,16 +431,16 @@ const make = Effect.gen(function*() {
429
431
  // It should also be shutdown after the entity managers, to ensure interrupt
430
432
  // & ack envelopes can still be processed.
431
433
 
432
- const storageReadLatch = yield* Effect.makeLatch(true)
434
+ const storageReadLatch = yield* Latch.make(true)
433
435
  const openStorageReadLatch = constant(Effect.asVoid(storageReadLatch.open))
434
436
 
435
- const storageReadLock = Effect.makeSemaphoreUnsafe(1)
437
+ const storageReadLock = Semaphore.makeUnsafe(1)
436
438
  const withStorageReadLock = storageReadLock.withPermits(1)
437
439
 
438
440
  if (storageEnabled && config.runnerAddress) {
439
441
  const selfAddress = config.runnerAddress
440
442
  const entityRegistrationTimeoutMillis = Duration.toMillis(
441
- Duration.fromDurationInputUnsafe(config.entityRegistrationTimeout)
443
+ Duration.fromInputUnsafe(config.entityRegistrationTimeout)
442
444
  )
443
445
  const storageStartMillis = clock.currentTimeMillisUnsafe()
444
446
 
@@ -810,7 +812,7 @@ const make = Effect.gen(function*() {
810
812
  void,
811
813
  MailboxFull | AlreadyProcessingMessage | PersistenceError
812
814
  > {
813
- return Effect.catchIf(
815
+ return Effect.catchFilter(
814
816
  Effect.suspend(() => {
815
817
  const address = message.envelope.address
816
818
  const isPersisted = ServiceMap.get(message.rpc.annotations, Persisted)
@@ -1182,7 +1184,7 @@ const make = Effect.gen(function*() {
1182
1184
 
1183
1185
  const singletons = new Map<ShardId, MutableHashMap.MutableHashMap<SingletonAddress, Effect.Effect<void>>>()
1184
1186
  const singletonFibers = yield* FiberMap.make<SingletonAddress>()
1185
- const withSingletonLock = Effect.makeSemaphoreUnsafe(1).withPermits(1)
1187
+ const withSingletonLock = Semaphore.makeUnsafe(1).withPermits(1)
1186
1188
 
1187
1189
  const registerSingleton: Sharding["Service"]["registerSingleton"] = Effect.fnUntraced(
1188
1190
  function*(name, run, options) {
@@ -1253,7 +1255,7 @@ const make = Effect.gen(function*() {
1253
1255
  // --- Entities ---
1254
1256
 
1255
1257
  const reaper = yield* EntityReaper
1256
- const entityManagerLatches = new Map<string, Effect.Latch>()
1258
+ const entityManagerLatches = new Map<string, Latch.Latch>()
1257
1259
 
1258
1260
  const registerEntity: Sharding["Service"]["registerEntity"] = Effect.fnUntraced(
1259
1261
  function*(entity, build, options) {
@@ -1310,7 +1312,7 @@ const make = Effect.gen(function*() {
1310
1312
  const waitForEntityManager = (entityType: string) => {
1311
1313
  let latch = entityManagerLatches.get(entityType)
1312
1314
  if (!latch) {
1313
- latch = Effect.makeLatchUnsafe()
1315
+ latch = Latch.makeUnsafe()
1314
1316
  entityManagerLatches.set(entityType, latch)
1315
1317
  }
1316
1318
  return latch.await
@@ -3,7 +3,6 @@
3
3
  */
4
4
  import * as Config from "../../Config.ts"
5
5
  import * as ConfigProvider from "../../ConfigProvider.ts"
6
- import type { DurationInput } from "../../Duration.ts"
7
6
  import * as Duration from "../../Duration.ts"
8
7
  import * as Effect from "../../Effect.ts"
9
8
  import * as Layer from "../../Layer.ts"
@@ -58,11 +57,11 @@ export class ShardingConfig extends ServiceMap.Service<ShardingConfig, {
58
57
  /**
59
58
  * Shard lock refresh interval.
60
59
  */
61
- readonly shardLockRefreshInterval: DurationInput
60
+ readonly shardLockRefreshInterval: Duration.Input
62
61
  /**
63
62
  * Shard lock expiration duration.
64
63
  */
65
- readonly shardLockExpiration: DurationInput
64
+ readonly shardLockExpiration: Duration.Input
66
65
  /**
67
66
  * Disable the use of advisory locks for shard locking.
68
67
  */
@@ -81,41 +80,41 @@ export class ShardingConfig extends ServiceMap.Service<ShardingConfig, {
81
80
  * The maximum duration of inactivity (i.e. without receiving a message)
82
81
  * after which an entity will be interrupted.
83
82
  */
84
- readonly entityMaxIdleTime: DurationInput
83
+ readonly entityMaxIdleTime: Duration.Input
85
84
  /**
86
85
  * If an entity does not register itself within this time after a message is
87
86
  * sent to it, the message will be marked as failed.
88
87
  *
89
88
  * Defaults to 1 minute.
90
89
  */
91
- readonly entityRegistrationTimeout: DurationInput
90
+ readonly entityRegistrationTimeout: Duration.Input
92
91
  /**
93
92
  * The maximum duration of time to wait for an entity to terminate.
94
93
  *
95
94
  * By default this is set to 15 seconds to stay within kubernetes defaults.
96
95
  */
97
- readonly entityTerminationTimeout: DurationInput
96
+ readonly entityTerminationTimeout: Duration.Input
98
97
  /**
99
98
  * The interval at which to poll for unprocessed messages from storage.
100
99
  */
101
- readonly entityMessagePollInterval: DurationInput
100
+ readonly entityMessagePollInterval: Duration.Input
102
101
  /**
103
102
  * The interval at which to poll for client replies from storage.
104
103
  */
105
- readonly entityReplyPollInterval: DurationInput
104
+ readonly entityReplyPollInterval: Duration.Input
106
105
  /**
107
106
  * The interval at which to poll for new runners and refresh shard
108
107
  * assignments.
109
108
  */
110
- readonly refreshAssignmentsInterval: DurationInput
109
+ readonly refreshAssignmentsInterval: Duration.Input
111
110
  /**
112
111
  * The interval to retry a send if EntityNotAssignedToRunner is returned.
113
112
  */
114
- readonly sendRetryInterval: DurationInput
113
+ readonly sendRetryInterval: Duration.Input
115
114
  /**
116
115
  * The interval at which to check for unhealthy runners and report them
117
116
  */
118
- readonly runnerHealthCheckInterval: DurationInput
117
+ readonly runnerHealthCheckInterval: Duration.Input
119
118
  /**
120
119
  * Simulate serialization and deserialization to remote runners for local
121
120
  * entities.
@@ -171,11 +170,11 @@ export const layerDefaults: Layer.Layer<ShardingConfig> = layer()
171
170
  export const config: Config.Config<ShardingConfig["Service"]> = Config.all({
172
171
  runnerAddress: Config.all({
173
172
  host: Config.string("host").pipe(
174
- Config.withDefault(() => defaultRunnerAddress.host)
173
+ Config.withDefault(defaultRunnerAddress.host)
175
174
  // Config.withDescription("The hostname or IP address of the runner.")
176
175
  ),
177
176
  port: Config.int("port").pipe(
178
- Config.withDefault(() => defaultRunnerAddress.port)
177
+ Config.withDefault(defaultRunnerAddress.port)
179
178
  // Config.withDescription("The port used for inter-runner communication.")
180
179
  )
181
180
  }).pipe(Config.map((options) => RunnerAddress.makeUnsafe(options)), Config.option, Config.map(Option.getOrUndefined)),
@@ -183,79 +182,79 @@ export const config: Config.Config<ShardingConfig["Service"]> = Config.all({
183
182
  host: Config.string("listenHost"),
184
183
  // Config.withDescription("The host to listen on.")
185
184
  port: Config.int("listenPort").pipe(
186
- Config.withDefault(() => defaultRunnerAddress.port)
185
+ Config.withDefault(defaultRunnerAddress.port)
187
186
  // Config.withDescription("The port to listen on.")
188
187
  )
189
188
  }).pipe(Config.map((options) => RunnerAddress.makeUnsafe(options)), Config.option, Config.map(Option.getOrUndefined)),
190
189
  runnerShardWeight: Config.int("runnerShardWeight").pipe(
191
- Config.withDefault(() => defaults.runnerShardWeight)
190
+ Config.withDefault(defaults.runnerShardWeight)
192
191
  // Config.withDescription("A number that determines how many shards this runner will be assigned relative to other runners.")
193
192
  ),
194
193
  shardGroups: Config.schema(Schema.Array(Schema.String), "shardGroups").pipe(
195
- Config.withDefault(() => ["default"])
194
+ Config.withDefault(["default"])
196
195
  // Config.withDescription("The shard groups that are assigned to this runner.")
197
196
  ),
198
197
  shardsPerGroup: Config.int("shardsPerGroup").pipe(
199
- Config.withDefault(() => defaults.shardsPerGroup)
198
+ Config.withDefault(defaults.shardsPerGroup)
200
199
  // Config.withDescription("The number of shards to allocate per shard group.")
201
200
  ),
202
201
  shardLockRefreshInterval: Config.duration("shardLockRefreshInterval").pipe(
203
- Config.withDefault(() => defaults.shardLockRefreshInterval)
202
+ Config.withDefault(defaults.shardLockRefreshInterval)
204
203
  // Config.withDescription("Shard lock refresh interval.")
205
204
  ),
206
205
  shardLockExpiration: Config.duration("shardLockExpiration").pipe(
207
- Config.withDefault(() => defaults.shardLockExpiration)
206
+ Config.withDefault(defaults.shardLockExpiration)
208
207
  // Config.withDescription("Shard lock expiration duration.")
209
208
  ),
210
209
  shardLockDisableAdvisory: Config.boolean("shardLockDisableAdvisory").pipe(
211
- Config.withDefault(() => defaults.shardLockDisableAdvisory)
210
+ Config.withDefault(defaults.shardLockDisableAdvisory)
212
211
  // Config.withDescription("Disable the use of advisory locks for shard locking.")
213
212
  ),
214
213
  preemptiveShutdown: Config.boolean("preemptiveShutdown").pipe(
215
- Config.withDefault(() => defaults.preemptiveShutdown)
214
+ Config.withDefault(defaults.preemptiveShutdown)
216
215
  // Config.withDescription("Start shutting down as soon as an Entity has started shutting down.")
217
216
  ),
218
217
  entityMailboxCapacity: Config.int("entityMailboxCapacity").pipe(
219
- Config.withDefault(() => defaults.entityMailboxCapacity)
218
+ Config.withDefault(defaults.entityMailboxCapacity)
220
219
  // Config.withDescription("The default capacity of the mailbox for entities.")
221
220
  ),
222
221
  entityMaxIdleTime: Config.duration("entityMaxIdleTime").pipe(
223
- Config.withDefault(() => defaults.entityMaxIdleTime)
222
+ Config.withDefault(defaults.entityMaxIdleTime)
224
223
  // Config.withDescription(
225
224
  // "The maximum duration of inactivity (i.e. without receiving a message) after which an entity will be interrupted."
226
225
  // )
227
226
  ),
228
227
  entityRegistrationTimeout: Config.duration("entityRegistrationTimeout").pipe(
229
- Config.withDefault(() => defaults.entityRegistrationTimeout)
228
+ Config.withDefault(defaults.entityRegistrationTimeout)
230
229
  // Config.withDescription("If an entity does not register itself within this time after a message is sent to it, the message will be marked as failed.")
231
230
  ),
232
231
  entityTerminationTimeout: Config.duration("entityTerminationTimeout").pipe(
233
- Config.withDefault(() => defaults.entityTerminationTimeout)
232
+ Config.withDefault(defaults.entityTerminationTimeout)
234
233
  // Config.withDescription("The maximum duration of time to wait for an entity to terminate.")
235
234
  ),
236
235
  entityMessagePollInterval: Config.duration("entityMessagePollInterval").pipe(
237
- Config.withDefault(() => defaults.entityMessagePollInterval)
236
+ Config.withDefault(defaults.entityMessagePollInterval)
238
237
  // Config.withDescription("The interval at which to poll for unprocessed messages from storage.")
239
238
  ),
240
239
  entityReplyPollInterval: Config.duration("entityReplyPollInterval").pipe(
241
- Config.withDefault(() => defaults.entityReplyPollInterval)
240
+ Config.withDefault(defaults.entityReplyPollInterval)
242
241
  // Config.withDescription("The interval at which to poll for client replies from storage.")
243
242
  ),
244
243
  sendRetryInterval: Config.duration("sendRetryInterval").pipe(
245
- Config.withDefault(() => defaults.sendRetryInterval)
244
+ Config.withDefault(defaults.sendRetryInterval)
246
245
  // Config.withDescription("The interval to retry a send if EntityNotManagedByRunner is returned.")
247
246
  ),
248
247
  refreshAssignmentsInterval: Config.duration("refreshAssignmentsInterval").pipe(
249
- Config.withDefault(() => defaults.refreshAssignmentsInterval)
248
+ Config.withDefault(defaults.refreshAssignmentsInterval)
250
249
  // Config.withDescription("The interval at which to refresh shard assignments.")
251
250
  ),
252
251
  runnerHealthCheckInterval: Config.duration("runnerHealthCheckInterval").pipe(
253
- Config.withDefault(() => defaults.runnerHealthCheckInterval)
252
+ Config.withDefault(defaults.runnerHealthCheckInterval)
254
253
  // Config.withDescription("The interval at which to check for unhealthy runners and report them.")
255
254
  ),
256
255
  // unhealthyRunnerReportInterval: Config.duration("unhealthyRunnerReportInterval").pipe(
257
256
  simulateRemoteSerialization: Config.boolean("simulateRemoteSerialization").pipe(
258
- Config.withDefault(() => defaults.simulateRemoteSerialization)
257
+ Config.withDefault(defaults.simulateRemoteSerialization)
259
258
  // Config.withDescription("Simulate serialization and deserialization to remote runners for local entities.")
260
259
  )
261
260
  })
@@ -166,7 +166,7 @@ export const make = Effect.fnUntraced(function*(options: {
166
166
 
167
167
  const expiresSeconds = sql.literal(
168
168
  Math.ceil(Duration.toSeconds(
169
- Duration.fromDurationInputUnsafe(config.shardLockExpiration)
169
+ Duration.fromInputUnsafe(config.shardLockExpiration)
170
170
  )).toString()
171
171
  )
172
172
  const lockExpiresAt = sql.onDialectOrElse({
@@ -2,12 +2,13 @@ import * as Arr from "../../../Array.ts"
2
2
  import * as Cause from "../../../Cause.ts"
3
3
  import { Clock } from "../../../Clock.ts"
4
4
  import * as Duration from "../../../Duration.ts"
5
- import type { DurationInput } from "../../../Duration.ts"
5
+ import type { Input } from "../../../Duration.ts"
6
6
  import * as Effect from "../../../Effect.ts"
7
7
  import * as Equal from "../../../Equal.ts"
8
8
  import * as Exit from "../../../Exit.ts"
9
9
  import * as Fiber from "../../../Fiber.ts"
10
10
  import { identity } from "../../../Function.ts"
11
+ import * as Latch from "../../../Latch.ts"
11
12
  import * as Metric from "../../../Metric.ts"
12
13
  import * as Option from "../../../Option.ts"
13
14
  import { CurrentLogAnnotations } from "../../../References.ts"
@@ -75,7 +76,7 @@ export type EntityState = {
75
76
  }>
76
77
  lastActiveCheck: number
77
78
  write: RpcServer.RpcServer<any>["write"]
78
- readonly keepAliveLatch: Effect.Latch
79
+ readonly keepAliveLatch: Latch.Latch
79
80
  keepAliveEnabled: boolean
80
81
  }
81
82
 
@@ -92,7 +93,7 @@ export const make = Effect.fnUntraced(function*<
92
93
  readonly sharding: Sharding["Service"]
93
94
  readonly storage: MessageStorage.MessageStorage["Service"]
94
95
  readonly runnerAddress: RunnerAddress
95
- readonly maxIdleTime?: DurationInput | undefined
96
+ readonly maxIdleTime?: Input | undefined
96
97
  readonly concurrency?: number | "unbounded" | undefined
97
98
  readonly mailboxCapacity?: number | "unbounded" | undefined
98
99
  readonly disableFatalDefects?: boolean | undefined
@@ -116,7 +117,7 @@ export const make = Effect.fnUntraced(function*<
116
117
  entityRpcs.set(KeepAliveRpc._tag, KeepAliveRpc as any)
117
118
 
118
119
  const activeServers = new Map<EntityId, EntityState>()
119
- const serverCloseLatches = new Map<EntityAddress, Effect.Latch>()
120
+ const serverCloseLatches = new Map<EntityAddress, Latch.Latch>()
120
121
  const processedRequestIds = new Set<Snowflake.Snowflake>()
121
122
 
122
123
  const entities: ResourceMap<
@@ -129,8 +130,8 @@ export const make = Effect.fnUntraced(function*<
129
130
  }
130
131
 
131
132
  const scope = yield* Effect.scope
132
- const endLatch = Effect.makeLatchUnsafe()
133
- const keepAliveLatch = Effect.makeLatchUnsafe()
133
+ const endLatch = Latch.makeUnsafe()
134
+ const keepAliveLatch = Latch.makeUnsafe()
134
135
 
135
136
  // on shutdown, reset the storage for the entity
136
137
  yield* Scope.addFinalizerExit(
@@ -336,7 +337,7 @@ export const make = Effect.fnUntraced(function*<
336
337
  scope,
337
338
  Effect.withFiber((fiber) => {
338
339
  activeServers.delete(address.entityId)
339
- serverCloseLatches.set(address, Effect.makeLatchUnsafe())
340
+ serverCloseLatches.set(address, Latch.makeUnsafe())
340
341
  internalInterruptors.add(fiber.id)
341
342
  return state.write(0, { _tag: "Eof" }).pipe(
342
343
  Effect.andThen(Effect.interruptible(endLatch.await)),
@@ -351,7 +352,7 @@ export const make = Effect.fnUntraced(function*<
351
352
 
352
353
  const reaper = yield* EntityReaper
353
354
  const maxIdleTime = Duration.toMillis(
354
- Duration.fromDurationInputUnsafe(options.maxIdleTime ?? config.entityMaxIdleTime)
355
+ Duration.fromInputUnsafe(options.maxIdleTime ?? config.entityMaxIdleTime)
355
356
  )
356
357
  if (Number.isFinite(maxIdleTime)) {
357
358
  yield* reaper.register({
@@ -1,5 +1,6 @@
1
1
  import { Clock } from "../../../Clock.ts"
2
2
  import * as Effect from "../../../Effect.ts"
3
+ import * as Latch from "../../../Latch.ts"
3
4
  import * as Layer from "../../../Layer.ts"
4
5
  import * as ServiceMap from "../../../ServiceMap.ts"
5
6
  import type { EntityNotAssignedToRunner } from "../ClusterError.ts"
@@ -17,7 +18,7 @@ export class EntityReaper extends ServiceMap.Service<EntityReaper>()("effect/clu
17
18
  readonly servers: Map<EntityId, EntityState>
18
19
  readonly entities: ResourceMap<EntityAddress, EntityState, EntityNotAssignedToRunner>
19
20
  }> = []
20
- const latch = yield* Effect.makeLatch()
21
+ const latch = yield* Latch.make()
21
22
 
22
23
  const register = (options: {
23
24
  readonly maxIdleTime: number
@@ -1,5 +1,6 @@
1
1
  import * as Effect from "../../../Effect.ts"
2
2
  import * as Exit from "../../../Exit.ts"
3
+ import * as Latch from "../../../Latch.ts"
3
4
  import * as MutableRef from "../../../MutableRef.ts"
4
5
  import * as Option from "../../../Option.ts"
5
6
  import * as Scope from "../../../Scope.ts"
@@ -53,7 +54,7 @@ export class ResourceRef<A, E = never> {
53
54
  this.acquire = acquire
54
55
  }
55
56
 
56
- latch = Effect.makeLatchUnsafe(true)
57
+ latch = Latch.makeUnsafe(true)
57
58
 
58
59
  getUnsafe(): Option.Option<A> {
59
60
  if (this.state.current._tag === "Acquired") {
@@ -311,7 +311,7 @@ export const encode = <IE, Done>(): Channel.Channel<
311
311
  let done = false
312
312
  const pull = upstream.pipe(
313
313
  Effect.map(Arr.map(encoder.write)),
314
- Effect.catchIf(Retry.filter as any, (retry: any) => {
314
+ Effect.catchFilter(Retry.filter as any, (retry: any) => {
315
315
  done = true
316
316
  return Effect.succeed(Arr.of(encoder.write(retry)))
317
317
  }),
@@ -326,11 +326,9 @@ export const encode = <IE, Done>(): Channel.Channel<
326
326
  * @category Encoding
327
327
  */
328
328
  export const encodeSchema = <
329
- S extends Schema.Codec<
330
- any,
329
+ S extends Schema.Encoder<
331
330
  { readonly id?: string | undefined; readonly event: string; readonly data: string },
332
- any,
333
- any
331
+ unknown
334
332
  >,
335
333
  IE,
336
334
  Done
@@ -14,6 +14,7 @@ import type * as Record from "../../Record.ts"
14
14
  import * as Redacted from "../../Redacted.ts"
15
15
  import * as Schema from "../../Schema.ts"
16
16
  import type * as Scope from "../../Scope.ts"
17
+ import * as Semaphore from "../../Semaphore.ts"
17
18
  import * as ServiceMap from "../../ServiceMap.ts"
18
19
  import type { Covariant } from "../../Types.ts"
19
20
  import { Reactivity } from "../reactivity/Reactivity.ts"
@@ -481,7 +482,7 @@ const make = Effect.gen(function*() {
481
482
  readonly write: (entry: Entry) => Effect.Effect<void>
482
483
  }) => Effect.Effect<void>
483
484
  }>()
484
- const journalSemaphore = yield* Effect.makeSemaphore(1)
485
+ const journalSemaphore = yield* Semaphore.make(1)
485
486
 
486
487
  const reactivity = yield* Reactivity
487
488
  const reactivityKeys: Record<string, ReadonlyArray<string>> = {}
@@ -86,7 +86,7 @@ export interface Cookie extends Inspectable.Inspectable {
86
86
  readonly options?: {
87
87
  readonly domain?: string | undefined
88
88
  readonly expires?: Date | undefined
89
- readonly maxAge?: Duration.DurationInput | undefined
89
+ readonly maxAge?: Duration.Input | undefined
90
90
  readonly path?: string | undefined
91
91
  readonly priority?: "low" | "medium" | "high" | undefined
92
92
  readonly httpOnly?: boolean | undefined
@@ -418,7 +418,7 @@ export function makeCookie(
418
418
  return Result.fail(CookiesError.fromReason("InvalidCookiePath"))
419
419
  }
420
420
 
421
- if (options.maxAge !== undefined && !Duration.isFinite(Duration.fromDurationInputUnsafe(options.maxAge))) {
421
+ if (options.maxAge !== undefined && !Duration.isFinite(Duration.fromInputUnsafe(options.maxAge))) {
422
422
  return Result.fail(CookiesError.fromReason("CookieInfinityMaxAge"))
423
423
  }
424
424
  }
@@ -763,7 +763,7 @@ export function serializeCookie(self: Cookie): string {
763
763
  const options = self.options
764
764
 
765
765
  if (options.maxAge !== undefined) {
766
- const maxAge = Duration.toSeconds(Duration.fromDurationInputUnsafe(options.maxAge))
766
+ const maxAge = Duration.toSeconds(Duration.fromInputUnsafe(options.maxAge))
767
767
  str += "; Max-Age=" + Math.trunc(maxAge)
768
768
  }
769
769
 
@@ -44,22 +44,37 @@ export interface Headers extends Redactable.Redactable {
44
44
  readonly [key: string]: string
45
45
  }
46
46
 
47
- const Proto = Object.assign(Object.create(null), Inspectable.BaseProto, {
48
- [TypeId]: TypeId,
49
- [Redactable.symbolRedactable](
50
- this: Headers,
51
- context: ServiceMap.ServiceMap<never>
52
- ): Record<string, string | Redacted.Redacted<string>> {
53
- return redact(this, ServiceMap.get(context, CurrentRedactedNames))
47
+ const Proto = Object.create(null)
48
+
49
+ Object.defineProperties(Proto, {
50
+ [TypeId]: {
51
+ value: TypeId
52
+ },
53
+ [Redactable.symbolRedactable]: {
54
+ value(this: Headers, context: ServiceMap.ServiceMap<never>): Record<string, string | Redacted.Redacted<string>> {
55
+ return redact(this, ServiceMap.get(context, CurrentRedactedNames))
56
+ }
57
+ },
58
+ toJSON: {
59
+ value(this: Headers) {
60
+ return Redactable.redact(this)
61
+ }
62
+ },
63
+ [Equal.symbol]: {
64
+ value(this: Headers, that: Headers): boolean {
65
+ return Equivalence(this, that)
66
+ }
54
67
  },
55
- toJSON() {
56
- return Redactable.redact(this)
68
+ [Hash.symbol]: {
69
+ value(this: Headers): number {
70
+ return Hash.structure(this)
71
+ }
57
72
  },
58
- [Equal.symbol](this: Headers, that: Headers): boolean {
59
- return Equivalence(this, that)
73
+ toString: {
74
+ value: Inspectable.BaseProto.toString
60
75
  },
61
- [Hash.symbol](this: Headers): number {
62
- return Hash.structure(this)
76
+ [Inspectable.NodeInspectSymbol]: {
77
+ value: Inspectable.BaseProto[Inspectable.NodeInspectSymbol]
63
78
  }
64
79
  })
65
80
 
@@ -279,7 +279,48 @@ export class FormData extends Proto {
279
279
  * @since 4.0.0
280
280
  * @category constructors
281
281
  */
282
- export const makeFormData = (body: globalThis.FormData): FormData => new FormData(body)
282
+ export const formData = (body: globalThis.FormData): FormData => new FormData(body)
283
+
284
+ /**
285
+ * @since 4.0.0
286
+ * @category models
287
+ */
288
+ export type FormDataInput = Record<string, FormDataCoercible | ReadonlyArray<FormDataCoercible>>
289
+
290
+ /**
291
+ * @since 4.0.0
292
+ * @category models
293
+ */
294
+ export type FormDataCoercible = string | number | boolean | globalThis.File | globalThis.Blob | null | undefined
295
+
296
+ const appendFormDataValue = (formData: globalThis.FormData, key: string, value: FormDataCoercible): void => {
297
+ if (value == null) {
298
+ return
299
+ }
300
+ if (typeof value === "object") {
301
+ formData.append(key, value)
302
+ return
303
+ }
304
+ formData.append(key, String(value))
305
+ }
306
+
307
+ /**
308
+ * @since 4.0.0
309
+ * @category constructors
310
+ */
311
+ export const formDataRecord = (entries: FormDataInput): FormData => {
312
+ const data = new globalThis.FormData()
313
+ for (const [key, value] of Object.entries(entries)) {
314
+ if (Array.isArray(value)) {
315
+ for (const item of value) {
316
+ appendFormDataValue(data, key, item)
317
+ }
318
+ } else {
319
+ appendFormDataValue(data, key, value as FormDataCoercible)
320
+ }
321
+ }
322
+ return formData(data)
323
+ }
283
324
 
284
325
  /**
285
326
  * @since 4.0.0