effect 2.4.19 → 3.0.0

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 +288 -0
  25. package/dist/cjs/FiberHandle.js.map +1 -0
  26. package/dist/cjs/FiberMap.js +86 -27
  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 +46 -47
  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} +39 -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 +247 -0
  329. package/dist/esm/FiberHandle.js.map +1 -0
  330. package/dist/esm/FiberMap.js +85 -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 +46 -47
  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} +47 -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 +414 -0
  504. package/src/FiberMap.ts +181 -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 +49 -52
  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
@@ -1,3 +1,4 @@
1
+ import * as Array from "../Array.js";
1
2
  import * as Context from "../Context.js";
2
3
  import * as Either from "../Either.js";
3
4
  import { dual, pipe } from "../Function.js";
@@ -6,7 +7,6 @@ import * as HashSet from "../HashSet.js";
6
7
  import * as number from "../Number.js";
7
8
  import * as Option from "../Option.js";
8
9
  import { pipeArguments } from "../Pipeable.js";
9
- import * as ReadonlyArray from "../ReadonlyArray.js";
10
10
  import * as regexp from "../RegExp.js";
11
11
  import * as configError from "./configError.js";
12
12
  import * as pathPatch from "./configProvider/pathPatch.js";
@@ -41,8 +41,8 @@ export const makeFlat = options => ({
41
41
  });
42
42
  /** @internal */
