effect 2.4.19 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (615) hide show
  1. package/Array/package.json +6 -0
  2. package/FiberHandle/package.json +6 -0
  3. package/Record/package.json +6 -0
  4. package/dist/cjs/{ReadonlyArray.js → Array.js} +46 -23
  5. package/dist/cjs/Array.js.map +1 -0
  6. package/dist/cjs/Brand.js +2 -2
  7. package/dist/cjs/Brand.js.map +1 -1
  8. package/dist/cjs/Channel.js +4 -8
  9. package/dist/cjs/Channel.js.map +1 -1
  10. package/dist/cjs/Chunk.js +5 -1
  11. package/dist/cjs/Chunk.js.map +1 -1
  12. package/dist/cjs/ConfigError.js.map +1 -1
  13. package/dist/cjs/Cron.js +13 -13
  14. package/dist/cjs/Cron.js.map +1 -1
  15. package/dist/cjs/Effect.js +14 -10
  16. package/dist/cjs/Effect.js.map +1 -1
  17. package/dist/cjs/Either.js +4 -1
  18. package/dist/cjs/Either.js.map +1 -1
  19. package/dist/cjs/ExecutionStrategy.js.map +1 -1
  20. package/dist/cjs/Exit.js +3 -9
  21. package/dist/cjs/Exit.js.map +1 -1
  22. package/dist/cjs/Fiber.js +2 -8
  23. package/dist/cjs/Fiber.js.map +1 -1
  24. package/dist/cjs/FiberHandle.js +306 -0
  25. package/dist/cjs/FiberHandle.js.map +1 -0
  26. package/dist/cjs/FiberMap.js +105 -28
  27. package/dist/cjs/FiberMap.js.map +1 -1
  28. package/dist/cjs/FiberRefs.js.map +1 -1
  29. package/dist/cjs/FiberSet.js +51 -15
  30. package/dist/cjs/FiberSet.js.map +1 -1
  31. package/dist/cjs/HashMap.js.map +1 -1
  32. package/dist/cjs/HashSet.js.map +1 -1
  33. package/dist/cjs/Iterable.js +40 -5
  34. package/dist/cjs/Iterable.js.map +1 -1
  35. package/dist/cjs/Layer.js.map +1 -1
  36. package/dist/cjs/List.js +3 -3
  37. package/dist/cjs/List.js.map +1 -1
  38. package/dist/cjs/Metric.js +3 -1
  39. package/dist/cjs/Metric.js.map +1 -1
  40. package/dist/cjs/MetricKey.js.map +1 -1
  41. package/dist/cjs/MetricKeyType.js.map +1 -1
  42. package/dist/cjs/MutableHashMap.js +0 -4
  43. package/dist/cjs/MutableHashMap.js.map +1 -1
  44. package/dist/cjs/Option.js +3 -6
  45. package/dist/cjs/Option.js.map +1 -1
  46. package/dist/cjs/{ReadonlyRecord.js → Record.js} +29 -29
  47. package/dist/cjs/Record.js.map +1 -0
  48. package/dist/cjs/STM.js +4 -10
  49. package/dist/cjs/STM.js.map +1 -1
  50. package/dist/cjs/Schedule.js +2 -2
  51. package/dist/cjs/Schedule.js.map +1 -1
  52. package/dist/cjs/ScopedCache.js.map +1 -1
  53. package/dist/cjs/Stream.js +3 -9
  54. package/dist/cjs/Stream.js.map +1 -1
  55. package/dist/cjs/StreamHaltStrategy.js +2 -0
  56. package/dist/cjs/StreamHaltStrategy.js.map +1 -1
  57. package/dist/cjs/String.js +44 -2
  58. package/dist/cjs/String.js.map +1 -1
  59. package/dist/cjs/TestAnnotations.js +1 -1
  60. package/dist/cjs/TestAnnotations.js.map +1 -1
  61. package/dist/cjs/TestClock.js +3 -3
  62. package/dist/cjs/TestClock.js.map +1 -1
  63. package/dist/cjs/Tracer.js.map +1 -1
  64. package/dist/cjs/index.js +8 -6
  65. package/dist/cjs/index.js.map +1 -1
  66. package/dist/cjs/internal/{readonlyArray.js → array.js} +1 -1
  67. package/dist/cjs/internal/array.js.map +1 -0
  68. package/dist/cjs/internal/cache.js +3 -3
  69. package/dist/cjs/internal/cache.js.map +1 -1
  70. package/dist/cjs/internal/cause.js +3 -3
  71. package/dist/cjs/internal/cause.js.map +1 -1
  72. package/dist/cjs/internal/channel/channelExecutor.js +15 -15
  73. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  74. package/dist/cjs/internal/channel/channelState.js +1 -1
  75. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  76. package/dist/cjs/internal/channel/singleProducerAsyncInput.js +1 -1
  77. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  78. package/dist/cjs/internal/channel.js +10 -10
  79. package/dist/cjs/internal/channel.js.map +1 -1
  80. package/dist/cjs/internal/clock.js +2 -2
  81. package/dist/cjs/internal/clock.js.map +1 -1
  82. package/dist/cjs/internal/configError.js +20 -19
  83. package/dist/cjs/internal/configError.js.map +1 -1
  84. package/dist/cjs/internal/configProvider/pathPatch.js +1 -1
  85. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  86. package/dist/cjs/internal/configProvider.js +47 -48
  87. package/dist/cjs/internal/configProvider.js.map +1 -1
  88. package/dist/cjs/internal/core-effect.js +42 -28
  89. package/dist/cjs/internal/core-effect.js.map +1 -1
  90. package/dist/cjs/internal/core-stream.js +2 -3
  91. package/dist/cjs/internal/core-stream.js.map +1 -1
  92. package/dist/cjs/internal/core.js +27 -31
  93. package/dist/cjs/internal/core.js.map +1 -1
  94. package/dist/cjs/internal/dataSource.js +19 -2
  95. package/dist/cjs/internal/dataSource.js.map +1 -1
  96. package/dist/cjs/internal/differ/readonlyArrayPatch.js +6 -6
  97. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
  98. package/dist/cjs/internal/effect/circular.js +1 -1
  99. package/dist/cjs/internal/effect/circular.js.map +1 -1
  100. package/dist/cjs/internal/executionStrategy.js +4 -4
  101. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  102. package/dist/cjs/internal/fiber.js +5 -6
  103. package/dist/cjs/internal/fiber.js.map +1 -1
  104. package/dist/cjs/internal/fiberRefs/patch.js +1 -1
  105. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  106. package/dist/cjs/internal/fiberRefs.js +1 -1
  107. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  108. package/dist/cjs/internal/fiberRuntime.js +33 -33
  109. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  110. package/dist/cjs/internal/groupBy.js +3 -3
  111. package/dist/cjs/internal/groupBy.js.map +1 -1
  112. package/dist/cjs/internal/hashMap.js.map +1 -1
  113. package/dist/cjs/internal/hashSet.js.map +1 -1
  114. package/dist/cjs/internal/layer/circular.js.map +1 -1
  115. package/dist/cjs/internal/layer.js +5 -5
  116. package/dist/cjs/internal/layer.js.map +1 -1
  117. package/dist/cjs/internal/logger.js +28 -8
  118. package/dist/cjs/internal/logger.js.map +1 -1
  119. package/dist/cjs/internal/managedRuntime.js +1 -1
  120. package/dist/cjs/internal/managedRuntime.js.map +1 -1
  121. package/dist/cjs/internal/metric/boundaries.js +4 -4
  122. package/dist/cjs/internal/metric/boundaries.js.map +1 -1
  123. package/dist/cjs/internal/metric/hook.js +20 -17
  124. package/dist/cjs/internal/metric/hook.js.map +1 -1
  125. package/dist/cjs/internal/metric/key.js +4 -4
  126. package/dist/cjs/internal/metric/key.js.map +1 -1
  127. package/dist/cjs/internal/metric/keyType.js +6 -1
  128. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  129. package/dist/cjs/internal/metric/state.js +4 -4
  130. package/dist/cjs/internal/metric/state.js.map +1 -1
  131. package/dist/cjs/internal/metric.js +4 -4
  132. package/dist/cjs/internal/metric.js.map +1 -1
  133. package/dist/cjs/internal/pool.js +11 -11
  134. package/dist/cjs/internal/pool.js.map +1 -1
  135. package/dist/cjs/internal/pubsub.js +5 -5
  136. package/dist/cjs/internal/pubsub.js.map +1 -1
  137. package/dist/cjs/internal/query.js +2 -2
  138. package/dist/cjs/internal/query.js.map +1 -1
  139. package/dist/cjs/internal/queue.js +9 -9
  140. package/dist/cjs/internal/queue.js.map +1 -1
  141. package/dist/cjs/internal/rateLimiter.js +1 -1
  142. package/dist/cjs/internal/rateLimiter.js.map +1 -1
  143. package/dist/cjs/internal/redBlackTree/iterator.js +2 -2
  144. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  145. package/dist/cjs/internal/reloadable.js +1 -1
  146. package/dist/cjs/internal/reloadable.js.map +1 -1
  147. package/dist/cjs/internal/runtime.js +4 -4
  148. package/dist/cjs/internal/runtime.js.map +1 -1
  149. package/dist/cjs/internal/schedule.js +5 -5
  150. package/dist/cjs/internal/schedule.js.map +1 -1
  151. package/dist/cjs/internal/scopedCache.js +7 -7
  152. package/dist/cjs/internal/scopedCache.js.map +1 -1
  153. package/dist/cjs/internal/scopedRef.js +4 -4
  154. package/dist/cjs/internal/scopedRef.js.map +1 -1
  155. package/dist/cjs/internal/secret.js +2 -2
  156. package/dist/cjs/internal/secret.js.map +1 -1
  157. package/dist/cjs/internal/sink.js +10 -10
  158. package/dist/cjs/internal/sink.js.map +1 -1
  159. package/dist/cjs/internal/stm/stm/tExit.js +2 -4
  160. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  161. package/dist/cjs/internal/stm/stm.js +11 -11
  162. package/dist/cjs/internal/stm/stm.js.map +1 -1
  163. package/dist/cjs/internal/stm/tMap.js +3 -3
  164. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  165. package/dist/cjs/internal/stm/tPriorityQueue.js +11 -11
  166. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  167. package/dist/cjs/internal/stm/tPubSub.js +3 -3
  168. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  169. package/dist/cjs/internal/stm/tQueue.js +3 -3
  170. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  171. package/dist/cjs/internal/stm/tSet.js +1 -1
  172. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  173. package/dist/cjs/internal/stream/haltStrategy.js +5 -5
  174. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  175. package/dist/cjs/internal/stream.js +84 -85
  176. package/dist/cjs/internal/stream.js.map +1 -1
  177. package/dist/cjs/internal/supervisor.js +1 -1
  178. package/dist/cjs/internal/supervisor.js.map +1 -1
  179. package/dist/cjs/internal/take.js +1 -1
  180. package/dist/cjs/internal/take.js.map +1 -1
  181. package/dist/cjs/internal/tracer.js.map +1 -1
  182. package/dist/cjs/internal/trie.js.map +1 -1
  183. package/dist/cjs/internal/version.js +1 -1
  184. package/dist/cjs/internal/version.js.map +1 -1
  185. package/dist/dts/{ReadonlyArray.d.ts → Array.d.ts} +42 -18
  186. package/dist/dts/Array.d.ts.map +1 -0
  187. package/dist/dts/BigDecimal.d.ts.map +1 -1
  188. package/dist/dts/BigInt.d.ts.map +1 -1
  189. package/dist/dts/Brand.d.ts +1 -19
  190. package/dist/dts/Brand.d.ts.map +1 -1
  191. package/dist/dts/Cache.d.ts +10 -10
  192. package/dist/dts/Cache.d.ts.map +1 -1
  193. package/dist/dts/Cause.d.ts +1 -1
  194. package/dist/dts/Cause.d.ts.map +1 -1
  195. package/dist/dts/Channel.d.ts +6 -4
  196. package/dist/dts/Channel.d.ts.map +1 -1
  197. package/dist/dts/Chunk.d.ts +1 -4
  198. package/dist/dts/Chunk.d.ts.map +1 -1
  199. package/dist/dts/ConfigError.d.ts +7 -6
  200. package/dist/dts/ConfigError.d.ts.map +1 -1
  201. package/dist/dts/Cron.d.ts +0 -5
  202. package/dist/dts/Cron.d.ts.map +1 -1
  203. package/dist/dts/Duration.d.ts.map +1 -1
  204. package/dist/dts/Effect.d.ts +38 -33
  205. package/dist/dts/Effect.d.ts.map +1 -1
  206. package/dist/dts/Either.d.ts +5 -2
  207. package/dist/dts/Either.d.ts.map +1 -1
  208. package/dist/dts/Encoding.d.ts.map +1 -1
  209. package/dist/dts/Equivalence.d.ts.map +1 -1
  210. package/dist/dts/ExecutionStrategy.d.ts +10 -2
  211. package/dist/dts/ExecutionStrategy.d.ts.map +1 -1
  212. package/dist/dts/Exit.d.ts +4 -3
  213. package/dist/dts/Exit.d.ts.map +1 -1
  214. package/dist/dts/Fiber.d.ts +4 -2
  215. package/dist/dts/Fiber.d.ts.map +1 -1
  216. package/dist/dts/FiberHandle.d.ts +189 -0
  217. package/dist/dts/FiberHandle.d.ts.map +1 -0
  218. package/dist/dts/FiberMap.d.ts +48 -12
  219. package/dist/dts/FiberMap.d.ts.map +1 -1
  220. package/dist/dts/FiberRefs.d.ts +1 -1
  221. package/dist/dts/FiberRefs.d.ts.map +1 -1
  222. package/dist/dts/FiberSet.d.ts +9 -5
  223. package/dist/dts/FiberSet.d.ts.map +1 -1
  224. package/dist/dts/Function.d.ts.map +1 -1
  225. package/dist/dts/GroupBy.d.ts +1 -1
  226. package/dist/dts/GroupBy.d.ts.map +1 -1
  227. package/dist/dts/HashMap.d.ts +0 -1
  228. package/dist/dts/HashMap.d.ts.map +1 -1
  229. package/dist/dts/HashSet.d.ts +0 -1
  230. package/dist/dts/HashSet.d.ts.map +1 -1
  231. package/dist/dts/Iterable.d.ts +12 -5
  232. package/dist/dts/Iterable.d.ts.map +1 -1
  233. package/dist/dts/Layer.d.ts +6 -6
  234. package/dist/dts/Layer.d.ts.map +1 -1
  235. package/dist/dts/List.d.ts +0 -11
  236. package/dist/dts/List.d.ts.map +1 -1
  237. package/dist/dts/Logger.d.ts +2 -2
  238. package/dist/dts/Logger.d.ts.map +1 -1
  239. package/dist/dts/Metric.d.ts +7 -2
  240. package/dist/dts/Metric.d.ts.map +1 -1
  241. package/dist/dts/MetricKey.d.ts +4 -1
  242. package/dist/dts/MetricKey.d.ts.map +1 -1
  243. package/dist/dts/MetricKeyType.d.ts +4 -1
  244. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  245. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  246. package/dist/dts/Option.d.ts +5 -3
  247. package/dist/dts/Option.d.ts.map +1 -1
  248. package/dist/dts/Order.d.ts.map +1 -1
  249. package/dist/dts/{ReadonlyRecord.d.ts → Record.d.ts} +29 -30
  250. package/dist/dts/Record.d.ts.map +1 -0
  251. package/dist/dts/Request.d.ts +1 -1
  252. package/dist/dts/Request.d.ts.map +1 -1
  253. package/dist/dts/RequestResolver.d.ts +2 -2
  254. package/dist/dts/RequestResolver.d.ts.map +1 -1
  255. package/dist/dts/STM.d.ts +6 -4
  256. package/dist/dts/STM.d.ts.map +1 -1
  257. package/dist/dts/Schedule.d.ts +1 -1
  258. package/dist/dts/Scheduler.d.ts.map +1 -1
  259. package/dist/dts/ScopedCache.d.ts +9 -9
  260. package/dist/dts/ScopedCache.d.ts.map +1 -1
  261. package/dist/dts/SortedMap.d.ts.map +1 -1
  262. package/dist/dts/SortedSet.d.ts +1 -1
  263. package/dist/dts/SortedSet.d.ts.map +1 -1
  264. package/dist/dts/Stream.d.ts +8 -6
  265. package/dist/dts/Stream.d.ts.map +1 -1
  266. package/dist/dts/StreamHaltStrategy.d.ts +14 -2
  267. package/dist/dts/StreamHaltStrategy.d.ts.map +1 -1
  268. package/dist/dts/String.d.ts +25 -1
  269. package/dist/dts/String.d.ts.map +1 -1
  270. package/dist/dts/Subscribable.d.ts.map +1 -1
  271. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  272. package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
  273. package/dist/dts/TestAnnotations.d.ts +0 -3
  274. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  275. package/dist/dts/TestClock.d.ts.map +1 -1
  276. package/dist/dts/TestLive.d.ts.map +1 -1
  277. package/dist/dts/TestServices.d.ts.map +1 -1
  278. package/dist/dts/TestSized.d.ts.map +1 -1
  279. package/dist/dts/Tracer.d.ts +12 -5
  280. package/dist/dts/Tracer.d.ts.map +1 -1
  281. package/dist/dts/Trie.d.ts +1 -1
  282. package/dist/dts/Trie.d.ts.map +1 -1
  283. package/dist/dts/Types.d.ts +0 -7
  284. package/dist/dts/Types.d.ts.map +1 -1
  285. package/dist/dts/index.d.ts +11 -7
  286. package/dist/dts/index.d.ts.map +1 -1
  287. package/dist/dts/internal/array.d.ts +5 -0
  288. package/dist/dts/internal/array.d.ts.map +1 -0
  289. package/dist/dts/internal/core-stream.d.ts +4 -0
  290. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  291. package/dist/dts/internal/core.d.ts +3 -1
  292. package/dist/dts/internal/core.d.ts.map +1 -1
  293. package/dist/dts/internal/fiber.d.ts +5 -1
  294. package/dist/dts/internal/fiber.d.ts.map +1 -1
  295. package/dist/dts/internal/hashMap.d.ts.map +1 -1
  296. package/dist/dts/internal/logger.d.ts.map +1 -1
  297. package/dist/dts/internal/metric/keyType.d.ts +3 -1
  298. package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
  299. package/dist/dts/internal/metric/state.d.ts.map +1 -1
  300. package/dist/dts/internal/random.d.ts.map +1 -1
  301. package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
  302. package/dist/dts/internal/stm/stm/tExit.d.ts +4 -1
  303. package/dist/dts/internal/stm/stm/tExit.d.ts.map +1 -1
  304. package/dist/dts/internal/stm/stm.d.ts +3 -0
  305. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  306. package/dist/dts/internal/stream.d.ts +5 -1
  307. package/dist/dts/internal/stream.d.ts.map +1 -1
  308. package/dist/esm/{ReadonlyArray.js → Array.js} +42 -20
  309. package/dist/esm/Array.js.map +1 -0
  310. package/dist/esm/Brand.js +2 -2
  311. package/dist/esm/Brand.js.map +1 -1
  312. package/dist/esm/Channel.js +4 -2
  313. package/dist/esm/Channel.js.map +1 -1
  314. package/dist/esm/Chunk.js +4 -1
  315. package/dist/esm/Chunk.js.map +1 -1
  316. package/dist/esm/ConfigError.js.map +1 -1
  317. package/dist/esm/Cron.js +13 -13
  318. package/dist/esm/Cron.js.map +1 -1
  319. package/dist/esm/Effect.js +11 -2
  320. package/dist/esm/Effect.js.map +1 -1
  321. package/dist/esm/Either.js +4 -1
  322. package/dist/esm/Either.js.map +1 -1
  323. package/dist/esm/ExecutionStrategy.js.map +1 -1
  324. package/dist/esm/Exit.js +4 -2
  325. package/dist/esm/Exit.js.map +1 -1
  326. package/dist/esm/Fiber.js +3 -1
  327. package/dist/esm/Fiber.js.map +1 -1
  328. package/dist/esm/FiberHandle.js +265 -0
  329. package/dist/esm/FiberHandle.js.map +1 -0
  330. package/dist/esm/FiberMap.js +103 -26
  331. package/dist/esm/FiberMap.js.map +1 -1
  332. package/dist/esm/FiberRefs.js.map +1 -1
  333. package/dist/esm/FiberSet.js +51 -15
  334. package/dist/esm/FiberSet.js.map +1 -1
  335. package/dist/esm/HashMap.js.map +1 -1
  336. package/dist/esm/HashSet.js.map +1 -1
  337. package/dist/esm/Iterable.js +39 -4
  338. package/dist/esm/Iterable.js.map +1 -1
  339. package/dist/esm/Layer.js.map +1 -1
  340. package/dist/esm/List.js +3 -3
  341. package/dist/esm/List.js.map +1 -1
  342. package/dist/esm/Metric.js +3 -1
  343. package/dist/esm/Metric.js.map +1 -1
  344. package/dist/esm/MetricKey.js.map +1 -1
  345. package/dist/esm/MetricKeyType.js.map +1 -1
  346. package/dist/esm/MutableHashMap.js +0 -3
  347. package/dist/esm/MutableHashMap.js.map +1 -1
  348. package/dist/esm/Option.js +4 -2
  349. package/dist/esm/Option.js.map +1 -1
  350. package/dist/esm/{ReadonlyRecord.js → Record.js} +29 -29
  351. package/dist/esm/Record.js.map +1 -0
  352. package/dist/esm/STM.js +5 -3
  353. package/dist/esm/STM.js.map +1 -1
  354. package/dist/esm/Schedule.js +1 -1
  355. package/dist/esm/Schedule.js.map +1 -1
  356. package/dist/esm/ScopedCache.js.map +1 -1
  357. package/dist/esm/Stream.js +5 -3
  358. package/dist/esm/Stream.js.map +1 -1
  359. package/dist/esm/StreamHaltStrategy.js +2 -0
  360. package/dist/esm/StreamHaltStrategy.js.map +1 -1
  361. package/dist/esm/String.js +37 -1
  362. package/dist/esm/String.js.map +1 -1
  363. package/dist/esm/TestAnnotations.js +1 -1
  364. package/dist/esm/TestAnnotations.js.map +1 -1
  365. package/dist/esm/TestClock.js +3 -3
  366. package/dist/esm/TestClock.js.map +1 -1
  367. package/dist/esm/Tracer.js.map +1 -1
  368. package/dist/esm/index.js +11 -7
  369. package/dist/esm/index.js.map +1 -1
  370. package/dist/esm/internal/{readonlyArray.js → array.js} +1 -1
  371. package/dist/esm/internal/array.js.map +1 -0
  372. package/dist/esm/internal/cache.js +3 -3
  373. package/dist/esm/internal/cache.js.map +1 -1
  374. package/dist/esm/internal/cause.js +3 -3
  375. package/dist/esm/internal/cause.js.map +1 -1
  376. package/dist/esm/internal/channel/channelExecutor.js +15 -15
  377. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  378. package/dist/esm/internal/channel/channelState.js +1 -1
  379. package/dist/esm/internal/channel/channelState.js.map +1 -1
  380. package/dist/esm/internal/channel/singleProducerAsyncInput.js +1 -1
  381. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  382. package/dist/esm/internal/channel.js +8 -8
  383. package/dist/esm/internal/channel.js.map +1 -1
  384. package/dist/esm/internal/clock.js +2 -2
  385. package/dist/esm/internal/clock.js.map +1 -1
  386. package/dist/esm/internal/configError.js +20 -19
  387. package/dist/esm/internal/configError.js.map +1 -1
  388. package/dist/esm/internal/configProvider/pathPatch.js +1 -1
  389. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
  390. package/dist/esm/internal/configProvider.js +47 -48
  391. package/dist/esm/internal/configProvider.js.map +1 -1
  392. package/dist/esm/internal/core-effect.js +39 -26
  393. package/dist/esm/internal/core-effect.js.map +1 -1
  394. package/dist/esm/internal/core-stream.js +3 -2
  395. package/dist/esm/internal/core-stream.js.map +1 -1
  396. package/dist/esm/internal/core.js +24 -26
  397. package/dist/esm/internal/core.js.map +1 -1
  398. package/dist/esm/internal/dataSource.js +19 -2
  399. package/dist/esm/internal/dataSource.js.map +1 -1
  400. package/dist/esm/internal/differ/readonlyArrayPatch.js +6 -6
  401. package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -1
  402. package/dist/esm/internal/effect/circular.js +1 -1
  403. package/dist/esm/internal/effect/circular.js.map +1 -1
  404. package/dist/esm/internal/executionStrategy.js +4 -4
  405. package/dist/esm/internal/executionStrategy.js.map +1 -1
  406. package/dist/esm/internal/fiber.js +6 -5
  407. package/dist/esm/internal/fiber.js.map +1 -1
  408. package/dist/esm/internal/fiberRefs/patch.js +1 -1
  409. package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
  410. package/dist/esm/internal/fiberRefs.js +1 -1
  411. package/dist/esm/internal/fiberRefs.js.map +1 -1
  412. package/dist/esm/internal/fiberRuntime.js +33 -33
  413. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  414. package/dist/esm/internal/groupBy.js +3 -3
  415. package/dist/esm/internal/groupBy.js.map +1 -1
  416. package/dist/esm/internal/hashMap.js.map +1 -1
  417. package/dist/esm/internal/hashSet.js.map +1 -1
  418. package/dist/esm/internal/layer/circular.js.map +1 -1
  419. package/dist/esm/internal/layer.js +5 -5
  420. package/dist/esm/internal/layer.js.map +1 -1
  421. package/dist/esm/internal/logger.js +28 -8
  422. package/dist/esm/internal/logger.js.map +1 -1
  423. package/dist/esm/internal/managedRuntime.js +1 -1
  424. package/dist/esm/internal/managedRuntime.js.map +1 -1
  425. package/dist/esm/internal/metric/boundaries.js +4 -4
  426. package/dist/esm/internal/metric/boundaries.js.map +1 -1
  427. package/dist/esm/internal/metric/hook.js +20 -17
  428. package/dist/esm/internal/metric/hook.js.map +1 -1
  429. package/dist/esm/internal/metric/key.js +4 -4
  430. package/dist/esm/internal/metric/key.js.map +1 -1
  431. package/dist/esm/internal/metric/keyType.js +5 -1
  432. package/dist/esm/internal/metric/keyType.js.map +1 -1
  433. package/dist/esm/internal/metric/state.js +4 -4
  434. package/dist/esm/internal/metric/state.js.map +1 -1
  435. package/dist/esm/internal/metric.js +4 -4
  436. package/dist/esm/internal/metric.js.map +1 -1
  437. package/dist/esm/internal/pool.js +11 -11
  438. package/dist/esm/internal/pool.js.map +1 -1
  439. package/dist/esm/internal/pubsub.js +5 -5
  440. package/dist/esm/internal/pubsub.js.map +1 -1
  441. package/dist/esm/internal/query.js +2 -2
  442. package/dist/esm/internal/query.js.map +1 -1
  443. package/dist/esm/internal/queue.js +9 -9
  444. package/dist/esm/internal/queue.js.map +1 -1
  445. package/dist/esm/internal/rateLimiter.js +1 -1
  446. package/dist/esm/internal/rateLimiter.js.map +1 -1
  447. package/dist/esm/internal/redBlackTree/iterator.js +2 -2
  448. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
  449. package/dist/esm/internal/reloadable.js +1 -1
  450. package/dist/esm/internal/reloadable.js.map +1 -1
  451. package/dist/esm/internal/runtime.js +4 -4
  452. package/dist/esm/internal/runtime.js.map +1 -1
  453. package/dist/esm/internal/schedule.js +3 -3
  454. package/dist/esm/internal/schedule.js.map +1 -1
  455. package/dist/esm/internal/scopedCache.js +7 -7
  456. package/dist/esm/internal/scopedCache.js.map +1 -1
  457. package/dist/esm/internal/scopedRef.js +4 -4
  458. package/dist/esm/internal/scopedRef.js.map +1 -1
  459. package/dist/esm/internal/secret.js +2 -2
  460. package/dist/esm/internal/secret.js.map +1 -1
  461. package/dist/esm/internal/sink.js +10 -10
  462. package/dist/esm/internal/sink.js.map +1 -1
  463. package/dist/esm/internal/stm/stm/tExit.js +3 -2
  464. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  465. package/dist/esm/internal/stm/stm.js +11 -9
  466. package/dist/esm/internal/stm/stm.js.map +1 -1
  467. package/dist/esm/internal/stm/tMap.js +3 -3
  468. package/dist/esm/internal/stm/tMap.js.map +1 -1
  469. package/dist/esm/internal/stm/tPriorityQueue.js +11 -11
  470. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  471. package/dist/esm/internal/stm/tPubSub.js +3 -3
  472. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  473. package/dist/esm/internal/stm/tQueue.js +3 -3
  474. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  475. package/dist/esm/internal/stm/tSet.js +1 -1
  476. package/dist/esm/internal/stm/tSet.js.map +1 -1
  477. package/dist/esm/internal/stream/haltStrategy.js +5 -5
  478. package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
  479. package/dist/esm/internal/stream.js +85 -84
  480. package/dist/esm/internal/stream.js.map +1 -1
  481. package/dist/esm/internal/supervisor.js +1 -1
  482. package/dist/esm/internal/supervisor.js.map +1 -1
  483. package/dist/esm/internal/take.js +1 -1
  484. package/dist/esm/internal/take.js.map +1 -1
  485. package/dist/esm/internal/tracer.js.map +1 -1
  486. package/dist/esm/internal/trie.js.map +1 -1
  487. package/dist/esm/internal/version.js +1 -1
  488. package/dist/esm/internal/version.js.map +1 -1
  489. package/package.json +23 -15
  490. package/src/{ReadonlyArray.ts → Array.ts} +50 -24
  491. package/src/Brand.ts +3 -3
  492. package/src/Cache.ts +12 -10
  493. package/src/Cause.ts +1 -1
  494. package/src/Channel.ts +12 -9
  495. package/src/Chunk.ts +3 -3
  496. package/src/ConfigError.ts +7 -6
  497. package/src/Cron.ts +17 -17
  498. package/src/Effect.ts +46 -57
  499. package/src/Either.ts +7 -7
  500. package/src/ExecutionStrategy.ts +10 -2
  501. package/src/Exit.ts +11 -9
  502. package/src/Fiber.ts +11 -8
  503. package/src/FiberHandle.ts +433 -0
  504. package/src/FiberMap.ts +200 -73
  505. package/src/FiberRefs.ts +1 -1
  506. package/src/FiberSet.ts +96 -36
  507. package/src/GroupBy.ts +1 -1
  508. package/src/HashMap.ts +0 -1
  509. package/src/HashSet.ts +0 -1
  510. package/src/Iterable.ts +48 -10
  511. package/src/Layer.ts +6 -6
  512. package/src/List.ts +3 -4
  513. package/src/Logger.ts +2 -2
  514. package/src/Metric.ts +9 -2
  515. package/src/MetricKey.ts +9 -1
  516. package/src/MetricKeyType.ts +6 -1
  517. package/src/MutableHashMap.ts +1 -1
  518. package/src/Option.ts +9 -6
  519. package/src/{ReadonlyRecord.ts → Record.ts} +28 -29
  520. package/src/Request.ts +1 -1
  521. package/src/RequestResolver.ts +4 -4
  522. package/src/STM.ts +12 -9
  523. package/src/Schedule.ts +1 -1
  524. package/src/ScopedCache.ts +11 -9
  525. package/src/SortedSet.ts +1 -1
  526. package/src/Stream.ts +14 -11
  527. package/src/StreamHaltStrategy.ts +14 -2
  528. package/src/String.ts +45 -2
  529. package/src/TestAnnotations.ts +1 -1
  530. package/src/TestClock.ts +3 -3
  531. package/src/Tracer.ts +13 -5
  532. package/src/Trie.ts +1 -1
  533. package/src/Types.ts +0 -8
  534. package/src/index.ts +13 -8
  535. package/src/internal/{readonlyArray.ts → array.ts} +1 -1
  536. package/src/internal/cache.ts +40 -40
  537. package/src/internal/cause.ts +5 -6
  538. package/src/internal/channel/channelExecutor.ts +15 -15
  539. package/src/internal/channel/channelState.ts +1 -1
  540. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  541. package/src/internal/channel.ts +11 -11
  542. package/src/internal/clock.ts +2 -2
  543. package/src/internal/configError.ts +22 -21
  544. package/src/internal/configProvider/pathPatch.ts +1 -1
  545. package/src/internal/configProvider.ts +50 -53
  546. package/src/internal/core-effect.ts +73 -70
  547. package/src/internal/core-stream.ts +5 -2
  548. package/src/internal/core.ts +51 -50
  549. package/src/internal/dataSource.ts +19 -20
  550. package/src/internal/differ/readonlyArrayPatch.ts +6 -6
  551. package/src/internal/effect/circular.ts +2 -2
  552. package/src/internal/executionStrategy.ts +14 -12
  553. package/src/internal/fiber.ts +8 -5
  554. package/src/internal/fiberRefs/patch.ts +1 -1
  555. package/src/internal/fiberRefs.ts +1 -1
  556. package/src/internal/fiberRuntime.ts +45 -45
  557. package/src/internal/groupBy.ts +4 -4
  558. package/src/internal/hashMap.ts +0 -1
  559. package/src/internal/hashSet.ts +0 -1
  560. package/src/internal/layer/circular.ts +2 -2
  561. package/src/internal/layer.ts +9 -9
  562. package/src/internal/logger.ts +28 -8
  563. package/src/internal/managedRuntime.ts +1 -1
  564. package/src/internal/metric/boundaries.ts +5 -5
  565. package/src/internal/metric/hook.ts +21 -18
  566. package/src/internal/metric/key.ts +8 -5
  567. package/src/internal/metric/keyType.ts +5 -2
  568. package/src/internal/metric/state.ts +5 -5
  569. package/src/internal/metric.ts +8 -6
  570. package/src/internal/pool.ts +11 -11
  571. package/src/internal/pubsub.ts +6 -6
  572. package/src/internal/query.ts +4 -4
  573. package/src/internal/queue.ts +11 -11
  574. package/src/internal/rateLimiter.ts +1 -1
  575. package/src/internal/redBlackTree/iterator.ts +2 -2
  576. package/src/internal/reloadable.ts +1 -1
  577. package/src/internal/runtime.ts +5 -5
  578. package/src/internal/schedule.ts +8 -9
  579. package/src/internal/scopedCache.ts +53 -53
  580. package/src/internal/scopedRef.ts +4 -4
  581. package/src/internal/secret.ts +2 -2
  582. package/src/internal/sink.ts +10 -10
  583. package/src/internal/stm/stm/tExit.ts +5 -2
  584. package/src/internal/stm/stm.ts +13 -9
  585. package/src/internal/stm/tMap.ts +3 -3
  586. package/src/internal/stm/tPriorityQueue.ts +11 -11
  587. package/src/internal/stm/tPubSub.ts +3 -3
  588. package/src/internal/stm/tQueue.ts +3 -3
  589. package/src/internal/stm/tSet.ts +1 -1
  590. package/src/internal/stream/haltStrategy.ts +23 -14
  591. package/src/internal/stream.ts +91 -88
  592. package/src/internal/supervisor.ts +1 -1
  593. package/src/internal/take.ts +1 -1
  594. package/src/internal/tracer.ts +2 -2
  595. package/src/internal/trie.ts +0 -1
  596. package/src/internal/version.ts +1 -1
  597. package/ReadonlyArray/package.json +0 -6
  598. package/ReadonlyRecord/package.json +0 -6
  599. package/dist/cjs/ReadonlyArray.js.map +0 -1
  600. package/dist/cjs/ReadonlyRecord.js.map +0 -1
  601. package/dist/cjs/internal/Iterable.js +0 -61
  602. package/dist/cjs/internal/Iterable.js.map +0 -1
  603. package/dist/cjs/internal/readonlyArray.js.map +0 -1
  604. package/dist/dts/ReadonlyArray.d.ts.map +0 -1
  605. package/dist/dts/ReadonlyRecord.d.ts.map +0 -1
  606. package/dist/dts/internal/Iterable.d.ts +0 -2
  607. package/dist/dts/internal/Iterable.d.ts.map +0 -1
  608. package/dist/dts/internal/readonlyArray.d.ts +0 -5
  609. package/dist/dts/internal/readonlyArray.d.ts.map +0 -1
  610. package/dist/esm/ReadonlyArray.js.map +0 -1
  611. package/dist/esm/ReadonlyRecord.js.map +0 -1
  612. package/dist/esm/internal/Iterable.js +0 -53
  613. package/dist/esm/internal/Iterable.js.map +0 -1
  614. package/dist/esm/internal/readonlyArray.js.map +0 -1
  615. package/src/internal/Iterable.ts +0 -54
