effect 2.2.5 → 2.3.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.
- package/RateLimiter/package.json +6 -0
- package/dist/cjs/Cause.js +14 -1
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Clock.js.map +1 -1
- package/dist/cjs/Console.js.map +1 -1
- package/dist/cjs/Context.js +23 -25
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Data.js +3 -3
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Deferred.js +1 -1
- package/dist/cjs/Deferred.js.map +1 -1
- package/dist/cjs/Effect.js +9 -9
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Effectable.js.map +1 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Exit.js +2 -2
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/FiberMap.js +3 -3
- package/dist/cjs/FiberRef.js.map +1 -1
- package/dist/cjs/FiberRefs.js.map +1 -1
- package/dist/cjs/FiberSet.js +3 -3
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/GroupBy.js.map +1 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/LogLevel.js.map +1 -1
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/Number.js +20 -1
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Pool.js.map +1 -1
- package/dist/cjs/PubSub.js.map +1 -1
- package/dist/cjs/Queue.js.map +1 -1
- package/dist/cjs/Random.js.map +1 -1
- package/dist/cjs/RateLimiter.js +38 -0
- package/dist/cjs/RateLimiter.js.map +1 -0
- package/dist/cjs/ReadonlyRecord.js +45 -9
- package/dist/cjs/ReadonlyRecord.js.map +1 -1
- package/dist/cjs/Ref.js.map +1 -1
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/RequestResolver.js.map +1 -1
- package/dist/cjs/Resource.js.map +1 -1
- package/dist/cjs/Runtime.js +1 -4
- package/dist/cjs/Runtime.js.map +1 -1
- package/dist/cjs/RuntimeFlags.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Scope.js.map +1 -1
- package/dist/cjs/ScopedRef.js.map +1 -1
- package/dist/cjs/SingleProducerAsyncInput.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/Supervisor.js.map +1 -1
- package/dist/cjs/SynchronizedRef.js.map +1 -1
- package/dist/cjs/TArray.js.map +1 -1
- package/dist/cjs/TDeferred.js.map +1 -1
- package/dist/cjs/TMap.js.map +1 -1
- package/dist/cjs/TPriorityQueue.js.map +1 -1
- package/dist/cjs/TPubSub.js.map +1 -1
- package/dist/cjs/TQueue.js.map +1 -1
- package/dist/cjs/TRandom.js.map +1 -1
- package/dist/cjs/TReentrantLock.js.map +1 -1
- package/dist/cjs/TRef.js.map +1 -1
- package/dist/cjs/TSemaphore.js.map +1 -1
- package/dist/cjs/TSet.js.map +1 -1
- package/dist/cjs/Take.js +6 -6
- package/dist/cjs/Take.js.map +1 -1
- package/dist/cjs/TestAnnotation.js +10 -13
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestAnnotations.js +1 -1
- package/dist/cjs/TestAnnotations.js.map +1 -1
- package/dist/cjs/TestClock.js +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/TestConfig.js +1 -1
- package/dist/cjs/TestConfig.js.map +1 -1
- package/dist/cjs/TestContext.js.map +1 -1
- package/dist/cjs/TestLive.js +1 -1
- package/dist/cjs/TestLive.js.map +1 -1
- package/dist/cjs/TestServices.js.map +1 -1
- package/dist/cjs/TestSized.js +1 -1
- package/dist/cjs/TestSized.js.map +1 -1
- package/dist/cjs/Utils.js +0 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/cache.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel/mergeDecision.js +2 -6
- package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/cjs/internal/channel.js +1 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/clock.js +1 -1
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +2 -4
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/console.js.map +1 -1
- package/dist/cjs/internal/context.js +31 -22
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +13 -27
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core-stream.js.map +1 -1
- package/dist/cjs/internal/core.js +61 -130
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/data.js.map +1 -1
- package/dist/cjs/internal/defaultServices/console.js +1 -1
- package/dist/cjs/internal/defaultServices/console.js.map +1 -1
- package/dist/cjs/internal/defaultServices.js.map +1 -1
- package/dist/cjs/internal/deferred.js.map +1 -1
- package/dist/cjs/internal/differ/contextPatch.js +9 -9
- package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +7 -10
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/effectable.js +4 -4
- package/dist/cjs/internal/effectable.js.map +1 -1
- package/dist/cjs/internal/fiber.js +2 -6
- package/dist/cjs/internal/fiber.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +10 -19
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/layer/circular.js.map +1 -1
- package/dist/cjs/internal/layer.js +3 -3
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/logSpan.js +3 -5
- package/dist/cjs/internal/logSpan.js.map +1 -1
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +2 -6
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/query.js.map +1 -1
- package/dist/cjs/internal/queue.js.map +1 -1
- package/dist/cjs/internal/random.js +1 -1
- package/dist/cjs/internal/random.js.map +1 -1
- package/dist/cjs/internal/rateLimiter.js +44 -0
- package/dist/cjs/internal/rateLimiter.js.map +1 -0
- package/dist/cjs/internal/ref.js.map +1 -1
- package/dist/cjs/internal/reloadable.js +1 -9
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/runtime.js +0 -1
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/scopedCache.js.map +1 -1
- package/dist/cjs/internal/scopedRef.js.map +1 -1
- package/dist/cjs/internal/sink.js +7 -7
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/core.js.map +1 -1
- package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
- package/dist/cjs/internal/stm/stm/tExit.js +2 -2
- package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
- package/dist/cjs/internal/stm/stm/tryCommit.js.map +1 -1
- package/dist/cjs/internal/stm/stm.js.map +1 -1
- package/dist/cjs/internal/stm/tArray.js.map +1 -1
- package/dist/cjs/internal/stm/tDeferred.js +4 -2
- package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
- package/dist/cjs/internal/stm/tMap.js.map +1 -1
- package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
- package/dist/cjs/internal/stm/tQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tRandom.js +1 -1
- package/dist/cjs/internal/stm/tRandom.js.map +1 -1
- package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
- package/dist/cjs/internal/stm/tRef.js.map +1 -1
- package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
- package/dist/cjs/internal/stm/tSet.js.map +1 -1
- package/dist/cjs/internal/stream/debounceState.js.map +1 -1
- package/dist/cjs/internal/stream/handoff.js.map +1 -1
- package/dist/cjs/internal/stream/handoffSignal.js.map +1 -1
- package/dist/cjs/internal/stream/pull.js.map +1 -1
- package/dist/cjs/internal/stream.js +0 -2
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/subscriptionRef.js.map +1 -1
- package/dist/cjs/internal/supervisor.js.map +1 -1
- package/dist/cjs/internal/take.js +2 -2
- package/dist/cjs/internal/take.js.map +1 -1
- package/dist/cjs/internal/testing/sleep.js.map +1 -1
- package/dist/cjs/internal/tracer.js +2 -2
- package/dist/cjs/internal/tracer.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Cache.d.ts +20 -20
- package/dist/dts/Cache.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +33 -5
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +197 -194
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Clock.d.ts +7 -7
- package/dist/dts/Clock.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +1 -1
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/ConfigProvider.d.ts +6 -6
- package/dist/dts/ConfigProvider.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +43 -43
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +44 -29
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +38 -57
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Deferred.d.ts +36 -36
- package/dist/dts/Deferred.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +732 -729
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Effectable.d.ts +8 -8
- package/dist/dts/Effectable.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +2 -3
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +74 -74
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +75 -75
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +22 -22
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +28 -28
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/FiberRefs.d.ts +1 -1
- package/dist/dts/FiberRefs.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +16 -16
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +6 -6
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/KeyedPool.d.ts +22 -22
- package/dist/dts/KeyedPool.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +126 -126
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/LogLevel.d.ts +2 -2
- package/dist/dts/LogLevel.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +14 -14
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +7 -7
- package/dist/dts/MergeState.d.ts +13 -13
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +32 -32
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +6 -6
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +15 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +2 -3
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Pool.d.ts +15 -16
- package/dist/dts/Pool.d.ts.map +1 -1
- package/dist/dts/PubSub.d.ts +18 -18
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Queue.d.ts +40 -40
- package/dist/dts/Queue.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +13 -13
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/RateLimiter.d.ts +31 -0
- package/dist/dts/RateLimiter.d.ts.map +1 -0
- package/dist/dts/ReadonlyArray.d.ts +3 -3
- package/dist/dts/ReadonlyRecord.d.ts +37 -8
- package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
- package/dist/dts/Ref.d.ts +25 -25
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +9 -9
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +27 -28
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestBlock.d.ts +3 -3
- package/dist/dts/RequestBlock.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +16 -16
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +7 -7
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +13 -16
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/RuntimeFlags.d.ts +10 -10
- package/dist/dts/RuntimeFlags.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +303 -303
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +19 -19
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Scope.d.ts +10 -10
- package/dist/dts/Scope.d.ts.map +1 -1
- package/dist/dts/ScopedCache.d.ts +14 -14
- package/dist/dts/ScopedCache.d.ts.map +1 -1
- package/dist/dts/ScopedRef.d.ts +5 -5
- package/dist/dts/ScopedRef.d.ts.map +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts +8 -8
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +214 -205
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +595 -592
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamEmit.d.ts +5 -5
- package/dist/dts/StreamEmit.d.ts.map +1 -1
- package/dist/dts/Streamable.d.ts +2 -2
- package/dist/dts/Streamable.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +41 -41
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/Supervisor.d.ts +17 -17
- package/dist/dts/Supervisor.d.ts.map +1 -1
- package/dist/dts/SynchronizedRef.d.ts +41 -41
- package/dist/dts/SynchronizedRef.d.ts.map +1 -1
- package/dist/dts/TArray.d.ts +72 -72
- package/dist/dts/TArray.d.ts.map +1 -1
- package/dist/dts/TDeferred.d.ts +12 -12
- package/dist/dts/TDeferred.d.ts.map +1 -1
- package/dist/dts/TMap.d.ts +67 -67
- package/dist/dts/TMap.d.ts.map +1 -1
- package/dist/dts/TPriorityQueue.d.ts +23 -23
- package/dist/dts/TPriorityQueue.d.ts.map +1 -1
- package/dist/dts/TPubSub.d.ts +15 -15
- package/dist/dts/TPubSub.d.ts.map +1 -1
- package/dist/dts/TQueue.d.ts +40 -40
- package/dist/dts/TQueue.d.ts.map +1 -1
- package/dist/dts/TRandom.d.ts +13 -13
- package/dist/dts/TRandom.d.ts.map +1 -1
- package/dist/dts/TReentrantLock.d.ts +21 -21
- package/dist/dts/TReentrantLock.d.ts.map +1 -1
- package/dist/dts/TRef.d.ts +25 -25
- package/dist/dts/TRef.d.ts.map +1 -1
- package/dist/dts/TSemaphore.d.ts +15 -15
- package/dist/dts/TSemaphore.d.ts.map +1 -1
- package/dist/dts/TSet.d.ts +49 -49
- package/dist/dts/TSet.d.ts.map +1 -1
- package/dist/dts/Take.d.ts +41 -41
- package/dist/dts/Take.d.ts.map +1 -1
- package/dist/dts/TestAnnotation.d.ts +1 -3
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts +3 -3
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts +18 -18
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestConfig.d.ts.map +1 -1
- package/dist/dts/TestContext.d.ts +2 -2
- package/dist/dts/TestContext.d.ts.map +1 -1
- package/dist/dts/TestLive.d.ts +1 -1
- package/dist/dts/TestLive.d.ts.map +1 -1
- package/dist/dts/TestServices.d.ts +31 -31
- package/dist/dts/TestServices.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts +2 -2
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +1 -1
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/index.d.ts +12 -2
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/channel/channelExecutor.d.ts +1 -1
- package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -1
- package/dist/dts/internal/core-stream.d.ts +1 -1
- package/dist/dts/internal/core-stream.d.ts.map +1 -1
- package/dist/dts/internal/rateLimiter.d.ts +2 -0
- package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
- package/dist/dts/internal/stm/stm.d.ts +6 -6
- package/dist/dts/internal/stm/stm.d.ts.map +1 -1
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Cause.js +13 -0
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Clock.js.map +1 -1
- package/dist/esm/Console.js.map +1 -1
- package/dist/esm/Context.js +22 -24
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Data.js +4 -5
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Deferred.js +1 -1
- package/dist/esm/Deferred.js.map +1 -1
- package/dist/esm/Effect.js +9 -9
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Effectable.js.map +1 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Exit.js +2 -2
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/FiberMap.js +3 -3
- package/dist/esm/FiberRef.js.map +1 -1
- package/dist/esm/FiberRefs.js.map +1 -1
- package/dist/esm/FiberSet.js +3 -3
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/GroupBy.js.map +1 -1
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/LogLevel.js.map +1 -1
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/Number.js +18 -0
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Pool.js.map +1 -1
- package/dist/esm/PubSub.js.map +1 -1
- package/dist/esm/Queue.js.map +1 -1
- package/dist/esm/Random.js.map +1 -1
- package/dist/esm/RateLimiter.js +7 -0
- package/dist/esm/RateLimiter.js.map +1 -0
- package/dist/esm/ReadonlyRecord.js +44 -8
- package/dist/esm/ReadonlyRecord.js.map +1 -1
- package/dist/esm/Ref.js.map +1 -1
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/RequestResolver.js.map +1 -1
- package/dist/esm/Resource.js.map +1 -1
- package/dist/esm/Runtime.js +1 -4
- package/dist/esm/Runtime.js.map +1 -1
- package/dist/esm/RuntimeFlags.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/Scope.js.map +1 -1
- package/dist/esm/ScopedRef.js.map +1 -1
- package/dist/esm/SingleProducerAsyncInput.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/Supervisor.js.map +1 -1
- package/dist/esm/SynchronizedRef.js.map +1 -1
- package/dist/esm/TArray.js.map +1 -1
- package/dist/esm/TDeferred.js.map +1 -1
- package/dist/esm/TMap.js.map +1 -1
- package/dist/esm/TPriorityQueue.js.map +1 -1
- package/dist/esm/TPubSub.js.map +1 -1
- package/dist/esm/TQueue.js.map +1 -1
- package/dist/esm/TRandom.js.map +1 -1
- package/dist/esm/TReentrantLock.js.map +1 -1
- package/dist/esm/TRef.js.map +1 -1
- package/dist/esm/TSemaphore.js.map +1 -1
- package/dist/esm/TSet.js.map +1 -1
- package/dist/esm/Take.js +6 -6
- package/dist/esm/Take.js.map +1 -1
- package/dist/esm/TestAnnotation.js +10 -13
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestAnnotations.js +1 -1
- package/dist/esm/TestAnnotations.js.map +1 -1
- package/dist/esm/TestClock.js +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/TestConfig.js +1 -1
- package/dist/esm/TestConfig.js.map +1 -1
- package/dist/esm/TestContext.js.map +1 -1
- package/dist/esm/TestLive.js +1 -1
- package/dist/esm/TestLive.js.map +1 -1
- package/dist/esm/TestServices.js.map +1 -1
- package/dist/esm/TestSized.js +1 -1
- package/dist/esm/TestSized.js.map +1 -1
- package/dist/esm/Utils.js +1 -1
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/index.js +12 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/cache.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel/mergeDecision.js +2 -6
- package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
- package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/esm/internal/channel.js +1 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/clock.js +1 -1
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/configProvider.js +2 -4
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/console.js.map +1 -1
- package/dist/esm/internal/context.js +28 -20
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/core-effect.js +12 -26
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core-stream.js.map +1 -1
- package/dist/esm/internal/core.js +57 -127
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/data.js.map +1 -1
- package/dist/esm/internal/defaultServices/console.js +1 -1
- package/dist/esm/internal/defaultServices/console.js.map +1 -1
- package/dist/esm/internal/defaultServices.js.map +1 -1
- package/dist/esm/internal/deferred.js.map +1 -1
- package/dist/esm/internal/differ/contextPatch.js +9 -9
- package/dist/esm/internal/differ/contextPatch.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +5 -8
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/effectable.js +4 -4
- package/dist/esm/internal/effectable.js.map +1 -1
- package/dist/esm/internal/fiber.js +2 -6
- package/dist/esm/internal/fiber.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +10 -19
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/layer/circular.js.map +1 -1
- package/dist/esm/internal/layer.js +3 -3
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/logSpan.js +3 -5
- package/dist/esm/internal/logSpan.js.map +1 -1
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/pubsub.js +1 -5
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/query.js.map +1 -1
- package/dist/esm/internal/queue.js.map +1 -1
- package/dist/esm/internal/random.js +1 -1
- package/dist/esm/internal/random.js.map +1 -1
- package/dist/esm/internal/rateLimiter.js +12 -0
- package/dist/esm/internal/rateLimiter.js.map +1 -0
- package/dist/esm/internal/ref.js.map +1 -1
- package/dist/esm/internal/reloadable.js +1 -9
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/runtime.js +0 -1
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/scopedCache.js.map +1 -1
- package/dist/esm/internal/scopedRef.js.map +1 -1
- package/dist/esm/internal/sink.js +7 -7
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/core.js.map +1 -1
- package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
- package/dist/esm/internal/stm/stm/tExit.js +2 -2
- package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
- package/dist/esm/internal/stm/stm/tryCommit.js.map +1 -1
- package/dist/esm/internal/stm/stm.js.map +1 -1
- package/dist/esm/internal/stm/tArray.js.map +1 -1
- package/dist/esm/internal/stm/tDeferred.js +4 -2
- package/dist/esm/internal/stm/tDeferred.js.map +1 -1
- package/dist/esm/internal/stm/tMap.js.map +1 -1
- package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/esm/internal/stm/tPubSub.js.map +1 -1
- package/dist/esm/internal/stm/tQueue.js.map +1 -1
- package/dist/esm/internal/stm/tRandom.js +1 -1
- package/dist/esm/internal/stm/tRandom.js.map +1 -1
- package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
- package/dist/esm/internal/stm/tRef.js.map +1 -1
- package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
- package/dist/esm/internal/stm/tSet.js.map +1 -1
- package/dist/esm/internal/stream/debounceState.js.map +1 -1
- package/dist/esm/internal/stream/handoff.js.map +1 -1
- package/dist/esm/internal/stream/handoffSignal.js.map +1 -1
- package/dist/esm/internal/stream/pull.js.map +1 -1
- package/dist/esm/internal/stream.js +0 -2
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/subscriptionRef.js.map +1 -1
- package/dist/esm/internal/supervisor.js.map +1 -1
- package/dist/esm/internal/take.js +2 -2
- package/dist/esm/internal/take.js.map +1 -1
- package/dist/esm/internal/testing/sleep.js.map +1 -1
- package/dist/esm/internal/tracer.js +2 -2
- package/dist/esm/internal/tracer.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +9 -1
- package/src/Cache.ts +20 -20
- package/src/Cause.ts +37 -13
- package/src/Channel.ts +802 -794
- package/src/Clock.ts +7 -7
- package/src/Config.ts +1 -1
- package/src/ConfigProvider.ts +6 -6
- package/src/Console.ts +44 -48
- package/src/Context.ts +52 -30
- package/src/Data.ts +38 -61
- package/src/Deferred.ts +39 -41
- package/src/Effect.ts +1187 -1206
- package/src/Effectable.ts +8 -8
- package/src/Either.ts +2 -3
- package/src/Exit.ts +88 -105
- package/src/Fiber.ts +77 -83
- package/src/FiberMap.ts +77 -77
- package/src/FiberRef.ts +28 -28
- package/src/FiberRefs.ts +1 -1
- package/src/FiberSet.ts +61 -62
- package/src/GroupBy.ts +8 -12
- package/src/KeyedPool.ts +22 -22
- package/src/Layer.ts +187 -181
- package/src/LogLevel.ts +7 -6
- package/src/Logger.ts +18 -18
- package/src/MergeDecision.ts +7 -7
- package/src/MergeState.ts +16 -16
- package/src/Metric.ts +39 -39
- package/src/MetricPolling.ts +6 -6
- package/src/Number.ts +19 -0
- package/src/Option.ts +2 -3
- package/src/Pool.ts +15 -16
- package/src/PubSub.ts +18 -18
- package/src/Queue.ts +43 -46
- package/src/Random.ts +13 -15
- package/src/RateLimiter.ts +37 -0
- package/src/ReadonlyRecord.ts +49 -8
- package/src/Ref.ts +25 -25
- package/src/Reloadable.ts +10 -10
- package/src/Request.ts +31 -31
- package/src/RequestBlock.ts +3 -3
- package/src/RequestResolver.ts +21 -21
- package/src/Resource.ts +13 -13
- package/src/Runtime.ts +16 -19
- package/src/RuntimeFlags.ts +10 -10
- package/src/STM.ts +361 -362
- package/src/Schedule.ts +19 -19
- package/src/Scheduler.ts +2 -2
- package/src/Scope.ts +14 -15
- package/src/ScopedCache.ts +14 -14
- package/src/ScopedRef.ts +7 -7
- package/src/SingleProducerAsyncInput.ts +8 -9
- package/src/Sink.ts +357 -381
- package/src/Stream.ts +935 -1033
- package/src/StreamEmit.ts +5 -5
- package/src/Streamable.ts +2 -2
- package/src/SubscriptionRef.ts +51 -51
- package/src/Supervisor.ts +26 -26
- package/src/SynchronizedRef.ts +44 -44
- package/src/TArray.ts +74 -74
- package/src/TDeferred.ts +14 -14
- package/src/TMap.ts +72 -72
- package/src/TPriorityQueue.ts +23 -24
- package/src/TPubSub.ts +15 -15
- package/src/TQueue.ts +40 -40
- package/src/TRandom.ts +13 -13
- package/src/TReentrantLock.ts +21 -21
- package/src/TRef.ts +25 -25
- package/src/TSemaphore.ts +15 -15
- package/src/TSet.ts +49 -49
- package/src/Take.ts +51 -51
- package/src/TestAnnotation.ts +6 -17
- package/src/TestAnnotations.ts +7 -9
- package/src/TestClock.ts +39 -45
- package/src/TestConfig.ts +1 -3
- package/src/TestContext.ts +3 -3
- package/src/TestLive.ts +3 -5
- package/src/TestServices.ts +45 -47
- package/src/TestSized.ts +5 -5
- package/src/Tracer.ts +1 -1
- package/src/Utils.ts +8 -10
- package/src/index.ts +13 -2
- package/src/internal/blockedRequests.ts +2 -2
- package/src/internal/cache.ts +38 -38
- package/src/internal/channel/channelExecutor.ts +65 -73
- package/src/internal/channel/channelState.ts +11 -11
- package/src/internal/channel/continuation.ts +10 -10
- package/src/internal/channel/mergeDecision.ts +14 -16
- package/src/internal/channel/mergeState.ts +12 -12
- package/src/internal/channel/singleProducerAsyncInput.ts +15 -17
- package/src/internal/channel/subexecutor.ts +7 -7
- package/src/internal/channel.ts +901 -980
- package/src/internal/clock.ts +6 -6
- package/src/internal/concurrency.ts +9 -9
- package/src/internal/configProvider.ts +29 -36
- package/src/internal/console.ts +12 -12
- package/src/internal/context.ts +32 -23
- package/src/internal/core-effect.ts +655 -616
- package/src/internal/core-stream.ts +317 -325
- package/src/internal/core.ts +856 -790
- package/src/internal/data.ts +2 -3
- package/src/internal/dataSource.ts +14 -14
- package/src/internal/defaultServices/console.ts +3 -1
- package/src/internal/defaultServices.ts +21 -21
- package/src/internal/deferred.ts +9 -9
- package/src/internal/differ/contextPatch.ts +17 -17
- package/src/internal/effect/circular.ts +154 -159
- package/src/internal/effectable.ts +7 -7
- package/src/internal/fiber.ts +55 -59
- package/src/internal/fiberRefs.ts +1 -1
- package/src/internal/fiberRuntime.ts +426 -463
- package/src/internal/groupBy.ts +59 -62
- package/src/internal/keyedPool.ts +37 -37
- package/src/internal/layer/circular.ts +37 -37
- package/src/internal/layer.ts +235 -240
- package/src/internal/logSpan.ts +3 -5
- package/src/internal/metric/polling.ts +5 -5
- package/src/internal/metric.ts +54 -55
- package/src/internal/pool.ts +72 -72
- package/src/internal/pubsub.ts +75 -84
- package/src/internal/query.ts +25 -27
- package/src/internal/queue.ts +65 -70
- package/src/internal/random.ts +9 -9
- package/src/internal/rateLimiter.ts +30 -0
- package/src/internal/ref.ts +24 -24
- package/src/internal/reloadable.ts +11 -31
- package/src/internal/request.ts +14 -14
- package/src/internal/resource.ts +8 -8
- package/src/internal/runtime.ts +21 -22
- package/src/internal/schedule.ts +131 -134
- package/src/internal/scopedCache.ts +35 -32
- package/src/internal/scopedRef.ts +14 -14
- package/src/internal/sink.ts +507 -565
- package/src/internal/stm/core.ts +101 -102
- package/src/internal/stm/stm/stmState.ts +10 -10
- package/src/internal/stm/stm/tExit.ts +18 -18
- package/src/internal/stm/stm/tryCommit.ts +5 -5
- package/src/internal/stm/stm.ts +363 -374
- package/src/internal/stm/tArray.ts +92 -92
- package/src/internal/stm/tDeferred.ts +16 -14
- package/src/internal/stm/tMap.ts +83 -84
- package/src/internal/stm/tPriorityQueue.ts +24 -25
- package/src/internal/stm/tPubSub.ts +37 -38
- package/src/internal/stm/tQueue.ts +44 -48
- package/src/internal/stm/tRandom.ts +18 -18
- package/src/internal/stm/tReentrantLock.ts +28 -28
- package/src/internal/stm/tRef.ts +25 -25
- package/src/internal/stm/tSemaphore.ts +16 -16
- package/src/internal/stm/tSet.ts +51 -52
- package/src/internal/stream/debounceState.ts +7 -7
- package/src/internal/stream/emit.ts +4 -4
- package/src/internal/stream/handoff.ts +19 -19
- package/src/internal/stream/handoffSignal.ts +4 -4
- package/src/internal/stream/pull.ts +10 -11
- package/src/internal/stream.ts +1770 -1788
- package/src/internal/subscriptionRef.ts +17 -17
- package/src/internal/supervisor.ts +49 -56
- package/src/internal/synchronizedRef.ts +27 -27
- package/src/internal/take.ts +61 -61
- package/src/internal/testing/sleep.ts +2 -2
- package/src/internal/testing/suspendedWarningData.ts +2 -2
- package/src/internal/testing/warningData.ts +2 -2
- package/src/internal/tracer.ts +2 -6
- package/src/internal/version.ts +1 -1
package/src/Schedule.ts
CHANGED
|
@@ -81,7 +81,7 @@ export interface Schedule<out Env, in In, out Out> extends Schedule.Variance<Env
|
|
|
81
81
|
now: number,
|
|
82
82
|
input: In,
|
|
83
83
|
state: any
|
|
84
|
-
): Effect.Effect<
|
|
84
|
+
): Effect.Effect<readonly [any, Out, ScheduleDecision.ScheduleDecision], never, Env>
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
/**
|
|
@@ -117,10 +117,10 @@ export declare namespace Schedule {
|
|
|
117
117
|
* @category models
|
|
118
118
|
*/
|
|
119
119
|
export interface ScheduleDriver<out Env, in In, out Out> extends Schedule.DriverVariance<Env, In, Out> {
|
|
120
|
-
readonly state: Effect.Effect<
|
|
121
|
-
readonly last: Effect.Effect<
|
|
122
|
-
readonly reset: Effect.Effect<
|
|
123
|
-
next(input: In): Effect.Effect<
|
|
120
|
+
readonly state: Effect.Effect<unknown>
|
|
121
|
+
readonly last: Effect.Effect<Out, Cause.NoSuchElementException>
|
|
122
|
+
readonly reset: Effect.Effect<void>
|
|
123
|
+
next(input: In): Effect.Effect<Out, Option.Option<never>, Env>
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
/**
|
|
@@ -136,7 +136,7 @@ export const makeWithState: <S, Env, In, Out>(
|
|
|
136
136
|
now: number,
|
|
137
137
|
input: In,
|
|
138
138
|
state: S
|
|
139
|
-
) => Effect.Effect<
|
|
139
|
+
) => Effect.Effect<readonly [S, Out, ScheduleDecision.ScheduleDecision], never, Env>
|
|
140
140
|
) => Schedule<Env, In, Out> = internal.makeWithState
|
|
141
141
|
|
|
142
142
|
/**
|
|
@@ -310,7 +310,7 @@ export const collectUntil: <A>(f: Predicate<A>) => Schedule<never, A, Chunk.Chun
|
|
|
310
310
|
* @category utils
|
|
311
311
|
*/
|
|
312
312
|
export const collectUntilEffect: <Env, A>(
|
|
313
|
-
f: (a: A) => Effect.Effect<
|
|
313
|
+
f: (a: A) => Effect.Effect<boolean, never, Env>
|
|
314
314
|
) => Schedule<Env, A, Chunk.Chunk<A>> = internal.collectUntilEffect
|
|
315
315
|
|
|
316
316
|
/**
|
|
@@ -330,7 +330,7 @@ export const collectWhile: <A>(f: Predicate<A>) => Schedule<never, A, Chunk.Chun
|
|
|
330
330
|
* @since 2.0.0
|
|
331
331
|
*/
|
|
332
332
|
export const collectWhileEffect: <Env, A>(
|
|
333
|
-
f: (a: A) => Effect.Effect<
|
|
333
|
+
f: (a: A) => Effect.Effect<boolean, never, Env>
|
|
334
334
|
) => Schedule<Env, A, Chunk.Chunk<A>> = internal.collectWhileEffect
|
|
335
335
|
|
|
336
336
|
/**
|
|
@@ -550,7 +550,7 @@ export const mapBothEffect: {
|
|
|
550
550
|
*/
|
|
551
551
|
export const driver: <Env, In, Out>(
|
|
552
552
|
self: Schedule<Env, In, Out>
|
|
553
|
-
) => Effect.Effect<
|
|
553
|
+
) => Effect.Effect<ScheduleDriver<Env, In, Out>> = internal.driver
|
|
554
554
|
|
|
555
555
|
/**
|
|
556
556
|
* A schedule that can recur one time, the specified amount of time into the
|
|
@@ -617,8 +617,8 @@ export const elapsed: Schedule<never, unknown, Duration.Duration> = internal.ela
|
|
|
617
617
|
* @category finalization
|
|
618
618
|
*/
|
|
619
619
|
export const ensuring: {
|
|
620
|
-
<X>(finalizer: Effect.Effect<
|
|
621
|
-
<Env, In, Out, X>(self: Schedule<Env, In, Out>, finalizer: Effect.Effect<
|
|
620
|
+
<X>(finalizer: Effect.Effect<X>): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env, In, Out>
|
|
621
|
+
<Env, In, Out, X>(self: Schedule<Env, In, Out>, finalizer: Effect.Effect<X>): Schedule<Env, In, Out>
|
|
622
622
|
} = internal.ensuring
|
|
623
623
|
|
|
624
624
|
/**
|
|
@@ -868,11 +868,11 @@ export const modifyDelay: {
|
|
|
868
868
|
*/
|
|
869
869
|
export const modifyDelayEffect: {
|
|
870
870
|
<Out, Env2>(
|
|
871
|
-
f: (out: Out, duration: Duration.Duration) => Effect.Effect<
|
|
871
|
+
f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
872
872
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
873
873
|
<Env, In, Out, Env2>(
|
|
874
874
|
self: Schedule<Env, In, Out>,
|
|
875
|
-
f: (out: Out, duration: Duration.Duration) => Effect.Effect<
|
|
875
|
+
f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
876
876
|
): Schedule<Env | Env2, In, Out>
|
|
877
877
|
} = internal.modifyDelayEffect
|
|
878
878
|
|
|
@@ -886,11 +886,11 @@ export const modifyDelayEffect: {
|
|
|
886
886
|
*/
|
|
887
887
|
export const onDecision: {
|
|
888
888
|
<Out, Env2, X>(
|
|
889
|
-
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<
|
|
889
|
+
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, Env2>
|
|
890
890
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
891
891
|
<Env, In, Out, Env2, X>(
|
|
892
892
|
self: Schedule<Env, In, Out>,
|
|
893
|
-
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<
|
|
893
|
+
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, Env2>
|
|
894
894
|
): Schedule<Env | Env2, In, Out>
|
|
895
895
|
} = internal.onDecision
|
|
896
896
|
|
|
@@ -957,7 +957,7 @@ export const recurUntil: <A>(f: Predicate<A>) => Schedule<never, A, A> = interna
|
|
|
957
957
|
* @since 2.0.0
|
|
958
958
|
* @category utils
|
|
959
959
|
*/
|
|
960
|
-
export const recurUntilEffect: <Env, A>(f: (a: A) => Effect.Effect<
|
|
960
|
+
export const recurUntilEffect: <Env, A>(f: (a: A) => Effect.Effect<boolean, never, Env>) => Schedule<Env, A, A> =
|
|
961
961
|
internal.recurUntilEffect
|
|
962
962
|
|
|
963
963
|
/**
|
|
@@ -994,7 +994,7 @@ export const recurWhile: <A>(f: Predicate<A>) => Schedule<never, A, A> = interna
|
|
|
994
994
|
* @since 2.0.0
|
|
995
995
|
* @category utils
|
|
996
996
|
*/
|
|
997
|
-
export const recurWhileEffect: <Env, A>(f: (a: A) => Effect.Effect<
|
|
997
|
+
export const recurWhileEffect: <Env, A>(f: (a: A) => Effect.Effect<boolean, never, Env>) => Schedule<Env, A, A> =
|
|
998
998
|
internal.recurWhileEffect
|
|
999
999
|
|
|
1000
1000
|
/**
|
|
@@ -1087,12 +1087,12 @@ export const run: {
|
|
|
1087
1087
|
<In>(
|
|
1088
1088
|
now: number,
|
|
1089
1089
|
input: Iterable<In>
|
|
1090
|
-
): <Env, Out>(self: Schedule<Env, In, Out>) => Effect.Effect<
|
|
1090
|
+
): <Env, Out>(self: Schedule<Env, In, Out>) => Effect.Effect<Chunk.Chunk<Out>, never, Env>
|
|
1091
1091
|
<Env, In, Out>(
|
|
1092
1092
|
self: Schedule<Env, In, Out>,
|
|
1093
1093
|
now: number,
|
|
1094
1094
|
input: Iterable<In>
|
|
1095
|
-
): Effect.Effect<
|
|
1095
|
+
): Effect.Effect<Chunk.Chunk<Out>, never, Env>
|
|
1096
1096
|
} = internal.run
|
|
1097
1097
|
|
|
1098
1098
|
/**
|
package/src/Scheduler.ts
CHANGED
|
@@ -354,6 +354,6 @@ export const currentScheduler: FiberRef<Scheduler> = globalValue(
|
|
|
354
354
|
|
|
355
355
|
/** @internal */
|
|
356
356
|
export const withScheduler = dual<
|
|
357
|
-
(scheduler: Scheduler) => <
|
|
358
|
-
<
|
|
357
|
+
(scheduler: Scheduler) => <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>,
|
|
358
|
+
<A, E, R>(self: Effect<A, E, R>, scheduler: Scheduler) => Effect<A, E, R>
|
|
359
359
|
>(2, (self, scheduler) => core.fiberRefLocally(self, currentScheduler, scheduler))
|
package/src/Scope.ts
CHANGED
|
@@ -44,11 +44,11 @@ export interface Scope extends Pipeable {
|
|
|
44
44
|
/**
|
|
45
45
|
* @internal
|
|
46
46
|
*/
|
|
47
|
-
fork(strategy: ExecutionStrategy.ExecutionStrategy): Effect.Effect<
|
|
47
|
+
fork(strategy: ExecutionStrategy.ExecutionStrategy): Effect.Effect<Scope.Closeable>
|
|
48
48
|
/**
|
|
49
49
|
* @internal
|
|
50
50
|
*/
|
|
51
|
-
addFinalizer(finalizer: Scope.Finalizer): Effect.Effect<
|
|
51
|
+
addFinalizer(finalizer: Scope.Finalizer): Effect.Effect<void>
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/**
|
|
@@ -61,7 +61,7 @@ export interface CloseableScope extends Scope, Pipeable {
|
|
|
61
61
|
/**
|
|
62
62
|
* @internal
|
|
63
63
|
*/
|
|
64
|
-
close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<
|
|
64
|
+
close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<void>
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
/**
|
|
@@ -78,7 +78,7 @@ export declare namespace Scope {
|
|
|
78
78
|
* @since 2.0.0
|
|
79
79
|
* @category model
|
|
80
80
|
*/
|
|
81
|
-
export type Finalizer = (exit: Exit.Exit<unknown, unknown>) => Effect.Effect<
|
|
81
|
+
export type Finalizer = (exit: Exit.Exit<unknown, unknown>) => Effect.Effect<void>
|
|
82
82
|
/**
|
|
83
83
|
* @since 2.0.0
|
|
84
84
|
* @category model
|
|
@@ -95,8 +95,8 @@ export declare namespace Scope {
|
|
|
95
95
|
*/
|
|
96
96
|
export const addFinalizer: (
|
|
97
97
|
self: Scope,
|
|
98
|
-
finalizer: Effect.Effect<
|
|
99
|
-
) => Effect.Effect<
|
|
98
|
+
finalizer: Effect.Effect<unknown>
|
|
99
|
+
) => Effect.Effect<void> = core.scopeAddFinalizer
|
|
100
100
|
|
|
101
101
|
/**
|
|
102
102
|
* A simplified version of `addFinalizerWith` when the `finalizer` does not
|
|
@@ -105,7 +105,7 @@ export const addFinalizer: (
|
|
|
105
105
|
* @since 2.0.0
|
|
106
106
|
* @category utils
|
|
107
107
|
*/
|
|
108
|
-
export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effect.Effect<
|
|
108
|
+
export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effect.Effect<void> =
|
|
109
109
|
core.scopeAddFinalizerExit
|
|
110
110
|
|
|
111
111
|
/**
|
|
@@ -115,8 +115,7 @@ export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effe
|
|
|
115
115
|
* @since 2.0.0
|
|
116
116
|
* @category destructors
|
|
117
117
|
*/
|
|
118
|
-
export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<
|
|
119
|
-
core.scopeClose
|
|
118
|
+
export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<void> = core.scopeClose
|
|
120
119
|
|
|
121
120
|
/**
|
|
122
121
|
* Extends the scope of an `Effect` workflow that needs a scope into this
|
|
@@ -128,8 +127,8 @@ export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) =>
|
|
|
128
127
|
* @category utils
|
|
129
128
|
*/
|
|
130
129
|
export const extend: {
|
|
131
|
-
(scope: Scope): <
|
|
132
|
-
<
|
|
130
|
+
(scope: Scope): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Scope>>
|
|
131
|
+
<A, E, R>(effect: Effect.Effect<A, E, R>, scope: Scope): Effect.Effect<A, E, Exclude<R, Scope>>
|
|
133
132
|
} = fiberRuntime.scopeExtend
|
|
134
133
|
|
|
135
134
|
/**
|
|
@@ -142,7 +141,7 @@ export const extend: {
|
|
|
142
141
|
export const fork: (
|
|
143
142
|
self: Scope,
|
|
144
143
|
strategy: ExecutionStrategy.ExecutionStrategy
|
|
145
|
-
) => Effect.Effect<
|
|
144
|
+
) => Effect.Effect<CloseableScope> = core.scopeFork
|
|
146
145
|
|
|
147
146
|
/**
|
|
148
147
|
* Uses the scope by providing it to an `Effect` workflow that needs a scope,
|
|
@@ -154,8 +153,8 @@ export const fork: (
|
|
|
154
153
|
* @category destructors
|
|
155
154
|
*/
|
|
156
155
|
export const use: {
|
|
157
|
-
(scope: CloseableScope): <
|
|
158
|
-
<
|
|
156
|
+
(scope: CloseableScope): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Scope>>
|
|
157
|
+
<A, E, R>(effect: Effect.Effect<A, E, R>, scope: CloseableScope): Effect.Effect<A, E, Exclude<R, Scope>>
|
|
159
158
|
} = fiberRuntime.scopeUse
|
|
160
159
|
|
|
161
160
|
/**
|
|
@@ -168,4 +167,4 @@ export const use: {
|
|
|
168
167
|
*/
|
|
169
168
|
export const make: (
|
|
170
169
|
executionStrategy?: ExecutionStrategy.ExecutionStrategy
|
|
171
|
-
) => Effect.Effect<
|
|
170
|
+
) => Effect.Effect<CloseableScope> = fiberRuntime.scopeMake
|
package/src/ScopedCache.ts
CHANGED
|
@@ -32,47 +32,47 @@ export interface ScopedCache<in Key, out Error, out Value> extends ScopedCache.V
|
|
|
32
32
|
* Retrieves the value associated with the specified key if it exists.
|
|
33
33
|
* Otherwise returns `Option.none`.
|
|
34
34
|
*/
|
|
35
|
-
getOption(key: Key): Effect.Effect<
|
|
35
|
+
getOption(key: Key): Effect.Effect<Option.Option<Value>, Error, Scope.Scope>
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* Retrieves the value associated with the specified key if it exists and the
|
|
39
39
|
* lookup function has completed. Otherwise returns `Option.none`.
|
|
40
40
|
*/
|
|
41
|
-
getOptionComplete(key: Key): Effect.Effect<
|
|
41
|
+
getOptionComplete(key: Key): Effect.Effect<Option.Option<Value>, never, Scope.Scope>
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* Returns statistics for this cache.
|
|
45
45
|
*/
|
|
46
|
-
readonly cacheStats: Effect.Effect<
|
|
46
|
+
readonly cacheStats: Effect.Effect<Cache.CacheStats>
|
|
47
47
|
|
|
48
48
|
/**
|
|
49
49
|
* Return whether a resource associated with the specified key exists in the
|
|
50
50
|
* cache. Sometime `contains` can return true if the resource is currently
|
|
51
51
|
* being created but not yet totally created.
|
|
52
52
|
*/
|
|
53
|
-
contains(key: Key): Effect.Effect<
|
|
53
|
+
contains(key: Key): Effect.Effect<boolean>
|
|
54
54
|
|
|
55
55
|
/**
|
|
56
56
|
* Return statistics for the specified entry.
|
|
57
57
|
*/
|
|
58
|
-
entryStats(key: Key): Effect.Effect<
|
|
58
|
+
entryStats(key: Key): Effect.Effect<Option.Option<Cache.EntryStats>>
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
61
|
* Gets the value from the cache if it exists or otherwise computes it, the
|
|
62
62
|
* release action signals to the cache that the value is no longer being used
|
|
63
63
|
* and can potentially be finalized subject to the policies of the cache.
|
|
64
64
|
*/
|
|
65
|
-
get(key: Key): Effect.Effect<
|
|
65
|
+
get(key: Key): Effect.Effect<Value, Error, Scope.Scope>
|
|
66
66
|
|
|
67
67
|
/**
|
|
68
68
|
* Invalidates the resource associated with the specified key.
|
|
69
69
|
*/
|
|
70
|
-
invalidate(key: Key): Effect.Effect<
|
|
70
|
+
invalidate(key: Key): Effect.Effect<void>
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
73
|
* Invalidates all values in the cache.
|
|
74
74
|
*/
|
|
75
|
-
readonly invalidateAll: Effect.Effect<
|
|
75
|
+
readonly invalidateAll: Effect.Effect<void>
|
|
76
76
|
|
|
77
77
|
/**
|
|
78
78
|
* Force the reuse of the lookup function to compute the returned scoped
|
|
@@ -82,12 +82,12 @@ export interface ScopedCache<in Key, out Error, out Value> extends ScopedCache.V
|
|
|
82
82
|
* computed, concurrent call the .get will use the old resource if this one is
|
|
83
83
|
* not expired.
|
|
84
84
|
*/
|
|
85
|
-
refresh(key: Key): Effect.Effect<
|
|
85
|
+
refresh(key: Key): Effect.Effect<void, Error>
|
|
86
86
|
|
|
87
87
|
/**
|
|
88
88
|
* Returns the approximate number of values in the cache.
|
|
89
89
|
*/
|
|
90
|
-
readonly size: Effect.Effect<
|
|
90
|
+
readonly size: Effect.Effect<number>
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/**
|
|
@@ -120,7 +120,7 @@ export const make: <Key, Environment, Error, Value>(
|
|
|
120
120
|
readonly capacity: number
|
|
121
121
|
readonly timeToLive: Duration.DurationInput
|
|
122
122
|
}
|
|
123
|
-
) => Effect.Effect<
|
|
123
|
+
) => Effect.Effect<ScopedCache<Key, Error, Value>, never, Scope.Scope | Environment> = internal.make
|
|
124
124
|
|
|
125
125
|
/**
|
|
126
126
|
* Constructs a new cache with the specified capacity, time to live, and
|
|
@@ -134,9 +134,9 @@ export const makeWith: <Key, Environment, Error, Value>(
|
|
|
134
134
|
options: {
|
|
135
135
|
readonly capacity: number
|
|
136
136
|
readonly lookup: Lookup<Key, Environment, Error, Value>
|
|
137
|
-
readonly timeToLive: (exit: Exit.Exit<
|
|
137
|
+
readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
138
138
|
}
|
|
139
|
-
) => Effect.Effect<
|
|
139
|
+
) => Effect.Effect<ScopedCache<Key, Error, Value>, never, Scope.Scope | Environment> = internal.makeWith
|
|
140
140
|
|
|
141
141
|
/**
|
|
142
142
|
* Similar to `Cache.Lookup`, but executes the lookup function within a `Scope`.
|
|
@@ -146,4 +146,4 @@ export const makeWith: <Key, Environment, Error, Value>(
|
|
|
146
146
|
*/
|
|
147
147
|
export type Lookup<Key, Environment, Error, Value> = (
|
|
148
148
|
key: Key
|
|
149
|
-
) => Effect.Effect<Environment | Scope.Scope
|
|
149
|
+
) => Effect.Effect<Value, Error, Environment | Scope.Scope>
|
package/src/ScopedRef.ts
CHANGED
|
@@ -58,9 +58,9 @@ export declare namespace ScopedRef {
|
|
|
58
58
|
* @since 2.0.0
|
|
59
59
|
* @category constructors
|
|
60
60
|
*/
|
|
61
|
-
export const fromAcquire: <
|
|
62
|
-
acquire: Effect.Effect<
|
|
63
|
-
) => Effect.Effect<Scope.Scope | R
|
|
61
|
+
export const fromAcquire: <A, E, R>(
|
|
62
|
+
acquire: Effect.Effect<A, E, R>
|
|
63
|
+
) => Effect.Effect<ScopedRef<A>, E, Scope.Scope | R> = internal.fromAcquire
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
66
|
* Retrieves the current value of the scoped reference.
|
|
@@ -68,7 +68,7 @@ export const fromAcquire: <R, E, A>(
|
|
|
68
68
|
* @since 2.0.0
|
|
69
69
|
* @category getters
|
|
70
70
|
*/
|
|
71
|
-
export const get: <A>(self: ScopedRef<A>) => Effect.Effect<
|
|
71
|
+
export const get: <A>(self: ScopedRef<A>) => Effect.Effect<A> = internal.get
|
|
72
72
|
|
|
73
73
|
/**
|
|
74
74
|
* Creates a new `ScopedRef` from the specified value. This method should
|
|
@@ -77,7 +77,7 @@ export const get: <A>(self: ScopedRef<A>) => Effect.Effect<never, never, A> = in
|
|
|
77
77
|
* @since 2.0.0
|
|
78
78
|
* @category constructors
|
|
79
79
|
*/
|
|
80
|
-
export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<
|
|
80
|
+
export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<ScopedRef<A>, never, Scope.Scope> = internal.make
|
|
81
81
|
|
|
82
82
|
/**
|
|
83
83
|
* Sets the value of this reference to the specified resourcefully-created
|
|
@@ -91,6 +91,6 @@ export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<Scope.Scope, never
|
|
|
91
91
|
* @category getters
|
|
92
92
|
*/
|
|
93
93
|
export const set: {
|
|
94
|
-
<A, R, E>(acquire: Effect.Effect<
|
|
95
|
-
<A, R, E>(self: ScopedRef<A>, acquire: Effect.Effect<
|
|
94
|
+
<A, R, E>(acquire: Effect.Effect<A, E, R>): (self: ScopedRef<A>) => Effect.Effect<void, E, Exclude<R, Scope.Scope>>
|
|
95
|
+
<A, R, E>(self: ScopedRef<A>, acquire: Effect.Effect<A, E, R>): Effect.Effect<void, E, Exclude<R, Scope.Scope>>
|
|
96
96
|
} = internal.set
|
|
@@ -29,8 +29,8 @@ import * as internal from "./internal/channel/singleProducerAsyncInput.js"
|
|
|
29
29
|
export interface SingleProducerAsyncInput<in out Err, in out Elem, in out Done>
|
|
30
30
|
extends AsyncInputProducer<Err, Elem, Done>, AsyncInputConsumer<Err, Elem, Done>
|
|
31
31
|
{
|
|
32
|
-
readonly close: Effect.Effect<
|
|
33
|
-
readonly take: Effect.Effect<
|
|
32
|
+
readonly close: Effect.Effect<unknown>
|
|
33
|
+
readonly take: Effect.Effect<Exit.Exit<Elem, Either.Either<Err, Done>>>
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
/**
|
|
@@ -40,10 +40,10 @@ export interface SingleProducerAsyncInput<in out Err, in out Elem, in out Done>
|
|
|
40
40
|
* @category models
|
|
41
41
|
*/
|
|
42
42
|
export interface AsyncInputProducer<in Err, in Elem, in Done> {
|
|
43
|
-
awaitRead(): Effect.Effect<
|
|
44
|
-
done(value: Done): Effect.Effect<
|
|
45
|
-
emit(element: Elem): Effect.Effect<
|
|
46
|
-
error(cause: Cause.Cause<Err>): Effect.Effect<
|
|
43
|
+
awaitRead(): Effect.Effect<unknown>
|
|
44
|
+
done(value: Done): Effect.Effect<unknown>
|
|
45
|
+
emit(element: Elem): Effect.Effect<unknown>
|
|
46
|
+
error(cause: Cause.Cause<Err>): Effect.Effect<unknown>
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
/**
|
|
@@ -57,12 +57,11 @@ export interface AsyncInputConsumer<out Err, out Elem, out Done> {
|
|
|
57
57
|
onError: (cause: Cause.Cause<Err>) => A,
|
|
58
58
|
onElement: (element: Elem) => A,
|
|
59
59
|
onDone: (value: Done) => A
|
|
60
|
-
): Effect.Effect<
|
|
60
|
+
): Effect.Effect<A>
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
/**
|
|
64
64
|
* @since 2.0.0
|
|
65
65
|
* @category constructors
|
|
66
66
|
*/
|
|
67
|
-
export const make: <Err, Elem, Done>() => Effect.Effect<
|
|
68
|
-
internal.make
|
|
67
|
+
export const make: <Err, Elem, Done>() => Effect.Effect<SingleProducerAsyncInput<Err, Elem, Done>> = internal.make
|