effect 4.0.0-beta.3 → 4.0.0-beta.30
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/dist/Array.d.ts +126 -299
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +102 -62
- package/dist/Array.js.map +1 -1
- package/dist/Brand.d.ts +1 -1
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +2 -2
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +6 -5
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +2 -2
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Channel.d.ts +116 -30
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +82 -37
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +54 -247
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +36 -67
- package/dist/Chunk.js.map +1 -1
- package/dist/Combiner.d.ts +280 -13
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +198 -7
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +165 -9
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +65 -10
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +1 -1
- package/dist/Cron.d.ts +1 -1
- package/dist/Data.d.ts +535 -366
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +132 -79
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +23 -161
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +6 -51
- package/dist/DateTime.js.map +1 -1
- package/dist/Duration.d.ts +11 -11
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +11 -11
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +1206 -924
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +390 -329
- package/dist/Effect.js.map +1 -1
- package/dist/Encoding.d.ts +194 -0
- package/dist/Encoding.d.ts.map +1 -0
- package/dist/Encoding.js +352 -0
- package/dist/Encoding.js.map +1 -0
- package/dist/Equal.d.ts +276 -109
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +124 -48
- package/dist/Equal.js.map +1 -1
- package/dist/ErrorReporter.d.ts +374 -0
- package/dist/ErrorReporter.d.ts.map +1 -0
- package/dist/ErrorReporter.js +244 -0
- package/dist/ErrorReporter.js.map +1 -0
- package/dist/Exit.d.ts +24 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -4
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +3 -2
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FileSystem.d.ts +1 -1
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +5 -5
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +34 -38
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +15 -13
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +131 -47
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +229 -51
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +1 -9
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +2 -10
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +5 -8
- package/dist/Graph.js.map +1 -1
- package/dist/HashMap.d.ts +15 -14
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +4 -4
- package/dist/HashMap.js.map +1 -1
- package/dist/Iterable.d.ts +39 -39
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +94 -22
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonSchema.d.ts +299 -10
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +323 -4
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +109 -0
- package/dist/Latch.d.ts.map +1 -0
- package/dist/Latch.js +72 -0
- package/dist/Latch.js.map +1 -0
- package/dist/Layer.d.ts +121 -126
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +43 -44
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +8 -8
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +3 -3
- package/dist/LogLevel.d.ts +32 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +28 -100
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +29 -95
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +2 -3
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +2 -2
- package/dist/ManagedRuntime.js +2 -2
- package/dist/Metric.d.ts +4 -6
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +3 -5
- package/dist/Metric.js.map +1 -1
- package/dist/Newtype.d.ts +291 -0
- package/dist/Newtype.d.ts.map +1 -0
- package/dist/Newtype.js +161 -0
- package/dist/Newtype.js.map +1 -0
- package/dist/Optic.d.ts +947 -18
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +454 -5
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +23 -16
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +15 -9
- package/dist/Option.js.map +1 -1
- package/dist/Pipeable.d.ts +17 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +19 -1
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +10 -9
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +2 -2
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +6 -4
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +7 -5
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts +3 -2
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +3 -2
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +1 -1
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +0 -1
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +35 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +46 -12
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +2 -2
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +1 -1
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +1 -1
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/Record.d.ts +23 -120
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +21 -41
- package/dist/Record.js.map +1 -1
- package/dist/Reducer.d.ts +166 -7
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +135 -1
- package/dist/Reducer.js.map +1 -1
- package/dist/References.d.ts +9 -4
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +6 -1
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts +1 -1
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +2 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +25 -45
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +10 -30
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Result.d.ts +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +1 -2
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +66 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +79 -6
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +191 -102
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +152 -66
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +9 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +11 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +309 -88
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +499 -109
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +129 -23
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +5 -5
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +12 -14
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaParser.d.ts +5 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +10 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +44 -43
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +49 -24
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +107 -3
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +159 -4
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/ScopedCache.d.ts +2 -2
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +1 -1
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Semaphore.d.ts +211 -0
- package/dist/Semaphore.d.ts.map +1 -0
- package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
- package/dist/Semaphore.js.map +1 -0
- package/dist/ServiceMap.d.ts +41 -31
- package/dist/ServiceMap.d.ts.map +1 -1
- package/dist/ServiceMap.js +3 -3
- package/dist/ServiceMap.js.map +1 -1
- package/dist/Sink.d.ts +13 -13
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +53 -6
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +16 -4
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +18 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +250 -428
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +137 -82
- package/dist/Stream.js.map +1 -1
- package/dist/Struct.d.ts +16 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +22 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +2 -1
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +2 -1
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +2 -1
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +2 -1
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Trie.d.ts +18 -17
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +5 -5
- package/dist/Trie.js.map +1 -1
- package/dist/TxChunk.d.ts +37 -37
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +3 -3
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +328 -0
- package/dist/TxDeferred.d.ts.map +1 -0
- package/dist/TxDeferred.js +196 -0
- package/dist/TxDeferred.js.map +1 -0
- package/dist/TxHashMap.d.ts +84 -83
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +24 -24
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +35 -35
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +14 -14
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +609 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -0
- package/dist/TxPriorityQueue.js +415 -0
- package/dist/TxPriorityQueue.js.map +1 -0
- package/dist/TxPubSub.d.ts +585 -0
- package/dist/TxPubSub.d.ts.map +1 -0
- package/dist/TxPubSub.js +521 -0
- package/dist/TxPubSub.js.map +1 -0
- package/dist/TxQueue.d.ts +32 -32
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +26 -26
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +523 -0
- package/dist/TxReentrantLock.d.ts.map +1 -0
- package/dist/TxReentrantLock.js +504 -0
- package/dist/TxReentrantLock.js.map +1 -0
- package/dist/TxRef.d.ts +34 -34
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +21 -14
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +8 -8
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +7 -7
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +508 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -0
- package/dist/TxSubscriptionRef.js +293 -0
- package/dist/TxSubscriptionRef.js.map +1 -0
- package/dist/Types.d.ts +80 -23
- package/dist/Types.d.ts.map +1 -1
- package/dist/Utils.d.ts +137 -65
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +38 -66
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +718 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +718 -23
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js +11 -3
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +3 -11
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +264 -126
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/hashMap.js +5 -4
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/random.d.ts +2 -0
- package/dist/internal/random.d.ts.map +1 -0
- package/dist/internal/random.js +13 -0
- package/dist/internal/random.js.map +1 -0
- package/dist/internal/rcRef.js +3 -2
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/request.js +2 -2
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schema/annotations.js +2 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/representation.js +47 -106
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.js +1 -0
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/schema/to-codec.js +7 -10
- package/dist/internal/schema/to-codec.js.map +1 -1
- package/dist/internal/trie.js +5 -4
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -7
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +6 -4
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +266 -32
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +296 -23
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +64 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +64 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +134 -51
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +19 -16
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +5 -5
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +38 -44
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +16 -30
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +97 -37
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +183 -88
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +57 -12
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +66 -13
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +193 -51
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +25 -7
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +22 -6
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +20 -20
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Response.d.ts +26 -26
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +1 -1
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +20 -4
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +14 -9
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +1 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +4 -11
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +1 -1
- package/dist/unstable/ai/index.js +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +0 -5
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +27 -60
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +25 -57
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.js +59 -6
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +368 -56
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +325 -64
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
- package/dist/unstable/cli/GlobalFlag.js +118 -0
- package/dist/unstable/cli/GlobalFlag.js.map +1 -0
- package/dist/unstable/cli/HelpDoc.d.ts +70 -2
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +1 -1
- package/dist/unstable/cli/Primitive.js +1 -1
- package/dist/unstable/cli/Prompt.js +35 -8
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +4 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +4 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +40 -14
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +72 -46
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
- package/dist/unstable/cli/internal/config.js +42 -0
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.d.ts +33 -0
- package/dist/unstable/cli/internal/help.d.ts.map +1 -0
- package/dist/unstable/cli/internal/help.js +125 -0
- package/dist/unstable/cli/internal/help.js.map +1 -0
- package/dist/unstable/cli/internal/parser.js +55 -42
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +4 -3
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +7 -6
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +2 -2
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +4 -4
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +10 -10
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +2 -1
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +6 -6
- package/dist/unstable/cluster/Runner.d.ts +1 -1
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +4 -3
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +2 -2
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +9 -7
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +20 -20
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +5 -4
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js +2 -1
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceRef.js +2 -1
- package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
- package/dist/unstable/encoding/Msgpack.d.ts +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +1 -1
- package/dist/unstable/encoding/Sse.d.ts +4 -4
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +2 -1
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
- package/dist/unstable/http/Cookies.d.ts +47 -3
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +24 -2
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +16 -0
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +38 -10
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +3 -3
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.js +6 -6
- package/dist/unstable/http/HttpBody.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts +117 -15
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +189 -12
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +7 -7
- package/dist/unstable/http/HttpClientRequest.d.ts +16 -11
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +31 -20
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +4 -0
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +7 -5
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +46 -54
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +4 -4
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +3 -3
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +8 -17
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +20 -33
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +37 -44
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +12 -1
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +291 -1
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +5 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +234 -1
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
- package/dist/unstable/http/HttpStaticServer.js +353 -0
- package/dist/unstable/http/HttpStaticServer.js.map +1 -0
- package/dist/unstable/http/Multipart.d.ts +3 -3
- package/dist/unstable/http/UrlParams.d.ts +14 -6
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +1 -1
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +4 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +4 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
- package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js +10 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
- package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +28 -18
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +66 -6
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +40 -3
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +41 -54
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +17 -26
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +16 -14
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +44 -29
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +32 -21
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +12 -12
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +1 -1
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +7 -4
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +6 -6
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +2 -2
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +2 -1
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +12 -11
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +1 -1
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +2 -2
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +1 -1
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +5 -128
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +1 -65
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +21 -1
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +73 -12
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +107 -20
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +10 -12
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +42 -12
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +50 -9
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +47 -21
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts +39 -0
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
- package/dist/unstable/reactivity/Hydration.js +76 -0
- package/dist/unstable/reactivity/Hydration.js.map +1 -0
- package/dist/unstable/reactivity/index.d.ts +4 -0
- package/dist/unstable/reactivity/index.d.ts.map +1 -1
- package/dist/unstable/reactivity/index.js +4 -0
- package/dist/unstable/reactivity/index.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +5 -5
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +5 -26
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +6 -13
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +2 -2
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +14 -0
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +34 -9
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +5 -9
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +17 -17
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +3 -2
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +22 -1
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +15 -0
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +5 -5
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +6 -6
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +4 -4
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +6 -5
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +3 -3
- package/dist/unstable/sql/Migrator.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +14 -14
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +9 -3
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +2 -2
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +3 -3
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +17 -8
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +17 -6
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +17 -7
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/Statement.js +0 -1
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +2 -1
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +3 -3
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +3 -3
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +2 -2
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +3 -3
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +1 -1
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +137 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +2 -2
- package/src/Array.ts +192 -342
- package/src/Brand.ts +1 -1
- package/src/Cache.ts +9 -8
- package/src/Cause.ts +2 -2
- package/src/Channel.ts +554 -138
- package/src/Chunk.ts +81 -268
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +186 -24
- package/src/Data.ts +539 -376
- package/src/DateTime.ts +24 -164
- package/src/Duration.ts +13 -13
- package/src/Effect.ts +1477 -1126
- package/src/Encoding.ts +879 -0
- package/src/Equal.ts +278 -111
- package/src/ErrorReporter.ts +457 -0
- package/src/Exit.ts +24 -12
- package/src/Fiber.ts +10 -2
- package/src/FileSystem.ts +7 -8
- package/src/Filter.ts +52 -63
- package/src/Formatter.ts +253 -51
- package/src/Function.ts +2 -10
- package/src/Graph.ts +24 -11
- package/src/HashMap.ts +15 -14
- package/src/Iterable.ts +104 -50
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +112 -0
- package/src/Layer.ts +123 -132
- package/src/LayerMap.ts +9 -9
- package/src/LogLevel.ts +37 -0
- package/src/Logger.ts +33 -100
- package/src/ManagedRuntime.ts +2 -2
- package/src/Metric.ts +6 -8
- package/src/Newtype.ts +308 -0
- package/src/Optic.ts +948 -19
- package/src/Option.ts +32 -24
- package/src/Pipeable.ts +32 -1
- package/src/PlatformError.ts +5 -5
- package/src/Pool.ts +13 -11
- package/src/PubSub.ts +10 -9
- package/src/Pull.ts +1 -1
- package/src/Queue.ts +0 -1
- package/src/Random.ts +51 -14
- package/src/RcMap.ts +5 -5
- package/src/RcRef.ts +1 -1
- package/src/Record.ts +42 -152
- package/src/Reducer.ts +166 -7
- package/src/References.ts +10 -5
- package/src/Request.ts +3 -2
- package/src/RequestResolver.ts +29 -49
- package/src/Result.ts +2 -4
- package/src/Runtime.ts +102 -6
- package/src/Schedule.ts +462 -242
- package/src/Scheduler.ts +12 -0
- package/src/Schema.ts +796 -194
- package/src/SchemaAST.ts +164 -31
- package/src/SchemaGetter.ts +15 -17
- package/src/SchemaParser.ts +11 -0
- package/src/SchemaRepresentation.ts +49 -24
- package/src/SchemaTransformation.ts +189 -4
- package/src/ScopedCache.ts +3 -3
- package/src/Semaphore.ts +356 -0
- package/src/ServiceMap.ts +50 -40
- package/src/Sink.ts +78 -26
- package/src/Stdio.ts +27 -4
- package/src/Stream.ts +586 -608
- package/src/Struct.ts +26 -0
- package/src/SubscriptionRef.ts +3 -2
- package/src/SynchronizedRef.ts +3 -2
- package/src/Trie.ts +18 -17
- package/src/TxChunk.ts +72 -53
- package/src/TxDeferred.ts +394 -0
- package/src/TxHashMap.ts +332 -285
- package/src/TxHashSet.ts +111 -116
- package/src/TxPriorityQueue.ts +767 -0
- package/src/TxPubSub.ts +789 -0
- package/src/TxQueue.ts +241 -251
- package/src/TxReentrantLock.ts +753 -0
- package/src/TxRef.ts +50 -38
- package/src/TxSemaphore.ts +29 -32
- package/src/TxSubscriptionRef.ts +639 -0
- package/src/Types.ts +73 -19
- package/src/Utils.ts +137 -111
- package/src/index.ts +728 -24
- package/src/internal/core.ts +12 -5
- package/src/internal/dateTime.ts +9 -30
- package/src/internal/effect.ts +774 -301
- package/src/internal/hashMap.ts +8 -7
- package/src/internal/random.ts +20 -0
- package/src/internal/rcRef.ts +4 -3
- package/src/internal/request.ts +2 -2
- package/src/internal/schema/annotations.ts +2 -0
- package/src/internal/schema/representation.ts +45 -94
- package/src/internal/schema/schema.ts +1 -0
- package/src/internal/schema/to-codec.ts +7 -17
- package/src/internal/trie.ts +15 -9
- package/src/testing/TestClock.ts +13 -11
- package/src/testing/TestSchema.ts +332 -35
- package/src/testing/index.ts +64 -1
- package/src/unstable/ai/AiError.ts +105 -48
- package/src/unstable/ai/Chat.ts +47 -61
- package/src/unstable/ai/LanguageModel.ts +153 -68
- package/src/unstable/ai/McpSchema.ts +73 -13
- package/src/unstable/ai/McpServer.ts +271 -61
- package/src/unstable/ai/Model.ts +40 -9
- package/src/unstable/ai/Prompt.ts +37 -37
- package/src/unstable/ai/Response.ts +25 -25
- package/src/unstable/ai/Tool.ts +20 -14
- package/src/unstable/ai/Toolkit.ts +5 -14
- package/src/unstable/ai/index.ts +1 -1
- package/src/unstable/ai/internal/codec-transformer.ts +0 -7
- package/src/unstable/cli/CliError.ts +47 -59
- package/src/unstable/cli/CliOutput.ts +75 -6
- package/src/unstable/cli/Command.ts +796 -187
- package/src/unstable/cli/GlobalFlag.ts +243 -0
- package/src/unstable/cli/HelpDoc.ts +80 -2
- package/src/unstable/cli/Primitive.ts +1 -1
- package/src/unstable/cli/Prompt.ts +31 -9
- package/src/unstable/cli/index.ts +5 -0
- package/src/unstable/cli/internal/command.ts +109 -63
- package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
- package/src/unstable/cli/internal/config.ts +49 -0
- package/src/unstable/cli/internal/help.ts +171 -0
- package/src/unstable/cli/internal/parser.ts +66 -61
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -4
- package/src/unstable/cluster/Entity.ts +11 -10
- package/src/unstable/cluster/EntityResource.ts +4 -4
- package/src/unstable/cluster/Envelope.ts +1 -1
- package/src/unstable/cluster/K8sHttpClient.ts +5 -5
- package/src/unstable/cluster/MessageStorage.ts +3 -5
- package/src/unstable/cluster/Runners.ts +6 -5
- package/src/unstable/cluster/Sharding.ts +12 -10
- package/src/unstable/cluster/ShardingConfig.ts +30 -31
- package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
- package/src/unstable/cluster/internal/entityManager.ts +9 -8
- package/src/unstable/cluster/internal/entityReaper.ts +2 -1
- package/src/unstable/cluster/internal/resourceRef.ts +2 -1
- package/src/unstable/encoding/Sse.ts +3 -5
- package/src/unstable/eventlog/EventLog.ts +2 -1
- package/src/unstable/http/Cookies.ts +87 -3
- package/src/unstable/http/Headers.ts +62 -13
- package/src/unstable/http/HttpBody.ts +6 -6
- package/src/unstable/http/HttpClient.ts +374 -33
- package/src/unstable/http/HttpClientRequest.ts +38 -30
- package/src/unstable/http/HttpClientResponse.ts +7 -2
- package/src/unstable/http/HttpEffect.ts +54 -68
- package/src/unstable/http/HttpMethod.ts +16 -4
- package/src/unstable/http/HttpMiddleware.ts +9 -24
- package/src/unstable/http/HttpServerError.ts +42 -45
- package/src/unstable/http/HttpServerRequest.ts +389 -2
- package/src/unstable/http/HttpServerRespondable.ts +6 -6
- package/src/unstable/http/HttpServerResponse.ts +337 -4
- package/src/unstable/http/HttpStaticServer.ts +456 -0
- package/src/unstable/http/Multipart.ts +2 -2
- package/src/unstable/http/UrlParams.ts +20 -5
- package/src/unstable/http/index.ts +5 -0
- package/src/unstable/http/internal/preResponseHandler.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +6 -6
- package/src/unstable/httpapi/HttpApiBuilder.ts +81 -28
- package/src/unstable/httpapi/HttpApiClient.ts +100 -11
- package/src/unstable/httpapi/HttpApiEndpoint.ts +71 -87
- package/src/unstable/httpapi/HttpApiError.ts +51 -28
- package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
- package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
- package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
- package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
- package/src/unstable/httpapi/OpenApi.ts +41 -23
- package/src/unstable/observability/Otlp.ts +12 -12
- package/src/unstable/observability/OtlpExporter.ts +3 -3
- package/src/unstable/observability/OtlpLogger.ts +13 -9
- package/src/unstable/observability/OtlpMetrics.ts +4 -4
- package/src/unstable/observability/OtlpTracer.ts +4 -4
- package/src/unstable/persistence/KeyValueStore.ts +6 -6
- package/src/unstable/persistence/Persistable.ts +2 -2
- package/src/unstable/persistence/PersistedCache.ts +20 -9
- package/src/unstable/persistence/PersistedQueue.ts +25 -24
- package/src/unstable/persistence/Persistence.ts +3 -3
- package/src/unstable/persistence/RateLimiter.ts +4 -4
- package/src/unstable/process/ChildProcess.ts +6 -208
- package/src/unstable/process/ChildProcessSpawner.ts +75 -14
- package/src/unstable/reactivity/Atom.ts +211 -50
- package/src/unstable/reactivity/AtomHttpApi.ts +66 -31
- package/src/unstable/reactivity/AtomRegistry.ts +61 -9
- package/src/unstable/reactivity/AtomRpc.ts +51 -20
- package/src/unstable/reactivity/Hydration.ts +112 -0
- package/src/unstable/reactivity/index.ts +5 -0
- package/src/unstable/rpc/Rpc.ts +7 -9
- package/src/unstable/rpc/RpcClient.ts +12 -54
- package/src/unstable/rpc/RpcGroup.ts +4 -4
- package/src/unstable/rpc/RpcMiddleware.ts +15 -9
- package/src/unstable/rpc/RpcSchema.ts +17 -0
- package/src/unstable/rpc/RpcSerialization.ts +44 -9
- package/src/unstable/rpc/RpcServer.ts +28 -32
- package/src/unstable/rpc/Utils.ts +3 -2
- package/src/unstable/schema/Model.ts +31 -0
- package/src/unstable/schema/VariantSchema.ts +9 -9
- package/src/unstable/socket/Socket.ts +16 -17
- package/src/unstable/sql/SqlClient.ts +1 -1
- package/src/unstable/sql/SqlError.ts +11 -9
- package/src/unstable/sql/SqlModel.ts +5 -5
- package/src/unstable/sql/SqlResolver.ts +17 -7
- package/src/unstable/sql/SqlSchema.ts +42 -26
- package/src/unstable/sql/Statement.ts +0 -1
- package/src/unstable/workers/Worker.ts +2 -1
- package/src/unstable/workflow/DurableClock.ts +8 -8
- package/src/unstable/workflow/DurableDeferred.ts +2 -2
- package/src/unstable/workflow/Workflow.ts +6 -2
- package/src/unstable/workflow/WorkflowEngine.ts +185 -2
- package/dist/PartitionedSemaphore.d.ts +0 -52
- package/dist/PartitionedSemaphore.d.ts.map +0 -1
- package/dist/PartitionedSemaphore.js.map +0 -1
- package/dist/encoding/Base64.d.ts +0 -67
- package/dist/encoding/Base64.d.ts.map +0 -1
- package/dist/encoding/Base64.js +0 -146
- package/dist/encoding/Base64.js.map +0 -1
- package/dist/encoding/Base64Url.d.ts +0 -60
- package/dist/encoding/Base64Url.d.ts.map +0 -1
- package/dist/encoding/Base64Url.js +0 -89
- package/dist/encoding/Base64Url.js.map +0 -1
- package/dist/encoding/EncodingError.d.ts +0 -31
- package/dist/encoding/EncodingError.d.ts.map +0 -1
- package/dist/encoding/EncodingError.js +0 -22
- package/dist/encoding/EncodingError.js.map +0 -1
- package/dist/encoding/Hex.d.ts +0 -61
- package/dist/encoding/Hex.d.ts.map +0 -1
- package/dist/encoding/Hex.js +0 -115
- package/dist/encoding/Hex.js.map +0 -1
- package/dist/encoding/index.d.ts +0 -26
- package/dist/encoding/index.d.ts.map +0 -1
- package/dist/encoding/index.js +0 -27
- package/dist/encoding/index.js.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
- package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.js +0 -44
- package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
- package/src/PartitionedSemaphore.ts +0 -182
- package/src/encoding/Base64.ts +0 -366
- package/src/encoding/Base64Url.ts +0 -104
- package/src/encoding/EncodingError.ts +0 -35
- package/src/encoding/Hex.ts +0 -390
- package/src/encoding/index.ts +0 -31
- package/src/unstable/cli/internal/builtInFlags.ts +0 -78
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pluggable error reporting for Effect programs.
|
|
3
|
+
*
|
|
4
|
+
* Reporting is triggered by `Effect.withErrorReporting`,
|
|
5
|
+
* `ErrorReporter.report`, or built-in reporting boundaries in the HTTP and
|
|
6
|
+
* RPC server modules.
|
|
7
|
+
*
|
|
8
|
+
* Each reporter receives a structured callback with the failing `Cause`, a
|
|
9
|
+
* pretty-printed `Error`, severity, and any extra attributes attached to the
|
|
10
|
+
* original error — making it straightforward to forward failures to Sentry,
|
|
11
|
+
* Datadog, or a custom logging backend.
|
|
12
|
+
*
|
|
13
|
+
* Use the annotation symbols (`ignore`, `severity`, `attributes`) on your
|
|
14
|
+
* error classes to control reporting behavior per-error.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { Data, Effect, ErrorReporter } from "effect"
|
|
19
|
+
*
|
|
20
|
+
* // A reporter that logs to the console
|
|
21
|
+
* const consoleReporter = ErrorReporter.make(({ error, severity }) => {
|
|
22
|
+
* console.error(`[${severity}]`, error.message)
|
|
23
|
+
* })
|
|
24
|
+
*
|
|
25
|
+
* // An error that should be ignored by reporters
|
|
26
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
27
|
+
* readonly [ErrorReporter.ignore] = true
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* // An error with custom severity and attributes
|
|
31
|
+
* class RateLimitError extends Data.TaggedError("RateLimitError")<{
|
|
32
|
+
* readonly retryAfter: number
|
|
33
|
+
* }> {
|
|
34
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
35
|
+
* readonly [ErrorReporter.attributes] = {
|
|
36
|
+
* retryAfter: this.retryAfter
|
|
37
|
+
* }
|
|
38
|
+
* }
|
|
39
|
+
*
|
|
40
|
+
* // Opt in to error reporting with Effect.withErrorReporting
|
|
41
|
+
* const program = Effect.gen(function*() {
|
|
42
|
+
* return yield* new RateLimitError({ retryAfter: 60 })
|
|
43
|
+
* }).pipe(
|
|
44
|
+
* Effect.withErrorReporting,
|
|
45
|
+
* Effect.provide(ErrorReporter.layer([consoleReporter]))
|
|
46
|
+
* )
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @since 4.0.0
|
|
50
|
+
*/
|
|
51
|
+
import type * as Cause from "./Cause.ts"
|
|
52
|
+
import * as Effect from "./Effect.ts"
|
|
53
|
+
import type * as Fiber from "./Fiber.ts"
|
|
54
|
+
import * as effect from "./internal/effect.ts"
|
|
55
|
+
import * as Layer from "./Layer.ts"
|
|
56
|
+
import * as LogLevel from "./LogLevel.ts"
|
|
57
|
+
import type { Severity } from "./LogLevel.ts"
|
|
58
|
+
import type { ReadonlyRecord } from "./Record.ts"
|
|
59
|
+
import type * as Scope from "./Scope.ts"
|
|
60
|
+
import type * as ServiceMap from "./ServiceMap.ts"
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* @since 4.0.0
|
|
64
|
+
* @category Type Identifiers
|
|
65
|
+
*/
|
|
66
|
+
export type TypeId = "~effect/ErrorReporter"
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* @since 4.0.0
|
|
70
|
+
* @category Type Identifiers
|
|
71
|
+
*/
|
|
72
|
+
export const TypeId: TypeId = "~effect/ErrorReporter"
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* An `ErrorReporter` receives reported failures and forwards them to an
|
|
76
|
+
* external system (logging service, error tracker, etc.).
|
|
77
|
+
*
|
|
78
|
+
* Reporting is triggered by `Effect.withErrorReporting`,
|
|
79
|
+
* `ErrorReporter.report`, or built-in boundaries in the HTTP and RPC server
|
|
80
|
+
* modules. Use {@link make} to create a reporter — it handles deduplication
|
|
81
|
+
* and per-error annotation extraction automatically.
|
|
82
|
+
*
|
|
83
|
+
* @since 4.0.0
|
|
84
|
+
* @category Models
|
|
85
|
+
*/
|
|
86
|
+
export interface ErrorReporter {
|
|
87
|
+
readonly [TypeId]: TypeId
|
|
88
|
+
report(options: {
|
|
89
|
+
readonly cause: Cause.Cause<unknown>
|
|
90
|
+
readonly fiber: Fiber.Fiber<unknown, unknown>
|
|
91
|
+
readonly timestamp: bigint
|
|
92
|
+
}): void
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Creates an `ErrorReporter` from a callback.
|
|
97
|
+
*
|
|
98
|
+
* The returned reporter automatically deduplicates causes and individual
|
|
99
|
+
* errors (the same object is never reported twice), skips interruptions,
|
|
100
|
+
* and resolves the `ignore`, `severity`, and `attributes` annotations on
|
|
101
|
+
* each error before invoking your callback.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* import { ErrorReporter } from "effect"
|
|
106
|
+
*
|
|
107
|
+
* // Forward every failure to the console
|
|
108
|
+
* const consoleReporter = ErrorReporter.make(
|
|
109
|
+
* ({ error, severity, attributes }) => {
|
|
110
|
+
* console.error(`[${severity}]`, error.message, attributes)
|
|
111
|
+
* }
|
|
112
|
+
* )
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* @since 4.0.0
|
|
116
|
+
* @category Constructors
|
|
117
|
+
*/
|
|
118
|
+
export const make = (
|
|
119
|
+
report: (options: {
|
|
120
|
+
readonly cause: Cause.Cause<unknown>
|
|
121
|
+
readonly error: Error
|
|
122
|
+
readonly attributes: ReadonlyRecord<string, unknown>
|
|
123
|
+
readonly severity: Severity
|
|
124
|
+
readonly fiber: Fiber.Fiber<unknown, unknown>
|
|
125
|
+
readonly timestamp: bigint
|
|
126
|
+
}) => void
|
|
127
|
+
): ErrorReporter => {
|
|
128
|
+
const reported = new WeakSet<Cause.Cause<unknown> | object>()
|
|
129
|
+
return {
|
|
130
|
+
[TypeId]: TypeId,
|
|
131
|
+
report(options) {
|
|
132
|
+
if (reported.has(options.cause)) return
|
|
133
|
+
reported.add(options.cause)
|
|
134
|
+
for (let i = 0; i < options.cause.reasons.length; i++) {
|
|
135
|
+
const reason = options.cause.reasons[i]
|
|
136
|
+
if (reason._tag === "Interrupt") continue
|
|
137
|
+
const original = reason._tag === "Fail" ? reason.error : reason.defect
|
|
138
|
+
const isObject = typeof original === "object" && original !== null
|
|
139
|
+
if (isObject) {
|
|
140
|
+
if (reported.has(original)) continue
|
|
141
|
+
reported.add(original)
|
|
142
|
+
}
|
|
143
|
+
if (isIgnored(original)) continue
|
|
144
|
+
const pretty = effect.causePrettyError(original as any, reason.annotations)
|
|
145
|
+
report({
|
|
146
|
+
...options,
|
|
147
|
+
error: pretty,
|
|
148
|
+
severity: isObject ? getSeverity(original) : "Info",
|
|
149
|
+
attributes: isObject ? getAttributes(original) : emptyAttributes
|
|
150
|
+
})
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* A `ServiceMap.Reference` holding the set of active `ErrorReporter`s for the
|
|
158
|
+
* current fiber. Defaults to an empty set (no reporting).
|
|
159
|
+
*
|
|
160
|
+
* Prefer {@link layer} to configure reporters via the `Layer` API. Use this
|
|
161
|
+
* reference directly only when you need low-level control (e.g. reading the
|
|
162
|
+
* current reporters or swapping them inside a `FiberRef`).
|
|
163
|
+
*
|
|
164
|
+
* @since 4.0.0
|
|
165
|
+
* @category References
|
|
166
|
+
*/
|
|
167
|
+
export const CurrentErrorReporters: ServiceMap.Reference<ReadonlySet<ErrorReporter>> = effect.CurrentErrorReporters
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Creates a `Layer` that registers one or more `ErrorReporter`s.
|
|
171
|
+
*
|
|
172
|
+
* Reporters can be plain `ErrorReporter` values or effectful
|
|
173
|
+
* `Effect<ErrorReporter>` values that are resolved when the layer is built.
|
|
174
|
+
*
|
|
175
|
+
* By default the provided reporters **replace** any previously registered
|
|
176
|
+
* reporters. Set `mergeWithExisting: true` to add them alongside existing
|
|
177
|
+
* ones.
|
|
178
|
+
*
|
|
179
|
+
* @example
|
|
180
|
+
* ```ts
|
|
181
|
+
* import { Effect, ErrorReporter } from "effect"
|
|
182
|
+
*
|
|
183
|
+
* const consoleReporter = ErrorReporter.make(({ error, severity }) => {
|
|
184
|
+
* console.error(`[${severity}]`, error.message)
|
|
185
|
+
* })
|
|
186
|
+
*
|
|
187
|
+
* const metricsReporter = ErrorReporter.make(({ severity }) => {
|
|
188
|
+
* // increment an error counter by severity
|
|
189
|
+
* })
|
|
190
|
+
*
|
|
191
|
+
* // Replace all existing reporters
|
|
192
|
+
* const ReporterLive = ErrorReporter.layer([
|
|
193
|
+
* consoleReporter,
|
|
194
|
+
* metricsReporter
|
|
195
|
+
* ])
|
|
196
|
+
*
|
|
197
|
+
* // Add to existing reporters instead of replacing
|
|
198
|
+
* const ReporterMerged = ErrorReporter.layer(
|
|
199
|
+
* [metricsReporter],
|
|
200
|
+
* { mergeWithExisting: true }
|
|
201
|
+
* )
|
|
202
|
+
*
|
|
203
|
+
* const program = Effect.fail("boom").pipe(
|
|
204
|
+
* Effect.withErrorReporting,
|
|
205
|
+
* Effect.provide(ReporterLive)
|
|
206
|
+
* )
|
|
207
|
+
* ```
|
|
208
|
+
*
|
|
209
|
+
* @since 4.0.0
|
|
210
|
+
* @category Layers
|
|
211
|
+
*/
|
|
212
|
+
export const layer = <
|
|
213
|
+
const Reporters extends ReadonlyArray<ErrorReporter | Effect.Effect<ErrorReporter, any, any>>
|
|
214
|
+
>(
|
|
215
|
+
reporters: Reporters,
|
|
216
|
+
options?: { readonly mergeWithExisting?: boolean | undefined } | undefined
|
|
217
|
+
): Layer.Layer<
|
|
218
|
+
never,
|
|
219
|
+
Reporters extends readonly [] ? never : Effect.Error<Reporters[number]>,
|
|
220
|
+
Exclude<
|
|
221
|
+
Reporters extends readonly [] ? never : Effect.Services<Reporters[number]>,
|
|
222
|
+
Scope.Scope
|
|
223
|
+
>
|
|
224
|
+
> =>
|
|
225
|
+
Layer.effect(
|
|
226
|
+
CurrentErrorReporters,
|
|
227
|
+
Effect.withFiber(Effect.fnUntraced(function*(fiber) {
|
|
228
|
+
const currentReporters = new Set(
|
|
229
|
+
options?.mergeWithExisting === true ? fiber.getRef(effect.CurrentErrorReporters) : []
|
|
230
|
+
)
|
|
231
|
+
for (const reporter of reporters) {
|
|
232
|
+
currentReporters.add(Effect.isEffect(reporter) ? yield* reporter : reporter)
|
|
233
|
+
}
|
|
234
|
+
return currentReporters
|
|
235
|
+
}))
|
|
236
|
+
)
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Manually report a `Cause` to all registered `ErrorReporter`s on the
|
|
240
|
+
* current fiber.
|
|
241
|
+
*
|
|
242
|
+
* This is useful when you want to report an error for observability without
|
|
243
|
+
* actually failing the fiber.
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```ts
|
|
247
|
+
* import { Cause, Effect, ErrorReporter } from "effect"
|
|
248
|
+
*
|
|
249
|
+
* // Log the cause for monitoring, then continue with a fallback
|
|
250
|
+
* const program = Effect.gen(function*() {
|
|
251
|
+
* const cause = Cause.fail("something went wrong")
|
|
252
|
+
* yield* ErrorReporter.report(cause)
|
|
253
|
+
* return "fallback value"
|
|
254
|
+
* })
|
|
255
|
+
* ```
|
|
256
|
+
*
|
|
257
|
+
* @since 4.0.0
|
|
258
|
+
* @category Reporting
|
|
259
|
+
*/
|
|
260
|
+
export const report = <E>(cause: Cause.Cause<E>): Effect.Effect<void> =>
|
|
261
|
+
Effect.withFiber((fiber) => {
|
|
262
|
+
effect.reportCauseUnsafe(fiber, cause)
|
|
263
|
+
return Effect.void
|
|
264
|
+
})
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* Interface that errors can implement to control reporting behavior.
|
|
268
|
+
*
|
|
269
|
+
* All three annotation properties are optional:
|
|
270
|
+
* - `[ErrorReporter.ignore]` — when `true`, the error is never reported
|
|
271
|
+
* - `[ErrorReporter.severity]` — overrides the default `"Error"` severity
|
|
272
|
+
* - `[ErrorReporter.attributes]` — extra key/value pairs forwarded to reporters
|
|
273
|
+
*
|
|
274
|
+
* The global `Error` interface is augmented with `Reportable`, so these
|
|
275
|
+
* properties are available on all `Error` instances.
|
|
276
|
+
*
|
|
277
|
+
* @since 4.0.0
|
|
278
|
+
* @category Annotations
|
|
279
|
+
*/
|
|
280
|
+
export interface Reportable {
|
|
281
|
+
readonly [ignore]?: boolean
|
|
282
|
+
readonly [severity]?: Severity
|
|
283
|
+
readonly [attributes]?: ReadonlyRecord<string, unknown>
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
declare global {
|
|
287
|
+
interface Error extends Reportable {}
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* Symbol key used to mark an error as unreportable.
|
|
292
|
+
*
|
|
293
|
+
* Set this property to `true` on any error class to prevent it from being
|
|
294
|
+
* forwarded to reporters. Useful for expected errors such as HTTP 404s.
|
|
295
|
+
*
|
|
296
|
+
* @example
|
|
297
|
+
* ```ts
|
|
298
|
+
* import { Data, ErrorReporter } from "effect"
|
|
299
|
+
*
|
|
300
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
301
|
+
* readonly [ErrorReporter.ignore] = true
|
|
302
|
+
* }
|
|
303
|
+
* ```
|
|
304
|
+
*
|
|
305
|
+
* @since 4.0.0
|
|
306
|
+
* @category Annotations
|
|
307
|
+
*/
|
|
308
|
+
export type ignore = "~effect/ErrorReporter/ignore"
|
|
309
|
+
|
|
310
|
+
/**
|
|
311
|
+
* Symbol key used to mark an error as unreportable.
|
|
312
|
+
*
|
|
313
|
+
* Set this property to `true` on any error class to prevent it from being
|
|
314
|
+
* forwarded to reporters. Useful for expected errors such as HTTP 404s.
|
|
315
|
+
*
|
|
316
|
+
* @example
|
|
317
|
+
* ```ts
|
|
318
|
+
* import { Data, ErrorReporter } from "effect"
|
|
319
|
+
*
|
|
320
|
+
* class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
|
|
321
|
+
* readonly [ErrorReporter.ignore] = true
|
|
322
|
+
* }
|
|
323
|
+
* ```
|
|
324
|
+
*
|
|
325
|
+
* @since 4.0.0
|
|
326
|
+
* @category Annotations
|
|
327
|
+
*/
|
|
328
|
+
export const ignore: ignore = "~effect/ErrorReporter/ignore"
|
|
329
|
+
|
|
330
|
+
/**
|
|
331
|
+
* Returns `true` if the given value has the `ErrorReporter.ignore` annotation
|
|
332
|
+
* set to `true`.
|
|
333
|
+
*
|
|
334
|
+
* @since 4.0.0
|
|
335
|
+
* @category Annotations
|
|
336
|
+
*/
|
|
337
|
+
export const isIgnored = (u: unknown): boolean =>
|
|
338
|
+
typeof u === "object" && u !== null && ignore in u && u[ignore] === true
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Symbol key used to override the severity level of an error.
|
|
342
|
+
*
|
|
343
|
+
* When set, the reporter callback receives this value as `severity` instead
|
|
344
|
+
* of the default `"Error"`. Accepted values are the `LogLevel.Severity`
|
|
345
|
+
* literals: `"Trace"`, `"Debug"`, `"Info"`, `"Warn"`, `"Error"`, `"Fatal"`.
|
|
346
|
+
*
|
|
347
|
+
* @example
|
|
348
|
+
* ```ts
|
|
349
|
+
* import { Data, ErrorReporter } from "effect"
|
|
350
|
+
*
|
|
351
|
+
* class DeprecationWarning extends Data.TaggedError("DeprecationWarning")<{}> {
|
|
352
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
353
|
+
* }
|
|
354
|
+
* ```
|
|
355
|
+
*
|
|
356
|
+
* @since 4.0.0
|
|
357
|
+
* @category Annotations
|
|
358
|
+
*/
|
|
359
|
+
export type severity = "~effect/ErrorReporter/severity"
|
|
360
|
+
|
|
361
|
+
/**
|
|
362
|
+
* Symbol key used to override the severity level of an error.
|
|
363
|
+
*
|
|
364
|
+
* When set, the reporter callback receives this value as `severity` instead
|
|
365
|
+
* of the default `"Error"`. Accepted values are the `LogLevel.Severity`
|
|
366
|
+
* literals: `"Trace"`, `"Debug"`, `"Info"`, `"Warn"`, `"Error"`, `"Fatal"`.
|
|
367
|
+
*
|
|
368
|
+
* @example
|
|
369
|
+
* ```ts
|
|
370
|
+
* import { Data, ErrorReporter } from "effect"
|
|
371
|
+
*
|
|
372
|
+
* class DeprecationWarning extends Data.TaggedError("DeprecationWarning")<{}> {
|
|
373
|
+
* readonly [ErrorReporter.severity] = "Warn" as const
|
|
374
|
+
* }
|
|
375
|
+
* ```
|
|
376
|
+
*
|
|
377
|
+
* @since 4.0.0
|
|
378
|
+
* @category Annotations
|
|
379
|
+
*/
|
|
380
|
+
export const severity: severity = "~effect/ErrorReporter/severity"
|
|
381
|
+
|
|
382
|
+
/**
|
|
383
|
+
* Reads the `ErrorReporter.severity` annotation from an error object,
|
|
384
|
+
* falling back to `"Error"` when unset or invalid.
|
|
385
|
+
*
|
|
386
|
+
* @since 4.0.0
|
|
387
|
+
* @category Annotations
|
|
388
|
+
*/
|
|
389
|
+
export const getSeverity = (error: object): Severity => {
|
|
390
|
+
if (severity in error && LogLevel.values.includes(error[severity] as Severity)) {
|
|
391
|
+
return error[severity] as Severity
|
|
392
|
+
}
|
|
393
|
+
return "Info"
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
/**
|
|
397
|
+
* Symbol key used to attach extra key/value metadata to an error report.
|
|
398
|
+
*
|
|
399
|
+
* Reporters receive these attributes alongside the error, making it easy to
|
|
400
|
+
* include contextual information such as user IDs, request IDs, or any
|
|
401
|
+
* domain-specific data useful for debugging.
|
|
402
|
+
*
|
|
403
|
+
* @example
|
|
404
|
+
* ```ts
|
|
405
|
+
* import { Data, ErrorReporter } from "effect"
|
|
406
|
+
*
|
|
407
|
+
* class PaymentError extends Data.TaggedError("PaymentError")<{
|
|
408
|
+
* readonly orderId: string
|
|
409
|
+
* }> {
|
|
410
|
+
* readonly [ErrorReporter.attributes] = {
|
|
411
|
+
* orderId: this.orderId
|
|
412
|
+
* }
|
|
413
|
+
* }
|
|
414
|
+
* ```
|
|
415
|
+
*
|
|
416
|
+
* @since 4.0.0
|
|
417
|
+
* @category Annotations
|
|
418
|
+
*/
|
|
419
|
+
export type attributes = "~effect/ErrorReporter/attributes"
|
|
420
|
+
|
|
421
|
+
/**
|
|
422
|
+
* Symbol key used to attach extra key/value metadata to an error report.
|
|
423
|
+
*
|
|
424
|
+
* Reporters receive these attributes alongside the error, making it easy to
|
|
425
|
+
* include contextual information such as user IDs, request IDs, or any
|
|
426
|
+
* domain-specific data useful for debugging.
|
|
427
|
+
*
|
|
428
|
+
* @example
|
|
429
|
+
* ```ts
|
|
430
|
+
* import { Data, ErrorReporter } from "effect"
|
|
431
|
+
*
|
|
432
|
+
* class PaymentError extends Data.TaggedError("PaymentError")<{
|
|
433
|
+
* readonly orderId: string
|
|
434
|
+
* }> {
|
|
435
|
+
* readonly [ErrorReporter.attributes] = {
|
|
436
|
+
* orderId: this.orderId
|
|
437
|
+
* }
|
|
438
|
+
* }
|
|
439
|
+
* ```
|
|
440
|
+
*
|
|
441
|
+
* @since 4.0.0
|
|
442
|
+
* @category Annotations
|
|
443
|
+
*/
|
|
444
|
+
export const attributes: attributes = "~effect/ErrorReporter/attributes"
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* Reads the `ErrorReporter.attributes` annotation from an error object,
|
|
448
|
+
* returning an empty record when unset.
|
|
449
|
+
*
|
|
450
|
+
* @since 4.0.0
|
|
451
|
+
* @category Annotations
|
|
452
|
+
*/
|
|
453
|
+
export const getAttributes = (error: object): ReadonlyRecord<string, unknown> => {
|
|
454
|
+
return attributes in error ? error[attributes] as any : emptyAttributes
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
const emptyAttributes: ReadonlyRecord<string, unknown> = {}
|
package/src/Exit.ts
CHANGED
|
@@ -857,10 +857,12 @@ export const map: {
|
|
|
857
857
|
* **Example** (Mapping over an error)
|
|
858
858
|
*
|
|
859
859
|
* ```ts
|
|
860
|
-
* import { Exit } from "effect"
|
|
860
|
+
* import { Data, Exit } from "effect"
|
|
861
|
+
*
|
|
862
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
861
863
|
*
|
|
862
864
|
* const exit = Exit.fail("bad input")
|
|
863
|
-
* const mapped = Exit.mapError(exit, (e) => new
|
|
865
|
+
* const mapped = Exit.mapError(exit, (e) => new ExitError({ input: e }))
|
|
864
866
|
* console.log(Exit.isFailure(mapped)) // true
|
|
865
867
|
* ```
|
|
866
868
|
*
|
|
@@ -884,10 +886,12 @@ export const mapError: {
|
|
|
884
886
|
* **Example** (Mapping over an error)
|
|
885
887
|
*
|
|
886
888
|
* ```ts
|
|
887
|
-
* import { Exit } from "effect"
|
|
889
|
+
* import { Data, Exit } from "effect"
|
|
890
|
+
*
|
|
891
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
888
892
|
*
|
|
889
893
|
* const exit = Exit.fail("bad input")
|
|
890
|
-
* const mapped = Exit.mapError(exit, (e) => new
|
|
894
|
+
* const mapped = Exit.mapError(exit, (e) => new ExitError({ input: e }))
|
|
891
895
|
* console.log(Exit.isFailure(mapped)) // true
|
|
892
896
|
* ```
|
|
893
897
|
*
|
|
@@ -911,10 +915,12 @@ export const mapError: {
|
|
|
911
915
|
* **Example** (Mapping over an error)
|
|
912
916
|
*
|
|
913
917
|
* ```ts
|
|
914
|
-
* import { Exit } from "effect"
|
|
918
|
+
* import { Data, Exit } from "effect"
|
|
919
|
+
*
|
|
920
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
915
921
|
*
|
|
916
922
|
* const exit = Exit.fail("bad input")
|
|
917
|
-
* const mapped = Exit.mapError(exit, (e) => new
|
|
923
|
+
* const mapped = Exit.mapError(exit, (e) => new ExitError({ input: e }))
|
|
918
924
|
* console.log(Exit.isFailure(mapped)) // true
|
|
919
925
|
* ```
|
|
920
926
|
*
|
|
@@ -941,12 +947,14 @@ export const mapError: {
|
|
|
941
947
|
* **Example** (Mapping both channels)
|
|
942
948
|
*
|
|
943
949
|
* ```ts
|
|
944
|
-
* import { Exit } from "effect"
|
|
950
|
+
* import { Data, Exit } from "effect"
|
|
951
|
+
*
|
|
952
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
945
953
|
*
|
|
946
954
|
* const exit = Exit.succeed(42)
|
|
947
955
|
* const mapped = Exit.mapBoth(exit, {
|
|
948
956
|
* onSuccess: (x) => String(x),
|
|
949
|
-
* onFailure: (e: string) => new
|
|
957
|
+
* onFailure: (e: string) => new ExitError({ input: e })
|
|
950
958
|
* })
|
|
951
959
|
* console.log(Exit.isSuccess(mapped) && mapped.value) // "42"
|
|
952
960
|
* ```
|
|
@@ -972,12 +980,14 @@ export const mapBoth: {
|
|
|
972
980
|
* **Example** (Mapping both channels)
|
|
973
981
|
*
|
|
974
982
|
* ```ts
|
|
975
|
-
* import { Exit } from "effect"
|
|
983
|
+
* import { Data, Exit } from "effect"
|
|
984
|
+
*
|
|
985
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
976
986
|
*
|
|
977
987
|
* const exit = Exit.succeed(42)
|
|
978
988
|
* const mapped = Exit.mapBoth(exit, {
|
|
979
989
|
* onSuccess: (x) => String(x),
|
|
980
|
-
* onFailure: (e: string) => new
|
|
990
|
+
* onFailure: (e: string) => new ExitError({ input: e })
|
|
981
991
|
* })
|
|
982
992
|
* console.log(Exit.isSuccess(mapped) && mapped.value) // "42"
|
|
983
993
|
* ```
|
|
@@ -1005,12 +1015,14 @@ export const mapBoth: {
|
|
|
1005
1015
|
* **Example** (Mapping both channels)
|
|
1006
1016
|
*
|
|
1007
1017
|
* ```ts
|
|
1008
|
-
* import { Exit } from "effect"
|
|
1018
|
+
* import { Data, Exit } from "effect"
|
|
1019
|
+
*
|
|
1020
|
+
* class ExitError extends Data.TaggedError("ExitError")<{ readonly input: string }> {}
|
|
1009
1021
|
*
|
|
1010
1022
|
* const exit = Exit.succeed(42)
|
|
1011
1023
|
* const mapped = Exit.mapBoth(exit, {
|
|
1012
1024
|
* onSuccess: (x) => String(x),
|
|
1013
|
-
* onFailure: (e: string) => new
|
|
1025
|
+
* onFailure: (e: string) => new ExitError({ input: e })
|
|
1014
1026
|
* })
|
|
1015
1027
|
* console.log(Exit.isSuccess(mapped) && mapped.value) // "42"
|
|
1016
1028
|
* ```
|
package/src/Fiber.ts
CHANGED
|
@@ -128,6 +128,7 @@ export interface Fiber<out A, out E = never> extends Pipeable {
|
|
|
128
128
|
readonly minimumLogLevel: LogLevel
|
|
129
129
|
readonly currentStackFrame?: StackFrame | undefined
|
|
130
130
|
readonly maxOpsBeforeYield: number
|
|
131
|
+
readonly currentPreventYield: boolean
|
|
131
132
|
readonly addObserver: (cb: (exit: Exit<A, E>) => void) => () => void
|
|
132
133
|
readonly interruptUnsafe: (
|
|
133
134
|
fiberId?: number | undefined,
|
|
@@ -338,7 +339,10 @@ export const interruptAs: {
|
|
|
338
339
|
* @since 2.0.0
|
|
339
340
|
* @category interruption
|
|
340
341
|
*/
|
|
341
|
-
(
|
|
342
|
+
(
|
|
343
|
+
fiberId: number | undefined,
|
|
344
|
+
annotations?: ServiceMap.ServiceMap<never> | undefined
|
|
345
|
+
): <A, E>(self: Fiber<A, E>) => Effect<void>
|
|
342
346
|
/**
|
|
343
347
|
* Interrupts a fiber with a specific fiber ID as the interruptor. This allows
|
|
344
348
|
* tracking which fiber initiated the interruption.
|
|
@@ -361,7 +365,11 @@ export const interruptAs: {
|
|
|
361
365
|
* @since 2.0.0
|
|
362
366
|
* @category interruption
|
|
363
367
|
*/
|
|
364
|
-
<A, E>(
|
|
368
|
+
<A, E>(
|
|
369
|
+
self: Fiber<A, E>,
|
|
370
|
+
fiberId: number | undefined,
|
|
371
|
+
annotations?: ServiceMap.ServiceMap<never> | undefined
|
|
372
|
+
): Effect<void>
|
|
365
373
|
} = effect.fiberInterruptAs
|
|
366
374
|
|
|
367
375
|
/**
|
package/src/FileSystem.ts
CHANGED
|
@@ -733,8 +733,7 @@ export const make = (
|
|
|
733
733
|
Effect.as(true),
|
|
734
734
|
Effect.catchTag(
|
|
735
735
|
"PlatformError",
|
|
736
|
-
(e) =>
|
|
737
|
-
e.reason._tag === "SystemError" && e.reason.kind === "NotFound" ? Effect.succeed(false) : Effect.fail(e)
|
|
736
|
+
(e) => e.reason._tag === "NotFound" ? Effect.succeed(false) : Effect.fail(e)
|
|
738
737
|
)
|
|
739
738
|
),
|
|
740
739
|
readFileString: (path, encoding) =>
|
|
@@ -757,16 +756,16 @@ export const make = (
|
|
|
757
756
|
const bytesToRead = options?.bytesToRead !== undefined ? Size(options.bytesToRead) : undefined
|
|
758
757
|
let totalBytesRead = BigInt(0)
|
|
759
758
|
const chunkSize = Size(options?.chunkSize ?? 64 * 1024)
|
|
759
|
+
const readChunk = file.readAlloc(chunkSize)
|
|
760
760
|
return Stream.fromPull(Effect.succeed(
|
|
761
761
|
Effect.flatMap(
|
|
762
762
|
Effect.suspend((): Pull.Pull<Uint8Array | undefined, PlatformError> => {
|
|
763
763
|
if (bytesToRead !== undefined && bytesToRead <= totalBytesRead) {
|
|
764
764
|
return Cause.done()
|
|
765
765
|
}
|
|
766
|
-
|
|
767
|
-
? bytesToRead - totalBytesRead
|
|
768
|
-
:
|
|
769
|
-
return file.readAlloc(toRead)
|
|
766
|
+
return bytesToRead !== undefined && (bytesToRead - totalBytesRead) < chunkSize
|
|
767
|
+
? file.readAlloc(bytesToRead - totalBytesRead)
|
|
768
|
+
: readChunk
|
|
770
769
|
}),
|
|
771
770
|
(buf) => {
|
|
772
771
|
if (!buf) return Cause.done()
|
|
@@ -802,7 +801,7 @@ const notFound = (method: string, path: string) =>
|
|
|
802
801
|
systemError({
|
|
803
802
|
module: "FileSystem",
|
|
804
803
|
method,
|
|
805
|
-
|
|
804
|
+
_tag: "NotFound",
|
|
806
805
|
description: "No such file or directory",
|
|
807
806
|
pathOrDescriptor: path
|
|
808
807
|
})
|
|
@@ -829,9 +828,9 @@ const notFound = (method: string, path: string) =>
|
|
|
829
828
|
* }
|
|
830
829
|
* return Effect.fail(
|
|
831
830
|
* PlatformError.systemError({
|
|
831
|
+
* _tag: "NotFound",
|
|
832
832
|
* module: "FileSystem",
|
|
833
833
|
* method: "readFileString",
|
|
834
|
-
* kind: "NotFound",
|
|
835
834
|
* description: "File not found",
|
|
836
835
|
* pathOrDescriptor: path
|
|
837
836
|
* })
|