43
43
  export const fromFlat = flat => make({
44
- load: config => core.flatMap(fromFlatLoop(flat, ReadonlyArray.empty(), config, false), chunk => Option.match(ReadonlyArray.head(chunk), {
45
- onNone: () => core.fail(configError.MissingData(ReadonlyArray.empty(), `Expected a single value having structure: ${config}`)),
44
+ load: config => core.flatMap(fromFlatLoop(flat, Array.empty(), config, false), chunk => Option.match(Array.head(chunk), {
45
+ onNone: () => core.fail(configError.MissingData(Array.empty(), `Expected a single value having structure: ${config}`)),
46
46
  onSome: core.succeed
47
47
  })),
48
48
  flattened: flat
@@ -56,7 +56,7 @@ export const fromEnv = config => {
56
56
  pathDelim: "_",
57
57
  seqDelim: ","
58
58
  }, config);
59
- const makePathString = path => pipe(path, ReadonlyArray.join(pathDelim));
59
+ const makePathString = path => pipe(path, Array.join(pathDelim));
60
60
  const unmakePathString = pathString => pathString.split(pathDelim);
61
61
  const getEnv = () => typeof process !== "undefined" && "env" in process && typeof process.env === "object" ? process.env : {};
62
62
  const load = (path, primitive, split = true) => {
@@ -68,10 +68,10 @@ export const fromEnv = config => {
68
68
  const enumerateChildren = path => core.sync(() => {
69
69
  const current = getEnv();
70
70
  const keys = Object.keys(current);
71
- const keyPaths = Array.from(keys).map(value => unmakePathString(value.toUpperCase()));
71
+ const keyPaths = keys.map(value => unmakePathString(value.toUpperCase()));
72
72
  const filteredKeyPaths = keyPaths.filter(keyPath => {
73
73
  for (let i = 0; i < path.length; i++) {
74
- const pathComponent = pipe(path, ReadonlyArray.unsafeGet(i));
74
+ const pathComponent = pipe(path, Array.unsafeGet(i));
75
75
  const currentElement = keyPath[i];
76
76
  if (currentElement === undefined || pathComponent !== currentElement) {
77
77
  return false;
@@ -96,19 +96,19 @@ export const fromMap = (map, config) => {
96
96
  seqDelim: ",",
97
97
  pathDelim: "."
98
98
  }, config);
99
- const makePathString = path => pipe(path, ReadonlyArray.join(pathDelim));
99
+ const makePathString = path => pipe(path, Array.join(pathDelim));
100
100
  const unmakePathString = pathString => pathString.split(pathDelim);
101
- const mapWithIndexSplit = splitIndexInKeys(map, str => Array.from(unmakePathString(str)), makePathString);
101
+ const mapWithIndexSplit = splitIndexInKeys(map, str => unmakePathString(str), makePathString);
102
102
  const load = (path, primitive, split = true) => {
103
103
  const pathString = makePathString(path);
104
104
  const valueOpt = mapWithIndexSplit.has(pathString) ? Option.some(mapWithIndexSplit.get(pathString)) : Option.none();
105
105
  return pipe(valueOpt, core.mapError(() => configError.MissingData(path, `Expected ${pathString} to exist in the provided map`)), core.flatMap(value => parsePrimitive(value, path, primitive, seqDelim, split)));
106
106
  };
107
107
  const enumerateChildren = path => core.sync(() => {
108
- const keyPaths = Array.from(mapWithIndexSplit.keys()).map(unmakePathString);
108
+ const keyPaths = Array.fromIterable(mapWithIndexSplit.keys()).map(unmakePathString);
109
109
  const filteredKeyPaths = keyPaths.filter(keyPath => {
110
110
  for (let i = 0; i < path.length; i++) {
111
- const pathComponent = pipe(path, ReadonlyArray.unsafeGet(i));
111
+ const pathComponent = pipe(path, Array.unsafeGet(i));
112
112
  const currentElement = keyPath[i];
113
113
  if (currentElement === undefined || pathComponent !== currentElement) {
114
114
  return false;
@@ -125,8 +125,8 @@ export const fromMap = (map, config) => {
125
125
  }));
126
126
  };
127
127
  const extend = (leftDef, rightDef, left, right) => {
128
- const leftPad = ReadonlyArray.unfold(left.length, index => index >= right.length ? Option.none() : Option.some([leftDef(index), index + 1]));
129
- const rightPad = ReadonlyArray.unfold(right.length, index => index >= left.length ? Option.none() : Option.some([rightDef(index), index + 1]));
128
+ const leftPad = Array.unfold(left.length, index => index >= right.length ? Option.none() : Option.some([leftDef(index), index + 1]));
129
+ const rightPad = Array.unfold(right.length, index => index >= left.length ? Option.none() : Option.some([rightDef(index), index + 1]));
130
130
  const leftExtension = concat(left, leftPad);
131
131
  const rightExtension = concat(right, rightPad);
132
132
  return [leftExtension, rightExtension];
@@ -148,7 +148,7 @@ const fromFlatLoop = (flat, prefix, config, split) => {
148
148
  switch (op._tag) {
149
149
  case OpCodes.OP_CONSTANT:
150
150
  {
151
- return core.succeed(ReadonlyArray.of(op.value));
151
+ return core.succeed(Array.of(op.value));
152
152
  }
153
153
  case OpCodes.OP_DESCRIBED:
154
154
  {
@@ -177,13 +177,13 @@ const fromFlatLoop = (flat, prefix, config, split) => {
177
177
  }
178
178
  case OpCodes.OP_NESTED:
179
179
  {
180
- return core.suspend(() => fromFlatLoop(flat, concat(prefix, ReadonlyArray.of(op.name)), op.config, split));
180
+ return core.suspend(() => fromFlatLoop(flat, concat(prefix, Array.of(op.name)), op.config, split));
181
181
  }
182
182
  case OpCodes.OP_PRIMITIVE:
183
183
  {
184
184
  return pipe(pathPatch.patch(prefix, flat.patch), core.flatMap(prefix => pipe(flat.load(prefix, op, split), core.flatMap(values => {
185
185
  if (values.length === 0) {
186
- const name = pipe(ReadonlyArray.last(prefix), Option.getOrElse(() => "<n/a>"));
186
+ const name = pipe(Array.last(prefix), Option.getOrElse(() => "<n/a>"));
187
187
  return core.fail(configError.MissingData([], `Expected ${op.description} with name ${name}`));
188
188
  }
189
189
  return core.succeed(values);
@@ -193,26 +193,25 @@ const fromFlatLoop = (flat, prefix, config, split) => {
193
193
  {
194
194
  return pipe(pathPatch.patch(prefix, flat.patch), core.flatMap(patchedPrefix => pipe(flat.enumerateChildren(patchedPrefix), core.flatMap(indicesFrom), core.flatMap(indices => {
195
195
  if (indices.length === 0) {
196
- return core.suspend(() => core.map(fromFlatLoop(flat, patchedPrefix, op.config, true), ReadonlyArray.of));
196
+ return core.suspend(() => core.map(fromFlatLoop(flat, patchedPrefix, op.config, true), Array.of));
197
197
  }
198
- return pipe(core.forEachSequential(indices, index => fromFlatLoop(flat, ReadonlyArray.append(prefix, `[${index}]`), op.config, true)), core.map(chunkChunk => {
199
- const flattened = ReadonlyArray.flatten(chunkChunk);
198
+ return pipe(core.forEachSequential(indices, index => fromFlatLoop(flat, Array.append(prefix, `[${index}]`), op.config, true)), core.map(chunkChunk => {
199
+ const flattened = Array.flatten(chunkChunk);
200
200
  if (flattened.length === 0) {
201
- return ReadonlyArray.of(ReadonlyArray.empty());
201
+ return Array.of(Array.empty());
202
202
  }
203
- return ReadonlyArray.of(flattened);
203
+ return Array.of(flattened);
204
204
  }));
205
205
  }))));
206
206
  }
207
207
  case OpCodes.OP_HASHMAP:
208
208
  {
209
209
  return core.suspend(() => pipe(pathPatch.patch(prefix, flat.patch), core.flatMap(prefix => pipe(flat.enumerateChildren(prefix), core.flatMap(keys => {
210
- return pipe(keys, core.forEachSequential(key => fromFlatLoop(flat, concat(prefix, ReadonlyArray.of(key)), op.valueConfig, split)), core.map(values => {
211
- if (values.length === 0) {
212
- return ReadonlyArray.of(HashMap.empty());
210
+ return pipe(keys, core.forEachSequential(key => fromFlatLoop(flat, concat(prefix, Array.of(key)), op.valueConfig, split)), core.map(matrix => {
211
+ if (matrix.length === 0) {
212
+ return Array.of(HashMap.empty());
213
213
  }
214
- const matrix = values.map(x => Array.from(x));
215
- return pipe(transpose(matrix), ReadonlyArray.map(values => HashMap.fromIterable(ReadonlyArray.zip(ReadonlyArray.fromIterable(keys), values))));
214
+ return pipe(transpose(matrix), Array.map(values => HashMap.fromIterable(Array.zip(Array.fromIterable(keys), values))));
216
215
  }));
217
216
  })))));
218
217
  }
@@ -229,10 +228,10 @@ const fromFlatLoop = (flat, prefix, config, split) => {
229
228
  return core.fail(right.left);
230
229
  }
231
230
  if (Either.isRight(left) && Either.isRight(right)) {
232
- const path = pipe(prefix, ReadonlyArray.join("."));
231
+ const path = pipe(prefix, Array.join("."));
233
232
  const fail = fromFlatLoopFail(prefix, path);
234
- const [lefts, rights] = extend(fail, fail, pipe(left.right, ReadonlyArray.map(Either.right)), pipe(right.right, ReadonlyArray.map(Either.right)));
235
- return pipe(lefts, ReadonlyArray.zip(rights), core.forEachSequential(([left, right]) => pipe(core.zip(left, right), core.map(([left, right]) => op.zip(left, right)))));
233
+ const [lefts, rights] = extend(fail, fail, pipe(left.right, Array.map(Either.right)), pipe(right.right, Array.map(Either.right)));
234
+ return pipe(lefts, Array.zip(rights), core.forEachSequential(([left, right]) => pipe(core.zip(left, right), core.map(([left, right]) => op.zip(left, right)))));
236
235
  }
237
236
  throw new Error("BUG: ConfigProvider.fromFlatLoop - please report an issue at https://github.com/Effect-TS/effect/issues");
238
237
  })))));
@@ -292,8 +291,8 @@ export const snakeCase = self => mapInputPath(self, StringUtils.snakeCase);
292
291
  export const upperCase = self => mapInputPath(self, StringUtils.upperCase);
293
292
  /** @internal */
294
293
  export const within = /*#__PURE__*/dual(3, (self, path, f) => {
295
- const unnest = ReadonlyArray.reduce(path, self, (provider, name) => unnested(provider, name));
296
- const nest = ReadonlyArray.reduceRight(path, f(unnest), (provider, name) => nested(provider, name));
294
+ const unnest = Array.reduce(path, self, (provider, name) => unnested(provider, name));
295
+ const nest = Array.reduceRight(path, f(unnest), (provider, name) => nested(provider, name));
297
296
  return orElse(nest, () => self);
298
297
  });
299
298
  const splitPathString = (text, delim) => {
@@ -304,7 +303,7 @@ const parsePrimitive = (text, path, primitive, delimiter, split) => {
304
303
  if (!split) {
305
304
  return pipe(primitive.parse(text), core.mapBoth({
306
305
  onFailure: configError.prefixed(path),
307
- onSuccess: ReadonlyArray.of
306
+ onSuccess: Array.of
308
307
  }));
309
308
  }
310
309
  return pipe(splitPathString(text, delimiter), core.forEachSequential(char => primitive.parse(char.trim())), core.mapError(configError.prefixed(path)));
@@ -313,8 +312,8 @@ const transpose = array => {
313
312
  return Object.keys(array[0]).map(column => array.map(row => row[column]));
314
313
  };
315
314
  const indicesFrom = quotedIndices => pipe(core.forEachSequential(quotedIndices, parseQuotedIndex), core.mapBoth({
316
- onFailure: () => ReadonlyArray.empty(),
317
- onSuccess: ReadonlyArray.sort(number.Order)
315
+ onFailure: () => Array.empty(),
316
+ onSuccess: Array.sort(number.Order)
318
317
  }), core.either, core.map(Either.merge));
319
318
  const STR_INDEX_REGEX = /(^.+)(\[(\d+)\])$/;
320
319
  const QUOTED_INDEX_REGEX = /^(\[(\d+)\])$/;
@@ -329,9 +328,9 @@ const parseQuotedIndex = str => {
329
328
  const splitIndexInKeys = (map, unmakePathString, makePathString) => {
330
329
  const newMap = new Map();
331
330
  for (const [pathString, value] of map) {
332
- const keyWithIndex = pipe(unmakePathString(pathString), ReadonlyArray.flatMap(key => Option.match(splitIndexFrom(key), {
333
- onNone: () => ReadonlyArray.of(key),
334
- onSome: ([key, index]) => ReadonlyArray.make(key, `[${index}]`)
331
+ const keyWithIndex = pipe(unmakePathString(pathString), Array.flatMap(key => Option.match(splitIndexFrom(key), {
332
+ onNone: () => Array.of(key),
333
+ onSome: ([key, index]) => Array.make(key, `[${index}]`)
335
334
  })));
336
335
  newMap.set(makePathString(keyWithIndex), value);
337
336
  }
@@ -363,7 +362,7 @@ const keyIndex = index => ({
363
362
  /** @internal */
364
363
  export const fromJson = json => {
365
364
  const hiddenDelimiter = "\ufeff";
366
- const indexedEntries = ReadonlyArray.map(getIndexedEntries(json), ([key, value]) => [configPathToString(key).join(hiddenDelimiter), value]);
365
+ const indexedEntries = Array.map(getIndexedEntries(json), ([key, value]) => [configPathToString(key).join(hiddenDelimiter), value]);
367
366
  return fromMap(new Map(indexedEntries), {
368
367
  pathDelim: hiddenDelimiter,
369
368
  seqDelim: hiddenDelimiter
@@ -395,10 +394,10 @@ const configPathToString = path => {
395
394
  const getIndexedEntries = config => {
396
395
  const loopAny = (path, value) => {
397
396
  if (typeof value === "string") {
398
- return ReadonlyArray.make([path, value]);
397
+ return Array.make([path, value]);
399
398
  }
400
399
  if (typeof value === "number" || typeof value === "boolean") {
401
- return ReadonlyArray.make([path, String(value)]);
400
+ return Array.make([path, String(value)]);
402
401
  }
403
402
  if (Array.isArray(value)) {
404
403
  return loopArray(path, value);
@@ -406,20 +405,20 @@ const getIndexedEntries = config => {
406
405
  if (typeof value === "object" && value !== null) {
407
406
  return loopObject(path, value);
408
407
  }
409
- return ReadonlyArray.empty();
408
+ return Array.empty();
410
409
  };
411
- const loopArray = (path, values) => ReadonlyArray.match(values, {
412
- onEmpty: () => ReadonlyArray.make([path, "<nil>"]),
413
- onNonEmpty: ReadonlyArray.flatMap((value, index) => loopAny(ReadonlyArray.append(path, keyIndex(index)), value))
410
+ const loopArray = (path, values) => Array.match(values, {
411
+ onEmpty: () => Array.make([path, "<nil>"]),
412
+ onNonEmpty: Array.flatMap((value, index) => loopAny(Array.append(path, keyIndex(index)), value))
414
413
  });
415
414
  const loopObject = (path, value) => Object.entries(value).flatMap(([key, value]) => {
416
- const newPath = ReadonlyArray.append(path, keyName(key));
415
+ const newPath = Array.append(path, keyName(key));
417
416
  const result = loopAny(newPath, value);
418
- if (ReadonlyArray.isEmptyReadonlyArray(result)) {
419
- return ReadonlyArray.make([newPath, ""]);
417
+ if (Array.isEmptyReadonlyArray(result)) {
418
+ return Array.make([newPath, ""]);
420
419
  }
421
420
  return result;
422
421
  });
423
- return loopObject(ReadonlyArray.empty(), config);
422
+ return loopObject(Array.empty(), config);
424
423
  };
425
424
  //# sourceMappingURL=configProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configProvider.js","names":["Context","Either","dual","pipe","HashMap","HashSet","number","Option","pipeArguments","ReadonlyArray","regexp","configError","pathPatch","core","OpCodes","StringUtils","concat","l","r","ConfigProviderSymbolKey","ConfigProviderTypeId","Symbol","for","configProviderTag","GenericTag","FlatConfigProviderSymbolKey","FlatConfigProviderTypeId","make","options","arguments","makeFlat","patch","load","path","config","split","enumerateChildren","fromFlat","flat","flatMap","fromFlatLoop","empty","chunk","match","head","onNone","fail","MissingData","onSome","succeed","flattened","fromEnv","pathDelim","seqDelim","Object","assign","makePathString","join","unmakePathString","pathString","getEnv","process","env","primitive","current","valueOpt","some","none","mapError","value","parsePrimitive","sync","keys","keyPaths","Array","from","map","toUpperCase","filteredKeyPaths","filter","keyPath","i","length","pathComponent","unsafeGet","currentElement","undefined","slice","fromIterable","fromMap","mapWithIndexSplit","splitIndexInKeys","str","has","get","extend","leftDef","rightDef","left","right","leftPad","unfold","index","rightPad","leftExtension","rightExtension","appendConfigPath","op","_tag","out","push","name","prefix","OP_CONSTANT","of","OP_DESCRIBED","suspend","OP_FAIL","message","OP_FALLBACK","first","catchAll","error1","condition","second","error2","Or","OP_LAZY","OP_MAP_OR_FAIL","original","forEachSequential","a","mapOrFail","prefixed","OP_NESTED","OP_PRIMITIVE","values","last","getOrElse","description","OP_SEQUENCE","patchedPrefix","indicesFrom","indices","append","chunkChunk","flatten","OP_HASHMAP","key","valueConfig","matrix","x","transpose","zip","OP_ZIP_WITH","either","isLeft","And","isRight","fromFlatLoopFail","lefts","rights","Error","mapInputPath","self","f","mapInputPathFlat","mapName","nested","unnested","orElse","that","orElseFlat","union","constantCase","kebabCase","lowerCase","snakeCase","upperCase","within","unnest","reduce","provider","nest","reduceRight","splitPathString","text","delim","RegExp","escape","delimiter","parse","mapBoth","onFailure","onSuccess","char","trim","array","column","row","quotedIndices","parseQuotedIndex","sort","Order","merge","STR_INDEX_REGEX","QUOTED_INDEX_REGEX","matchedIndex","parseInteger","newMap","Map","keyWithIndex","splitIndexFrom","set","matchedString","optionalString","optionalIndex","all","parsedIndex","Number","parseInt","isNaN","keyName","keyIndex","fromJson","json","hiddenDelimiter","indexedEntries","getIndexedEntries","configPathToString","output","component","nextComponent","loopAny","String","isArray","loopArray","loopObject","onEmpty","onNonEmpty","entries","newPath","result","isEmptyReadonlyArray"],"sources":["../../../src/internal/configProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"configProvider.js","names":["Array","Context","Either","dual","pipe","HashMap","HashSet","number","Option","pipeArguments","regexp","configError","pathPatch","core","OpCodes","StringUtils","concat","l","r","ConfigProviderSymbolKey","ConfigProviderTypeId","Symbol","for","configProviderTag","GenericTag","FlatConfigProviderSymbolKey","FlatConfigProviderTypeId","make","options","arguments","makeFlat","patch","load","path","config","split","enumerateChildren","fromFlat","flat","flatMap","fromFlatLoop","empty","chunk","match","head","onNone","fail","MissingData","onSome","succeed","flattened","fromEnv","pathDelim","seqDelim","Object","assign","makePathString","join","unmakePathString","pathString","getEnv","process","env","primitive","current","valueOpt","some","none","mapError","value","parsePrimitive","sync","keys","keyPaths","map","toUpperCase","filteredKeyPaths","filter","keyPath","i","length","pathComponent","unsafeGet","currentElement","undefined","slice","fromIterable","fromMap","mapWithIndexSplit","splitIndexInKeys","str","has","get","extend","leftDef","rightDef","left","right","leftPad","unfold","index","rightPad","leftExtension","rightExtension","appendConfigPath","op","_tag","out","push","name","prefix","OP_CONSTANT","of","OP_DESCRIBED","suspend","OP_FAIL","message","OP_FALLBACK","first","catchAll","error1","condition","second","error2","Or","OP_LAZY","OP_MAP_OR_FAIL","original","forEachSequential","a","mapOrFail","prefixed","OP_NESTED","OP_PRIMITIVE","values","last","getOrElse","description","OP_SEQUENCE","patchedPrefix","indicesFrom","indices","append","chunkChunk","flatten","OP_HASHMAP","key","valueConfig","matrix","transpose","zip","OP_ZIP_WITH","either","isLeft","And","isRight","fromFlatLoopFail","lefts","rights","Error","mapInputPath","self","f","mapInputPathFlat","mapName","nested","unnested","orElse","that","orElseFlat","union","constantCase","kebabCase","lowerCase","snakeCase","upperCase","within","unnest","reduce","provider","nest","reduceRight","splitPathString","text","delim","RegExp","escape","delimiter","parse","mapBoth","onFailure","onSuccess","char","trim","array","column","row","quotedIndices","parseQuotedIndex","sort","Order","merge","STR_INDEX_REGEX","QUOTED_INDEX_REGEX","matchedIndex","parseInteger","newMap","Map","keyWithIndex","splitIndexFrom","set","matchedString","optionalString","optionalIndex","all","parsedIndex","Number","parseInt","isNaN","keyName","keyIndex","fromJson","json","hiddenDelimiter","indexedEntries","getIndexedEntries","configPathToString","output","component","nextComponent","loopAny","String","isArray","loopArray","loopObject","onEmpty","onNonEmpty","entries","newPath","result","isEmptyReadonlyArray"],"sources":["../../../src/internal/configProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ import * as Array from "../Array.js";
1
2
  import * as Chunk from "../Chunk.js";
2
3
  import * as Clock from "../Clock.js";
3
4
  import * as Context from "../Context.js";
@@ -11,7 +12,6 @@ import * as LogLevel from "../LogLevel.js";
11
12
  import * as LogSpan from "../LogSpan.js";
12
13
  import * as Option from "../Option.js";
13
14
  import * as Predicate from "../Predicate.js";
14
- import * as ReadonlyArray from "../ReadonlyArray.js";
15
15
  import * as Ref from "../Ref.js";
16
16
  import * as Tracer from "../Tracer.js";
17
17
  import * as internalCause from "./cause.js";
@@ -131,7 +131,7 @@ export const descriptorWith = f => core.withFiberRuntime((state, status) => f({
131
131
  interruptors: internalCause.interruptors(state.getFiberRef(core.currentInterruptedCause))
132
132
  }));
133
133
  /* @internal */
134
- export const allowInterrupt = /*#__PURE__*/descriptorWith(descriptor => HashSet.size(descriptor.interruptors) > 0 ? core.interrupt : core.unit);
134
+ export const allowInterrupt = /*#__PURE__*/descriptorWith(descriptor => HashSet.size(descriptor.interruptors) > 0 ? core.interrupt : core.void);
135
135
  /* @internal */
136
136
  export const descriptor = /*#__PURE__*/descriptorWith(core.succeed);
137
137
  /* @internal */
@@ -198,7 +198,7 @@ export const contextWith = f => core.map(core.context(), f);
198
198
  /* @internal */
199
199
  export const eventually = self => core.orElse(self, () => core.flatMap(core.yieldNow(), () => eventually(self)));
200
200
  /* @internal */
201
- export const filterMap = /*#__PURE__*/dual(2, (elements, pf) => core.map(core.forEachSequential(elements, identity), ReadonlyArray.filterMap(pf)));
201
+ export const filterMap = /*#__PURE__*/dual(2, (elements, pf) => core.map(core.forEachSequential(elements, identity), Array.filterMap(pf)));
202
202
  /* @internal */
203
203
  export const filterOrDie = /*#__PURE__*/dual(3, (self, predicate, orDieWith) => filterOrElse(self, predicate, a => core.dieSync(() => orDieWith(a))));
204
204
  /* @internal */
@@ -232,7 +232,7 @@ export const firstSuccessOf = effects => core.suspend(() => {
232
232
  if (!Chunk.isNonEmpty(list)) {
233
233
  return core.dieSync(() => new core.IllegalArgumentException(`Received an empty collection of effects`));
234
234
  }
235
- return pipe(Chunk.tailNonEmpty(list), ReadonlyArray.reduce(Chunk.headNonEmpty(list), (left, right) => core.orElse(left, () => right)));
235
+ return pipe(Chunk.tailNonEmpty(list), Array.reduce(Chunk.headNonEmpty(list), (left, right) => core.orElse(left, () => right)));
236
236
  });
237
237
  /* @internal */
238
238
  export const flipWith = /*#__PURE__*/dual(2, (self, f) => core.flip(f(core.flip(self))));
@@ -305,7 +305,7 @@ export const ignore = self => match(self, {
305
305
  /* @internal */
306
306
  export const ignoreLogged = self => core.matchCauseEffect(self, {
307
307
  onFailure: cause => logDebug(cause, "An error was silently ignored because it is not anticipated to be useful"),
308
- onSuccess: () => core.unit
308
+ onSuccess: () => core.void
309
309
  });
310
310
  /* @internal */
311
311
  export const inheritFiberRefs = childFiberRefs => updateFiberRefs((parentFiberId, parentFiberRefs) => FiberRefs.joinAs(parentFiberRefs, parentFiberId, childFiberRefs));
@@ -326,20 +326,33 @@ export const iterate = (initial, options) => core.suspend(() => {
326
326
  }
327
327
  return core.succeed(initial);
328
328
  });
329
- const logWithLevel = level => (messageOrCause, supplementary) => {
329
+ /** @internal */
330
+ export const logWithLevel = level => (...message) => {
330
331
  const levelOption = Option.fromNullable(level);
331
- let message;
332
- let cause;
333
- if (internalCause.isCause(messageOrCause)) {
334
- cause = messageOrCause;
335
- message = supplementary ?? "";
336
- } else {
337
- message = messageOrCause;
338
- cause = supplementary ?? internalCause.empty;
332
+ let cause = undefined;
333
+ for (let i = 0, len = message.length; i < len; i++) {
334
+ const msg = message[i];
335
+ if (internalCause.isCause(msg)) {
336
+ if (cause !== undefined) {
337
+ cause = internalCause.sequential(cause, msg);
338
+ } else {
339
+ cause = msg;
340
+ }
341
+ message = [...message.slice(0, i), ...message.slice(i + 1)];
342
+ i--;
343
+ }
344
+ }
345
+ if (message.length === 0) {
346
+ message = "";
347
+ } else if (message.length === 1) {
348
+ message = message[0];
349
+ }
350
+ if (cause === undefined) {
351
+ cause = internalCause.empty;
339
352
  }
340
353
  return core.withFiberRuntime(fiberState => {
341
354
  fiberState.log(message, cause, levelOption);
342
- return core.unit;
355
+ return core.void;
343
356
  });
344
357
  };
345
358
  /** @internal */
@@ -361,9 +374,9 @@ export const withLogSpan = /*#__PURE__*/dual(2, (effect, label) => core.flatMap(
361
374
  /* @internal */
362
375
  export const logAnnotations = /*#__PURE__*/core.fiberRefGet(core.currentLogAnnotations);
363
376
  /* @internal */
364
- export const loop = (initial, options) => options.discard ? loopDiscard(initial, options.while, options.step, options.body) : core.map(loopInternal(initial, options.while, options.step, options.body), Array.from);
377
+ export const loop = (initial, options) => options.discard ? loopDiscard(initial, options.while, options.step, options.body) : core.map(loopInternal(initial, options.while, options.step, options.body), Array.fromIterable);
365
378
  const loopInternal = (initial, cont, inc, body) => core.suspend(() => cont(initial) ? core.flatMap(body(initial), a => core.map(loopInternal(inc(initial), cont, inc, body), List.prepend(a))) : core.sync(() => List.empty()));
366
- const loopDiscard = (initial, cont, inc, body) => core.suspend(() => cont(initial) ? core.flatMap(body(initial), () => loopDiscard(inc(initial), cont, inc, body)) : core.unit);
379
+ const loopDiscard = (initial, cont, inc, body) => core.suspend(() => cont(initial) ? core.flatMap(body(initial), () => loopDiscard(inc(initial), cont, inc, body)) : core.void);
367
380
  /* @internal */
368
381
  export const mapAccum = /*#__PURE__*/dual(3, (elements, zero, f) => core.suspend(() => {
369
382
  const iterator = elements[Symbol.iterator]();
@@ -399,13 +412,13 @@ export const negate = self => core.map(self, b => !b);
399
412
  export const none = self => core.flatMap(self, option => {
400
413
  switch (option._tag) {
401
414
  case "None":
402
- return core.unit;
415
+ return core.void;
403
416
  case "Some":
404
417
  return core.fail(new core.NoSuchElementException());
405
418
  }
406
419
  });
407
420
  /* @internal */
408
- export const once = self => core.map(Ref.make(true), ref => core.asUnit(core.whenEffect(self, Ref.getAndSet(ref, false))));
421
+ export const once = self => core.map(Ref.make(true), ref => core.asVoid(core.whenEffect(self, Ref.getAndSet(ref, false))));
409
422
  /* @internal */
410
423
  export const option = self => core.matchEffect(self, {
411
424
  onFailure: () => core.succeed(Option.none()),
@@ -418,7 +431,7 @@ export const orElseSucceed = /*#__PURE__*/dual(2, (self, evaluate) => core.orEls
418
431
  /* @internal */
419
432
  export const parallelErrors = self => core.matchCauseEffect(self, {
420
433
  onFailure: cause => {
421
- const errors = Array.from(internalCause.failures(cause));
434
+ const errors = Array.fromIterable(internalCause.failures(cause));
422
435
  return errors.length === 0 ? core.failCause(cause) : core.fail(errors);
423
436
  },
424
437
  onSuccess: core.succeed
@@ -439,9 +452,9 @@ export const provideServiceEffect = /*#__PURE__*/dual(3, (self, tag, effect) =>
439
452
  /* @internal */
440
453
  export const random = /*#__PURE__*/defaultServices.randomWith(core.succeed);
441
454
  /* @internal */
442
- export const reduce = /*#__PURE__*/dual(3, (elements, zero, f) => ReadonlyArray.fromIterable(elements).reduce((acc, el, i) => core.flatMap(acc, a => f(a, el, i)), core.succeed(zero)));
455
+ export const reduce = /*#__PURE__*/dual(3, (elements, zero, f) => Array.fromIterable(elements).reduce((acc, el, i) => core.flatMap(acc, a => f(a, el, i)), core.succeed(zero)));
443
456
  /* @internal */
444
- export const reduceRight = /*#__PURE__*/dual(3, (elements, zero, f) => ReadonlyArray.fromIterable(elements).reduceRight((acc, el, i) => core.flatMap(acc, a => f(el, a, i)), core.succeed(zero)));
457
+ export const reduceRight = /*#__PURE__*/dual(3, (elements, zero, f) => Array.fromIterable(elements).reduceRight((acc, el, i) => core.flatMap(acc, a => f(el, a, i)), core.succeed(zero)));
445
458
  /* @internal */
446
459
  export const reduceWhile = /*#__PURE__*/dual(3, (elements, zero, options) => core.flatMap(core.sync(() => elements[Symbol.iterator]()), iterator => reduceWhileLoop(iterator, 0, zero, options.while, options.body)));
447
460
  const reduceWhileLoop = (iterator, index, state, predicate, f) => {
@@ -475,7 +488,7 @@ export const tagMetrics = /*#__PURE__*/dual(args => core.isEffect(args[0]), func
475
488
  return labelMetrics(arguments[0], typeof arguments[1] === "string" ? [metricLabel.make(arguments[1], arguments[2])] : Object.entries(arguments[1]).map(([k, v]) => metricLabel.make(k, v)));
476
489
  });
477
490
  /* @internal */
478
- export const labelMetrics = /*#__PURE__*/dual(2, (self, labels) => core.fiberRefLocallyWith(self, core.currentMetricLabels, old => ReadonlyArray.union(old, labels)));
491
+ export const labelMetrics = /*#__PURE__*/dual(2, (self, labels) => core.fiberRefLocallyWith(self, core.currentMetricLabels, old => Array.union(old, labels)));
479
492
  /* @internal */
480
493
  export const takeUntil = /*#__PURE__*/dual(2, (elements, predicate) => core.suspend(() => {
481
494
  const iterator = elements[Symbol.iterator]();
@@ -558,7 +571,7 @@ export const tapErrorTag = /*#__PURE__*/dual(3, (self, k, f) => tapError(self, e
558
571
  if (Predicate.isTagged(e, k)) {
559
572
  return f(e);
560
573
  }
561
- return core.unit;
574
+ return core.void;
562
575
  }));
563
576
  /* @internal */
564
577
  export const tapErrorCause = /*#__PURE__*/dual(2, (self, f) => core.matchCauseEffect(self, {
@@ -619,7 +632,7 @@ export const unsandbox = self => mapErrorCause(self, internalCause.flatten);
619
632
  /* @internal */
620
633
  export const updateFiberRefs = f => core.withFiberRuntime(state => {
621
634
  state.setFiberRefs(f(state.id(), state.getFiberRefs()));
622
- return core.unit;
635
+ return core.void;
623
636
  });
624
637
  /* @internal */
625
638
  export const updateService = /*#__PURE__*/dual(3, (self, tag, f) => core.mapInputContext(self, context => Context.add(context, tag, f(Context.unsafeGet(context, tag)))));
@@ -706,7 +719,7 @@ export const unsafeMakeSpan = (fiber, name, options) => {
706
719
  const annotationsFromEnv = FiberRefs.get(fiberRefs, core.currentTracerSpanAnnotations);
707
720
  const linksFromEnv = FiberRefs.get(fiberRefs, core.currentTracerSpanLinks);
708
721
  const parent = options?.parent ? Option.some(options.parent) : options?.root ? Option.none() : Context.getOption(context, internalTracer.spanTag);
709
- const links = linksFromEnv._tag === "Some" ? options?.links !== undefined ? [...Chunk.toReadonlyArray(linksFromEnv.value), ...(options?.links ?? [])] : Chunk.toReadonlyArray(linksFromEnv.value) : options?.links ?? ReadonlyArray.empty();
722
+ const links = linksFromEnv._tag === "Some" ? options?.links !== undefined ? [...Chunk.toReadonlyArray(linksFromEnv.value), ...(options?.links ?? [])] : Chunk.toReadonlyArray(linksFromEnv.value) : options?.links ?? Array.empty();
710
723
  const span = tracer.span(name, parent, options?.context ?? Context.empty(), links, timingEnabled ? clock.unsafeCurrentTimeNanos() : bigint0);
711
724
  if (annotationsFromEnv._tag === "Some") {
712
725
  HashMap.forEach(annotationsFromEnv.value, (value, key) => span.attribute(key, value));