@@ -29,13 +29,13 @@ import * as fiberRuntime from "./fiberRuntime.js"
29
29
  *
30
30
  * @internal
31
31
  */
32
- export type MapValue<Key, Error, Value> =
33
- | Complete<Key, Error, Value>
34
- | Pending<Key, Error, Value>
35
- | Refreshing<Key, Error, Value>
32
+ export type MapValue<Key, Value, Error> =
33
+ | Complete<Key, Value, Error>
34
+ | Pending<Key, Value, Error>
35
+ | Refreshing<Key, Value, Error>
36
36
 
37
37
  /** @internal */
38
- export interface Complete<out Key, out Error, out Value> {
38
+ export interface Complete<out Key, out Value, out Error> {
39
39
  readonly _tag: "Complete"
40
40
  readonly key: MapKey<Key>
41
41
  readonly exit: Exit.Exit<Value, Error>
@@ -44,26 +44,26 @@ export interface Complete<out Key, out Error, out Value> {
44
44
  }
45
45
 
46
46
  /** @internal */
47
- export interface Pending<out Key, in out Error, in out Value> {
47
+ export interface Pending<out Key, in out Value, in out Error> {
48
48
  readonly _tag: "Pending"
49
49
  readonly key: MapKey<Key>
50
50
  readonly deferred: Deferred.Deferred<Value, Error>
51
51
  }
52
52
 
53
53
  /** @internal */
54
- export interface Refreshing<out Key, in out Error, in out Value> {
54
+ export interface Refreshing<out Key, in out Value, in out Error> {
55
55
  readonly _tag: "Refreshing"
56
56
  readonly deferred: Deferred.Deferred<Value, Error>
57
- readonly complete: Complete<Key, Error, Value>
57
+ readonly complete: Complete<Key, Value, Error>
58
58
  }
59
59
 
60
60
  /** @internal */
61
- export const complete = <Key, Error, Value>(
61
+ export const complete = <Key, Value, Error>(
62
62
  key: MapKey<Key>,
63
63
  exit: Exit.Exit<Value, Error>,
64
64
  entryStats: Cache.EntryStats,
65
65
  timeToLiveMillis: number
66
- ): MapValue<Key, Error, Value> =>
66
+ ): MapValue<Key, Value, Error> =>
67
67
  Data.struct({
68
68
  _tag: "Complete" as const,
69
69
  key,
@@ -73,10 +73,10 @@ export const complete = <Key, Error, Value>(
73
73
  })
74
74
 
75
75
  /** @internal */
76
- export const pending = <Key, Error, Value>(
76
+ export const pending = <Key, Value, Error>(
77
77
  key: MapKey<Key>,
78
78
  deferred: Deferred.Deferred<Value, Error>
79
- ): MapValue<Key, Error, Value> =>
79
+ ): MapValue<Key, Value, Error> =>
80
80
  Data.struct({
81
81
  _tag: "Pending" as const,
82
82
  key,
@@ -84,10 +84,10 @@ export const pending = <Key, Error, Value>(
84
84
  })
85
85
 
86
86
  /** @internal */
87
- export const refreshing = <Key, Error, Value>(
87
+ export const refreshing = <Key, Value, Error>(
88
88
  deferred: Deferred.Deferred<Value, Error>,
89
- complete: Complete<Key, Error, Value>
90
- ): MapValue<Key, Error, Value> =>
89
+ complete: Complete<Key, Value, Error>
90
+ ): MapValue<Key, Value, Error> =>
91
91
  Data.struct({
92
92
  _tag: "Refreshing" as const,
93
93
  deferred,
@@ -216,8 +216,8 @@ export const makeKeySet = <K>(): KeySet<K> => new KeySetImpl<K>()
216
216
  *
217
217
  * @internal
218
218
  */
219
- export interface CacheState<in out Key, in out Error, in out Value> {
220
- map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Error, Value>> // mutable by design
219
+ export interface CacheState<in out Key, in out Value, in out Error> {
220
+ map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Value, Error>> // mutable by design
221
221
  keys: KeySet<Key> // mutable by design
222
222
  accesses: MutableQueue.MutableQueue<MapKey<Key>> // mutable by design
223
223
  updating: MutableRef.MutableRef<boolean> // mutable by design
@@ -230,14 +230,14 @@ export interface CacheState<in out Key, in out Error, in out Value> {
230
230
  *
231
231
  * @internal
232
232
  */
233
- export const makeCacheState = <Key, Error, Value>(
234
- map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Error, Value>>,
233
+ export const makeCacheState = <Key, Value, Error>(
234
+ map: MutableHashMap.MutableHashMap<Key, MapValue<Key, Value, Error>>,
235
235
  keys: KeySet<Key>,
236
236
  accesses: MutableQueue.MutableQueue<MapKey<Key>>,
237
237
  updating: MutableRef.MutableRef<boolean>,
238
238
  hits: number,
239
239
  misses: number
240
- ): CacheState<Key, Error, Value> => ({
240
+ ): CacheState<Key, Value, Error> => ({
241
241
  map,
242
242
  keys,
243
243
  accesses,
@@ -251,7 +251,7 @@ export const makeCacheState = <Key, Error, Value>(
251
251
  *
252
252
  * @internal
253
253
  */
254
- export const initialCacheState = <Key, Error, Value>(): CacheState<Key, Error, Value> =>
254
+ export const initialCacheState = <Key, Value, Error>(): CacheState<Key, Value, Error> =>
255
255
  makeCacheState(
256
256
  MutableHashMap.empty(),
257
257
  makeKeySet(),
@@ -292,14 +292,14 @@ export const makeEntryStats = (loadedMillis: number): Cache.EntryStats => ({
292
292
  loadedMillis
293
293
  })
294
294
 
295
- class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<Key, Error, Value> {
295
+ class CacheImpl<in out Key, in out Value, in out Error> implements Cache.Cache<Key, Value, Error> {
296
296
  readonly [CacheTypeId] = cacheVariance
297
- readonly cacheState: CacheState<Key, Error, Value>
297
+ readonly cacheState: CacheState<Key, Value, Error>
298
298
  constructor(
299
299
  readonly capacity: number,
300
300
  readonly context: Context.Context<any>,
301
301
  readonly fiberId: FiberId.FiberId,
302
- readonly lookup: Cache.Lookup<Key, any, Error, Value>,
302
+ readonly lookup: Cache.Lookup<Key, Value, Error, any>,
303
303
  readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
304
304
  ) {
305
305
  this.cacheState = initialCacheState()
@@ -443,7 +443,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
443
443
  }
444
444
  }
445
445
  if (value === undefined) {
446
- return core.asUnit(this.lookupValueOf(key, deferred))
446
+ return core.asVoid(this.lookupValueOf(key, deferred))
447
447
  } else {
448
448
  switch (value._tag) {
449
449
  case "Complete": {
@@ -452,7 +452,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
452
452
  if (Equal.equals(found, value)) {
453
453
  MutableHashMap.remove(this.cacheState.map, k)
454
454
  }
455
- return core.asUnit(this.get(key))
455
+ return core.asVoid(this.get(key))
456
456
  }
457
457
  // Only trigger the lookup if we're still the current value, `completedResult`
458
458
  return pipe(
@@ -460,13 +460,13 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
460
460
  effect.when(() => {
461
461
  const current = Option.getOrUndefined(MutableHashMap.get(this.cacheState.map, k))
462
462
  if (Equal.equals(current, value)) {
463
- const mapValue = refreshing(deferred, value as Complete<Key, Error, Value>)
463
+ const mapValue = refreshing(deferred, value as Complete<Key, Value, Error>)
464
464
  MutableHashMap.set(this.cacheState.map, k, mapValue)
465
465
  return true
466
466
  }
467
467
  return false
468
468
  }),
469
- core.asUnit
469
+ core.asVoid
470
470
  )
471
471
  }
472
472
  case "Pending": {
@@ -496,7 +496,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
496
496
  MutableHashMap.set(
497
497
  this.cacheState.map,
498
498
  k,
499
- mapValue as Complete<Key, Error, Value>
499
+ mapValue as Complete<Key, Value, Error>
500
500
  )
501
501
  })
502
502
  )
@@ -545,7 +545,7 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
545
545
  }
546
546
 
547
547
  resolveMapValue(
548
- value: MapValue<Key, Error, Value>,
548
+ value: MapValue<Key, Value, Error>,
549
549
  ignorePending = false
550
550
  ): Effect.Effect<Option.Option<Value>, Error> {
551
551
  return effect.clockWith((clock) => {
@@ -665,13 +665,13 @@ class CacheImpl<in out Key, in out Error, in out Value> implements Cache.Cache<K
665
665
  }
666
666
 
667
667
  /** @internal */
668
- export const make = <Key, Environment, Error, Value>(
668
+ export const make = <Key, Value, Error = never, Environment = never>(
669
669
  options: {
670
670
  readonly capacity: number
671
671
  readonly timeToLive: Duration.DurationInput
672
- readonly lookup: Cache.Lookup<Key, Environment, Error, Value>
672
+ readonly lookup: Cache.Lookup<Key, Value, Error, Environment>
673
673
  }
674
- ): Effect.Effect<Cache.Cache<Key, Error, Value>, never, Environment> => {
674
+ ): Effect.Effect<Cache.Cache<Key, Value, Error>, never, Environment> => {
675
675
  const timeToLive = Duration.decode(options.timeToLive)
676
676
  return makeWith({
677
677
  capacity: options.capacity,
@@ -681,13 +681,13 @@ export const make = <Key, Environment, Error, Value>(
681
681
  }
682
682
 
683
683
  /** @internal */
684
- export const makeWith = <Key, Environment, Error, Value>(
684
+ export const makeWith = <Key, Value, Error = never, Environment = never>(
685
685
  options: {
686
686
  readonly capacity: number
687
- readonly lookup: Cache.Lookup<Key, Environment, Error, Value>
687
+ readonly lookup: Cache.Lookup<Key, Value, Error, Environment>
688
688
  readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
689
689
  }
690
- ): Effect.Effect<Cache.Cache<Key, Error, Value>, never, Environment> =>
690
+ ): Effect.Effect<Cache.Cache<Key, Value, Error>, never, Environment> =>
691
691
  core.map(
692
692
  fiberRuntime.all([core.context<Environment>(), core.fiberId]),
693
693
  ([context, fiberId]) =>
@@ -701,12 +701,12 @@ export const makeWith = <Key, Environment, Error, Value>(
701
701
  )
702
702
 
703
703
  /** @internal */
704
- export const unsafeMakeWith = <Key, Error, Value>(
704
+ export const unsafeMakeWith = <Key, Value, Error = never>(
705
705
  capacity: number,
706
- lookup: Cache.Lookup<Key, never, Error, Value>,
706
+ lookup: Cache.Lookup<Key, Value, Error>,
707
707
  timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
708
- ): Cache.Cache<Key, Error, Value> =>
709
- new CacheImpl<Key, Error, Value>(
708
+ ): Cache.Cache<Key, Value, Error> =>
709
+ new CacheImpl<Key, Value, Error>(
710
710
  capacity,
711
711
  Context.empty() as Context.Context<any>,
712
712
  none,
@@ -1,3 +1,4 @@
1
+ import * as Arr from "../Array.js"
1
2
  import type * as Cause from "../Cause.js"
2
3
  import * as Chunk from "../Chunk.js"
3
4
  import * as Either from "../Either.js"
@@ -11,9 +12,7 @@ import * as Option from "../Option.js"
11
12
  import { pipeArguments } from "../Pipeable.js"
12
13
  import { hasProperty, isFunction } from "../Predicate.js"
13
14
  import type { Predicate, Refinement } from "../Predicate.js"
14
- import * as ReadonlyArray from "../ReadonlyArray.js"
15
- import type { ParentSpan, Span } from "../Tracer.js"
16
- import type { NoInfer } from "../Types.js"
15
+ import type { AnySpan, Span } from "../Tracer.js"
17
16
  import { getBugErrorMessage } from "./errors.js"
18
17
  import * as OpCodes from "./opCodes/cause.js"
19
18
 
@@ -585,7 +584,7 @@ const flattenCauseLoop = (
585
584
  while (1) {
586
585
  const [parallel, sequential] = pipe(
587
586
  causes,
588
- ReadonlyArray.reduce(
587
+ Arr.reduce(
589
588
  [HashSet.empty<unknown>(), Chunk.empty<Cause.Cause<unknown>>()] as const,
590
589
  ([parallel, sequential], cause) => {
591
590
  const [par, seq] = evaluateCause(cause)
@@ -991,7 +990,7 @@ export const pretty = <E>(cause: Cause.Cause<E>): string => {
991
990
  message += `\r\n${filterStack(e.stack)}`
992
991
  }
993
992
  if (e.span) {
994
- let current: Span | ParentSpan | undefined = e.span
993
+ let current: Span | AnySpan | undefined = e.span
995
994
  let i = 0
996
995
  while (current && current._tag === "Span" && i < 10) {
997
996
  message += `\r\n at ${current.name}`
@@ -1047,7 +1046,7 @@ export const prettyErrorMessage = (u: unknown): string => {
1047
1046
  hasProperty(u, "toString") &&
1048
1047
  isFunction(u["toString"]) &&
1049
1048
  u["toString"] !== Object.prototype.toString &&
1050
- u["toString"] !== Array.prototype.toString
1049
+ u["toString"] !== globalThis.Array.prototype.toString
1051
1050
  ) {
1052
1051
  return u["toString"]()
1053
1052
  }
@@ -162,7 +162,7 @@ export class ChannelExecutor<
162
162
  Effect.flatMap(Fiber.interrupt(fiber), () =>
163
163
  Effect.suspend(() => {
164
164
  const effect = this.restorePipe(exit, inputExecutor)
165
- return effect !== undefined ? effect : Effect.unit
165
+ return effect !== undefined ? effect : Effect.void
166
166
  }))
167
167
  )
168
168
  )
@@ -188,7 +188,7 @@ export class ChannelExecutor<
188
188
  (effect) =>
189
189
  Effect.sync(() => {
190
190
  const prevLastClose = this._closeLastSubstream === undefined
191
- ? Effect.unit
191
+ ? Effect.void
192
192
  : this._closeLastSubstream
193
193
  this._closeLastSubstream = pipe(prevLastClose, Effect.zipRight(effect))
194
194
  })
@@ -217,7 +217,7 @@ export class ChannelExecutor<
217
217
  this._emitted = this._currentChannel.out
218
218
  this._currentChannel = (this._activeSubexecutor !== undefined ?
219
219
  undefined :
220
- core.unit) as core.Primitive | undefined
220
+ core.void) as core.Primitive | undefined
221
221
  result = ChannelState.Emit()
222
222
  break
223
223
  }
@@ -252,13 +252,13 @@ export class ChannelExecutor<
252
252
  const state = this.doneHalt(cause)
253
253
  return state !== undefined && ChannelState.isFromEffect(state) ?
254
254
  state.effect :
255
- Effect.unit
255
+ Effect.void
256
256
  },
257
257
  onSuccess: (value) => {
258
258
  const state = this.doneSucceed(value)
259
259
  return state !== undefined && ChannelState.isFromEffect(state) ?
260
260
  state.effect :
261
- Effect.unit
261
+ Effect.void
262
262
  }
263
263
  })
264
264
  ) as ChannelState.ChannelState<unknown, Env> | undefined
@@ -279,7 +279,7 @@ export class ChannelExecutor<
279
279
 
280
280
  this.addFinalizer((exit) => {
281
281
  const effect = this.restorePipe(exit, previousInput)
282
- return effect !== undefined ? effect : Effect.unit
282
+ return effect !== undefined ? effect : Effect.void
283
283
  })
284
284
 
285
285
  this._currentChannel = this._currentChannel.right() as core.Primitive
@@ -382,7 +382,7 @@ export class ChannelExecutor<
382
382
  }
383
383
  next = this._doneStack.pop() as Continuation.Primitive | undefined
384
384
  }
385
- const effect = (finalizers.length === 0 ? Effect.unit : runFinalizers(finalizers, exit)) as Effect.Effect<
385
+ const effect = (finalizers.length === 0 ? Effect.void : runFinalizers(finalizers, exit)) as Effect.Effect<
386
386
  unknown,
387
387
  never,
388
388
  Env
@@ -414,7 +414,7 @@ export class ChannelExecutor<
414
414
  const effect = currInput.close(exit)
415
415
  return effect
416
416
  }
417
- return Effect.unit
417
+ return Effect.void
418
418
  }
419
419
 
420
420
  close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<unknown, never, Env> | undefined {
@@ -608,7 +608,7 @@ export class ChannelExecutor<
608
608
  })
609
609
  this._activeSubexecutor = undefined
610
610
  return state === undefined ?
611
- Effect.unit :
611
+ Effect.void :
612
612
  ChannelState.effect(state)
613
613
  }
614
614
 
@@ -622,7 +622,7 @@ export class ChannelExecutor<
622
622
  Effect.forEach((closeFunc) =>
623
623
  pipe(
624
624
  Effect.sync(() => closeFunc(subexecutorDone)),
625
- Effect.flatMap((closeEffect) => closeEffect !== undefined ? closeEffect : Effect.unit)
625
+ Effect.flatMap((closeEffect) => closeEffect !== undefined ? closeEffect : Effect.void)
626
626
  ), { discard: true })
627
627
  )
628
628
  )
@@ -802,7 +802,7 @@ export class ChannelExecutor<
802
802
  return ChannelState.Read(
803
803
  subexecutor.upstreamExecutor,
804
804
  (effect) => {
805
- const closeLastSubstream = this._closeLastSubstream === undefined ? Effect.unit : this._closeLastSubstream
805
+ const closeLastSubstream = this._closeLastSubstream === undefined ? Effect.void : this._closeLastSubstream
806
806
  this._closeLastSubstream = undefined
807
807
  return pipe(
808
808
  this._executeCloseLastSubstream(closeLastSubstream),
@@ -999,7 +999,7 @@ export class ChannelExecutor<
999
999
  }
1000
1000
 
1001
1001
  const ifNotNull = <Env>(effect: Effect.Effect<unknown, never, Env> | undefined): Effect.Effect<unknown, never, Env> =>
1002
- effect !== undefined ? effect : Effect.unit
1002
+ effect !== undefined ? effect : Effect.void
1003
1003
 
1004
1004
  const runFinalizers = <Env>(
1005
1005
  finalizers: Array<ErasedFinalizer<Env>>,
@@ -1007,7 +1007,7 @@ const runFinalizers = <Env>(
1007
1007
  ): Effect.Effect<unknown, never, Env> => {
1008
1008
  return pipe(
1009
1009
  Effect.forEach(finalizers, (fin) => Effect.exit(fin(exit))),
1010
- Effect.map((exits) => pipe(Exit.all(exits), Option.getOrElse(() => Exit.unit))),
1010
+ Effect.map((exits) => pipe(Exit.all(exits), Option.getOrElse(() => Exit.void))),
1011
1011
  Effect.flatMap((exit) => Effect.suspend(() => exit as Exit.Exit<unknown>))
1012
1012
  )
1013
1013
  }
@@ -1075,7 +1075,7 @@ export const readUpstream = <A, E2, R, E>(
1075
1075
  Effect.catchAllCause((cause) =>
1076
1076
  Effect.suspend(() => {
1077
1077
  const doneEffect = current.onDone(Exit.failCause(cause)) as Effect.Effect<void>
1078
- return doneEffect === undefined ? Effect.unit : doneEffect
1078
+ return doneEffect === undefined ? Effect.void : doneEffect
1079
1079
  })
1080
1080
  ),
1081
1081
  Effect.matchCauseEffect({ onFailure, onSuccess: () => read() })
@@ -1120,7 +1120,7 @@ export const runScoped = <Env, InErr, InDone, OutErr, OutDone>(
1120
1120
  (exec, exit) => {
1121
1121
  const finalize = exec.close(exit)
1122
1122
  if (finalize === undefined) {
1123
- return Effect.unit
1123
+ return Effect.void
1124
1124
  }
1125
1125
  return Effect.tapErrorCause(
1126
1126
  finalize,
@@ -127,7 +127,7 @@ export const isRead = <E, R>(self: ChannelState<E, R>): self is Read => (self as
127
127
 
128
128
  /** @internal */
129
129
  export const effect = <E, R>(self: ChannelState<E, R>): Effect.Effect<void, E, R> =>
130
- isFromEffect(self) ? self.effect as Effect.Effect<void, E, R> : Effect.unit
130
+ isFromEffect(self) ? self.effect as Effect.Effect<void, E, R> : Effect.void
131
131
 
132
132
  /** @internal */
133
133
  export const effectOrUndefinedIgnored = <E, R>(self: ChannelState<E, R>): Effect.Effect<void, E, R> | undefined =>
@@ -100,7 +100,7 @@ class SingleProducerAsyncInputImpl<in out Err, in out Elem, in out Done>
100
100
  Ref.modify(this.ref, (state) =>
101
101
  state._tag === OP_STATE_EMPTY ?
102
102
  [Deferred.await(state.notifyProducer), state as State<Err, Elem, Done>] :
103
- [Effect.unit, state])
103
+ [Effect.void, state])
104
104
  )
105
105
  }
106
106
 
@@ -44,7 +44,7 @@ export const acquireUseRelease = <Acquired, OutErr, Env, OutElem1, InElem, InErr
44
44
  core.fromEffect(
45
45
  Ref.make<
46
46
  (exit: Exit.Exit<OutDone, OutErr>) => Effect.Effect<any, never, Env>
47
- >(() => Effect.unit)
47
+ >(() => Effect.void)
48
48
  ),
49
49
  (ref) =>
50
50
  pipe(
@@ -78,7 +78,7 @@ export const as = dual<
78
78
  ): Channel.Channel<OutElem, InElem, OutErr, InErr, OutDone2, InDone, Env> => map(self, () => value))
79
79
 
80
80
  /** @internal */
81
- export const asUnit = <OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>(
81
+ export const asVoid = <OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>(
82
82
  self: Channel.Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>
83
83
  ): Channel.Channel<OutElem, InElem, OutErr, InErr, void, InDone, Env> => map(self, constVoid)
84
84
 
@@ -931,8 +931,8 @@ export const mapOutEffectPar = dual<
931
931
  onLeft: (outDone) => {
932
932
  const lock = withPermits(n)
933
933
  return Effect.zipRight(
934
- Effect.interruptible(lock(Effect.unit)),
935
- Effect.asUnit(Queue.offer(
934
+ Effect.interruptible(lock(Effect.void)),
935
+ Effect.asVoid(Queue.offer(
936
936
  queue,
937
937
  Effect.succeed(Either.left(outDone))
938
938
  ))
@@ -942,7 +942,7 @@ export const mapOutEffectPar = dual<
942
942
  Effect.gen(function*($) {
943
943
  const deferred = yield* $(Deferred.make<OutElem1, OutErr1>())
944
944
  const latch = yield* $(Deferred.make<void>())
945
- yield* $(Effect.asUnit(Queue.offer(
945
+ yield* $(Effect.asVoid(Queue.offer(
946
946
  queue,
947
947
  Effect.map(Deferred.await(deferred), Either.right)
948
948
  )))
@@ -1189,7 +1189,7 @@ export const mergeAllWith = (
1189
1189
  pipe(
1190
1190
  Queue.offer(queue, Effect.failCause(cause)),
1191
1191
  Effect.zipRight(Deferred.succeed(errorSignal, void 0)),
1192
- Effect.asUnit
1192
+ Effect.asVoid
1193
1193
  )
1194
1194
  )
1195
1195
  )
@@ -1204,7 +1204,7 @@ export const mergeAllWith = (
1204
1204
  onLeft: (outDone) =>
1205
1205
  Effect.raceWith(
1206
1206
  Effect.interruptible(Deferred.await(errorSignal)),
1207
- Effect.interruptible(withPermits(concurrencyN)(Effect.unit)),
1207
+ Effect.interruptible(withPermits(concurrencyN)(Effect.void)),
1208
1208
  {
1209
1209
  onSelfDone: (_, permitAcquisition) => Effect.as(Fiber.interrupt(permitAcquisition), false),
1210
1210
  onOtherDone: (_, failureAwait) =>
@@ -2211,7 +2211,7 @@ export const toPull = <OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>(
2211
2211
  Effect.sync(() => new executor.ChannelExecutor(self, void 0, identity)),
2212
2212
  (exec, exit) => {
2213
2213
  const finalize = exec.close(exit)
2214
- return finalize === undefined ? Effect.unit : finalize
2214
+ return finalize === undefined ? Effect.void : finalize
2215
2215
  }
2216
2216
  ),
2217
2217
  (exec) => Effect.suspend(() => interpretToPull(exec.run() as ChannelState.ChannelState<OutErr, Env>, exec))
@@ -2316,7 +2316,7 @@ export const withSpan = dual<
2316
2316
  options?: {
2317
2317
  readonly attributes?: Record<string, unknown> | undefined
2318
2318
  readonly links?: ReadonlyArray<Tracer.SpanLink> | undefined
2319
- readonly parent?: Tracer.ParentSpan | undefined
2319
+ readonly parent?: Tracer.AnySpan | undefined
2320
2320
  readonly root?: boolean | undefined
2321
2321
  readonly context?: Context.Context<never> | undefined
2322
2322
  }
@@ -2329,7 +2329,7 @@ export const withSpan = dual<
2329
2329
  options?: {
2330
2330
  readonly attributes?: Record<string, unknown> | undefined
2331
2331
  readonly links?: ReadonlyArray<Tracer.SpanLink> | undefined
2332
- readonly parent?: Tracer.ParentSpan | undefined
2332
+ readonly parent?: Tracer.AnySpan | undefined
2333
2333
  readonly root?: boolean | undefined
2334
2334
  readonly context?: Context.Context<never> | undefined
2335
2335
  }
@@ -2363,7 +2363,7 @@ const writeChunkWriter = <OutElem>(
2363
2363
  chunk: Chunk.Chunk<OutElem>
2364
2364
  ): Channel.Channel<OutElem> => {
2365
2365
  return idx === len
2366
- ? core.unit
2366
+ ? core.void
2367
2367
  : pipe(
2368
2368
  core.write(pipe(chunk, Chunk.unsafeGet(idx))),
2369
2369
  core.flatMap(() => writeChunkWriter(idx + 1, len, chunk))
@@ -85,8 +85,8 @@ class ClockImpl implements Clock.Clock {
85
85
 
86
86
  sleep(duration: Duration.Duration): Effect.Effect<void> {
87
87
  return core.async<void>((resume) => {
88
- const canceler = globalClockScheduler.unsafeSchedule(() => resume(core.unit), duration)
89
- return core.asUnit(core.sync(canceler))
88
+ const canceler = globalClockScheduler.unsafeSchedule(() => resume(core.void), duration)
89
+ return core.asVoid(core.sync(canceler))
90
90
  })
91
91
  }
92
92
  }