effect 4.0.5 → 4.0.7
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/ai-docs/package.json +1 -1
- package/ai-docs/src/06_schedule/10_schedules.ts +5 -4
- package/ai-docs/tsconfig.json +3 -1
- package/dist/Arbitrary.d.ts +10 -2
- package/dist/Arbitrary.d.ts.map +1 -1
- package/dist/Arbitrary.js +2 -1
- package/dist/Arbitrary.js.map +1 -1
- package/dist/Array.d.ts +117 -52
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +41 -20
- package/dist/Array.js.map +1 -1
- package/dist/Bytes.d.ts +79 -0
- package/dist/Bytes.d.ts.map +1 -0
- package/dist/Bytes.js +109 -0
- package/dist/Bytes.js.map +1 -0
- package/dist/Channel.d.ts +181 -13
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +144 -34
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +39 -21
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +26 -17
- package/dist/Chunk.js.map +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +8 -3
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +2 -1
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Cron.d.ts +2 -2
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +6 -3
- package/dist/Cron.js.map +1 -1
- package/dist/Data.d.ts +54 -235
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js.map +1 -1
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +56 -16
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +488 -164
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +204 -38
- package/dist/Effect.js.map +1 -1
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +8 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +2 -1
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +12 -8
- package/dist/Equivalence.js.map +1 -1
- package/dist/Exit.d.ts +27 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -3
- package/dist/Exit.js.map +1 -1
- package/dist/FiberHandle.d.ts +2 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +9 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +2 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +5 -2
- package/dist/FiberMap.js.map +1 -1
- package/dist/FileSystem.d.ts +5 -0
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +3 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +27 -13
- package/dist/Formatter.js.map +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +4 -1
- package/dist/Hash.js.map +1 -1
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js.map +1 -1
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +18 -17
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.js +4 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonSchema.d.ts +9 -3
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +32 -43
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +2 -2
- package/dist/Layer.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +19 -1
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +62 -6
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts +135 -3
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +197 -25
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableList.d.ts +5 -2
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +7 -5
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +7 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Number.js +2 -2
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +2 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +22 -12
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +8 -1
- package/dist/Path.js.map +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +77 -27
- package/dist/Pool.js.map +1 -1
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +17 -13
- package/dist/PubSub.js.map +1 -1
- package/dist/Queue.d.ts +4 -1
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +4 -1
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +1 -1
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +12 -7
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +9 -6
- package/dist/RcMap.js.map +1 -1
- package/dist/Record.d.ts +51 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +17 -0
- package/dist/Record.js.map +1 -1
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +8 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +5 -4
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +5 -4
- package/dist/References.js.map +1 -1
- package/dist/RequestResolver.d.ts +31 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +39 -4
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.js +1 -1
- package/dist/Resource.js.map +1 -1
- package/dist/Runtime.d.ts +3 -3
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +18 -15
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +1 -1
- package/dist/Schedule.js.map +1 -1
- package/dist/Schema.d.ts +408 -340
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +370 -47
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +9 -7
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +38 -25
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +8 -3
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +15 -5
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +4 -4
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +29 -51
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +48 -22
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +75 -11
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +41 -13
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +5 -2
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +10 -3
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +12 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +5 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +10 -7
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +9 -5
- package/dist/ScopedCache.js.map +1 -1
- package/dist/SemVer.d.ts +1196 -0
- package/dist/SemVer.d.ts.map +1 -0
- package/dist/SemVer.js +756 -0
- package/dist/SemVer.js.map +1 -0
- package/dist/SemVerRange.d.ts +559 -0
- package/dist/SemVerRange.d.ts.map +1 -0
- package/dist/SemVerRange.js +551 -0
- package/dist/SemVerRange.js.map +1 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +54 -35
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +13 -4
- package/dist/Sink.js.map +1 -1
- package/dist/Stream.d.ts +235 -8
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +167 -70
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +7 -2
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +11 -6
- package/dist/String.js.map +1 -1
- package/dist/TextDiff.d.ts +399 -0
- package/dist/TextDiff.d.ts.map +1 -0
- package/dist/TextDiff.js +634 -0
- package/dist/TextDiff.js.map +1 -0
- package/dist/Tracer.d.ts +11 -1
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +6 -1
- package/dist/Tracer.js.map +1 -1
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js.map +1 -1
- package/dist/ai/AiError.d.ts +68 -4
- package/dist/ai/AiError.d.ts.map +1 -1
- package/dist/ai/AiError.js +50 -2
- package/dist/ai/AiError.js.map +1 -1
- package/dist/ai/Chat.d.ts +1 -2
- package/dist/ai/Chat.d.ts.map +1 -1
- package/dist/ai/Chat.js +6 -3
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/Decision.d.ts +46 -1
- package/dist/ai/Decision.d.ts.map +1 -1
- package/dist/ai/Decision.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +129 -11
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +182 -94
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/EmbeddingModel.d.ts +10 -0
- package/dist/ai/EmbeddingModel.d.ts.map +1 -1
- package/dist/ai/EmbeddingModel.js +21 -7
- package/dist/ai/EmbeddingModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +9 -0
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpClient.d.ts +289 -0
- package/dist/ai/McpClient.d.ts.map +1 -0
- package/dist/ai/McpClient.js +819 -0
- package/dist/ai/McpClient.js.map +1 -0
- package/dist/ai/McpClientError.d.ts +254 -0
- package/dist/ai/McpClientError.d.ts.map +1 -0
- package/dist/ai/McpClientError.js +260 -0
- package/dist/ai/McpClientError.js.map +1 -0
- package/dist/ai/McpProtocol.d.ts +2 -2
- package/dist/ai/McpProtocol.d.ts.map +1 -1
- package/dist/ai/McpSchema.d.ts +258 -125
- package/dist/ai/McpSchema.d.ts.map +1 -1
- package/dist/ai/McpSchema.js +94 -24
- package/dist/ai/McpSchema.js.map +1 -1
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +46 -37
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Prompt.d.ts +74 -20
- package/dist/ai/Prompt.d.ts.map +1 -1
- package/dist/ai/Prompt.js +61 -1
- package/dist/ai/Prompt.js.map +1 -1
- package/dist/ai/Response.d.ts +160 -3
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js +39 -37
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/Tool.d.ts +36 -4
- package/dist/ai/Tool.d.ts.map +1 -1
- package/dist/ai/Tool.js +5 -2
- package/dist/ai/Tool.js.map +1 -1
- package/dist/ai/Toolkit.d.ts +48 -1
- package/dist/ai/Toolkit.d.ts.map +1 -1
- package/dist/ai/Toolkit.js +73 -13
- package/dist/ai/Toolkit.js.map +1 -1
- package/dist/ai/index.d.ts +10 -0
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +10 -0
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/internal/mcpCore.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js +2 -2
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js +2 -2
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +4 -7
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js +16 -2
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +3 -4
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js +19 -13
- package/dist/ai/internal/mcpSchema/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_03_26.js +3 -2
- package/dist/ai/internal/mcpSchema/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_06_18.js +7 -7
- package/dist/ai/internal/mcpSchema/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2025_11_25.js +8 -8
- package/dist/ai/internal/mcpSchema/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2026_07_28.js +43 -42
- package/dist/ai/internal/mcpSchema/v2026_07_28.js.map +1 -1
- package/dist/cli/Argument.d.ts +15 -0
- package/dist/cli/Argument.d.ts.map +1 -1
- package/dist/cli/Argument.js +5 -0
- package/dist/cli/Argument.js.map +1 -1
- package/dist/cli/CliError.d.ts +120 -2
- package/dist/cli/CliError.d.ts.map +1 -1
- package/dist/cli/CliError.js +106 -5
- package/dist/cli/CliError.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +155 -6
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +62 -6
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts +310 -18
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +164 -33
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +63 -0
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +49 -9
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/Flag.d.ts +130 -0
- package/dist/cli/Flag.d.ts.map +1 -1
- package/dist/cli/Flag.js +61 -0
- package/dist/cli/Flag.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +14 -6
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Param.d.ts +116 -0
- package/dist/cli/Param.d.ts.map +1 -1
- package/dist/cli/Param.js +77 -2
- package/dist/cli/Param.js.map +1 -1
- package/dist/cli/TerminalCapabilities.d.ts +85 -0
- package/dist/cli/TerminalCapabilities.d.ts.map +1 -0
- package/dist/cli/TerminalCapabilities.js +124 -0
- package/dist/cli/TerminalCapabilities.js.map +1 -0
- package/dist/cli/index.d.ts +5 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/internal/command.d.ts +2 -1
- package/dist/cli/internal/command.d.ts.map +1 -1
- package/dist/cli/internal/command.js +5 -2
- package/dist/cli/internal/command.js.map +1 -1
- package/dist/cli/internal/completions/bash.js +77 -30
- package/dist/cli/internal/completions/bash.js.map +1 -1
- package/dist/cli/internal/completions/descriptor.js +9 -1
- package/dist/cli/internal/completions/descriptor.js.map +1 -1
- package/dist/cli/internal/completions/fish.js +10 -8
- package/dist/cli/internal/completions/fish.js.map +1 -1
- package/dist/cli/internal/completions/powershell.js +18 -9
- package/dist/cli/internal/completions/powershell.js.map +1 -1
- package/dist/cli/internal/completions/zsh.js +8 -5
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/formatter.d.ts +2 -0
- package/dist/cli/internal/formatter.d.ts.map +1 -0
- package/dist/cli/internal/formatter.js +15 -0
- package/dist/cli/internal/formatter.js.map +1 -0
- package/dist/cli/internal/lexer.js +24 -10
- package/dist/cli/internal/lexer.js.map +1 -1
- package/dist/cli/internal/parser.js +24 -12
- package/dist/cli/internal/parser.js.map +1 -1
- package/dist/cluster/ClusterCron.d.ts +29 -1
- package/dist/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/cluster/ClusterCron.js +64 -32
- package/dist/cluster/ClusterCron.js.map +1 -1
- package/dist/cluster/ClusterMetrics.d.ts +143 -7
- package/dist/cluster/ClusterMetrics.d.ts.map +1 -1
- package/dist/cluster/ClusterMetrics.js +151 -7
- package/dist/cluster/ClusterMetrics.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +82 -21
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/Entity.d.ts +2 -0
- package/dist/cluster/Entity.d.ts.map +1 -1
- package/dist/cluster/Entity.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +44 -45
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +6 -7
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +54 -15
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts +1 -0
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +155 -52
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/ShardingConfig.d.ts +30 -0
- package/dist/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/cluster/ShardingConfig.js +4 -0
- package/dist/cluster/ShardingConfig.js.map +1 -1
- package/dist/cluster/Snowflake.d.ts.map +1 -1
- package/dist/cluster/Snowflake.js +3 -7
- package/dist/cluster/Snowflake.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +40 -50
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +2 -2
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +97 -43
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +119 -28
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/devtools/DevTools.d.ts +3 -2
- package/dist/devtools/DevTools.d.ts.map +1 -1
- package/dist/devtools/DevTools.js +3 -2
- package/dist/devtools/DevTools.js.map +1 -1
- package/dist/devtools/DevToolsClient.d.ts +11 -0
- package/dist/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/devtools/DevToolsClient.js +33 -4
- package/dist/devtools/DevToolsClient.js.map +1 -1
- package/dist/encoding/Base64.js +36 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +29 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +29 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/Ini.d.ts.map +1 -1
- package/dist/encoding/Ini.js +3 -0
- package/dist/encoding/Ini.js.map +1 -1
- package/dist/encoding/JsonArray.d.ts +270 -0
- package/dist/encoding/JsonArray.d.ts.map +1 -0
- package/dist/encoding/JsonArray.js +691 -0
- package/dist/encoding/JsonArray.js.map +1 -0
- package/dist/encoding/Ndjson.d.ts +43 -4
- package/dist/encoding/Ndjson.d.ts.map +1 -1
- package/dist/encoding/Ndjson.js +169 -18
- package/dist/encoding/Ndjson.js.map +1 -1
- package/dist/encoding/SchemaBinary.d.ts +9 -1
- package/dist/encoding/SchemaBinary.d.ts.map +1 -1
- package/dist/encoding/SchemaBinary.js +12 -19
- package/dist/encoding/SchemaBinary.js.map +1 -1
- package/dist/encoding/Sse.d.ts.map +1 -1
- package/dist/encoding/Sse.js +3 -3
- package/dist/encoding/Sse.js.map +1 -1
- package/dist/encoding/Tar.d.ts +309 -0
- package/dist/encoding/Tar.d.ts.map +1 -0
- package/dist/encoding/Tar.js +1182 -0
- package/dist/encoding/Tar.js.map +1 -0
- package/dist/encoding/Toml.d.ts.map +1 -1
- package/dist/encoding/Toml.js +24 -19
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Xml.d.ts +464 -0
- package/dist/encoding/Xml.d.ts.map +1 -0
- package/dist/encoding/Xml.js +1619 -0
- package/dist/encoding/Xml.js.map +1 -0
- package/dist/encoding/Yaml.d.ts +6 -2
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +97 -34
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/Zip.d.ts +413 -0
- package/dist/encoding/Zip.d.ts.map +1 -0
- package/dist/encoding/Zip.js +1255 -0
- package/dist/encoding/Zip.js.map +1 -0
- package/dist/encoding/index.d.ts +20 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +20 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/EventJournal.d.ts +90 -5
- package/dist/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/eventlog/EventJournal.js +488 -228
- package/dist/eventlog/EventJournal.js.map +1 -1
- package/dist/eventlog/EventLog.d.ts +180 -12
- package/dist/eventlog/EventLog.d.ts.map +1 -1
- package/dist/eventlog/EventLog.js +394 -146
- package/dist/eventlog/EventLog.js.map +1 -1
- package/dist/eventlog/EventLogEncryption.d.ts +36 -30
- package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/eventlog/EventLogEncryption.js +97 -38
- package/dist/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/eventlog/EventLogMessage.d.ts +74 -34
- package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/eventlog/EventLogMessage.js +45 -11
- package/dist/eventlog/EventLogMessage.js.map +1 -1
- package/dist/eventlog/EventLogRemote.d.ts +45 -8
- package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/eventlog/EventLogRemote.js +51 -14
- package/dist/eventlog/EventLogRemote.js.map +1 -1
- package/dist/eventlog/EventLogServer.d.ts +46 -3
- package/dist/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/eventlog/EventLogServer.js +119 -19
- package/dist/eventlog/EventLogServer.js.map +1 -1
- package/dist/eventlog/EventLogServerEncrypted.d.ts +23 -33
- package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
- package/dist/eventlog/EventLogServerEncrypted.js +97 -70
- package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
- package/dist/eventlog/EventLogServerUnencrypted.d.ts +39 -5
- package/dist/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/EventLogServerUnencrypted.js +151 -69
- package/dist/eventlog/EventLogServerUnencrypted.js.map +1 -1
- package/dist/eventlog/EventRow.d.ts +288 -0
- package/dist/eventlog/EventRow.d.ts.map +1 -0
- package/dist/eventlog/EventRow.js +435 -0
- package/dist/eventlog/EventRow.js.map +1 -0
- package/dist/eventlog/SqlEventJournal.d.ts +18 -18
- package/dist/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +417 -169
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +10 -18
- package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerEncrypted.js +179 -69
- package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +23 -3
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +102 -51
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/eventlog/index.d.ts +5 -0
- package/dist/eventlog/index.d.ts.map +1 -1
- package/dist/eventlog/index.js +5 -0
- package/dist/eventlog/index.js.map +1 -1
- package/dist/eventlog/internal/conflicts.d.ts +46 -0
- package/dist/eventlog/internal/conflicts.d.ts.map +1 -0
- package/dist/eventlog/internal/conflicts.js +89 -0
- package/dist/eventlog/internal/conflicts.js.map +1 -0
- package/dist/graphql/GraphQLClientError.d.ts +2 -2
- package/dist/graphql/GraphQLClientError.d.ts.map +1 -1
- package/dist/graphql/GraphQLClientError.js +4 -18
- package/dist/graphql/GraphQLClientError.js.map +1 -1
- package/dist/graphql/GraphQLProtocol.d.ts +12 -9
- package/dist/graphql/GraphQLProtocol.d.ts.map +1 -1
- package/dist/graphql/GraphQLProtocol.js +4 -3
- package/dist/graphql/GraphQLProtocol.js.map +1 -1
- package/dist/graphql/GraphQLResolver.d.ts +2 -0
- package/dist/graphql/GraphQLResolver.d.ts.map +1 -1
- package/dist/graphql/GraphQLResolver.js +74 -32
- package/dist/graphql/GraphQLResolver.js.map +1 -1
- package/dist/http/Cookies.d.ts.map +1 -1
- package/dist/http/Cookies.js +10 -9
- package/dist/http/Cookies.js.map +1 -1
- package/dist/http/FetchHttpClient.d.ts +8 -1
- package/dist/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/http/FetchHttpClient.js +51 -4
- package/dist/http/FetchHttpClient.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +10 -0
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +227 -0
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +261 -0
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +516 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +286 -23
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientError.d.ts +8 -1
- package/dist/http/HttpClientError.d.ts.map +1 -1
- package/dist/http/HttpClientError.js +37 -1
- package/dist/http/HttpClientError.js.map +1 -1
- package/dist/http/HttpClientRequest.d.ts +127 -3
- package/dist/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/http/HttpClientRequest.js +45 -3
- package/dist/http/HttpClientRequest.js.map +1 -1
- package/dist/http/HttpClientResponse.d.ts +53 -0
- package/dist/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/http/HttpClientResponse.js +47 -0
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +6 -2
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +21 -17
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpIncomingMessage.d.ts +2 -1
- package/dist/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/http/HttpIncomingMessage.js +3 -23
- package/dist/http/HttpIncomingMessage.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +119 -2
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +173 -29
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpRouter.d.ts.map +1 -1
- package/dist/http/HttpRouter.js +9 -3
- package/dist/http/HttpRouter.js.map +1 -1
- package/dist/http/HttpServerError.d.ts +5 -2
- package/dist/http/HttpServerError.d.ts.map +1 -1
- package/dist/http/HttpServerError.js +7 -5
- package/dist/http/HttpServerError.js.map +1 -1
- package/dist/http/HttpServerRequest.d.ts +30 -5
- package/dist/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/http/HttpServerRequest.js +109 -20
- package/dist/http/HttpServerRequest.js.map +1 -1
- package/dist/http/HttpServerResponse.d.ts +17 -8
- package/dist/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/http/HttpServerResponse.js +37 -21
- package/dist/http/HttpServerResponse.js.map +1 -1
- package/dist/http/HttpStaticServer.d.ts +0 -12
- package/dist/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.js +65 -24
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/MultipartParser/internal/contentType.d.ts +15 -1
- package/dist/http/MultipartParser/internal/contentType.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/contentType.js +89 -7
- package/dist/http/MultipartParser/internal/contentType.js.map +1 -1
- package/dist/http/MultipartParser/internal/headers.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/headers.js +4 -12
- package/dist/http/MultipartParser/internal/headers.js.map +1 -1
- package/dist/http/MultipartParser/internal/multipart.d.ts.map +1 -1
- package/dist/http/MultipartParser/internal/multipart.js +6 -27
- package/dist/http/MultipartParser/internal/multipart.js.map +1 -1
- package/dist/http/Url.d.ts.map +1 -1
- package/dist/http/Url.js +6 -1
- package/dist/http/Url.js.map +1 -1
- package/dist/http/UrlParams.d.ts +3 -1
- package/dist/http/UrlParams.d.ts.map +1 -1
- package/dist/http/UrlParams.js +4 -2
- package/dist/http/UrlParams.js.map +1 -1
- package/dist/http/internal/compression.js +4 -5
- package/dist/http/internal/compression.js.map +1 -1
- package/dist/http/internal/decompression.js +20 -11
- package/dist/http/internal/decompression.js.map +1 -1
- package/dist/http/internal/httpBody.js +8 -1
- package/dist/http/internal/httpBody.js.map +1 -1
- package/dist/http/internal/lazyStream.d.ts +2 -0
- package/dist/http/internal/lazyStream.d.ts.map +1 -0
- package/dist/http/internal/lazyStream.js +18 -0
- package/dist/http/internal/lazyStream.js.map +1 -0
- package/dist/http/internal/requestState.d.ts +2 -0
- package/dist/http/internal/requestState.d.ts.map +1 -0
- package/dist/http/internal/requestState.js +28 -0
- package/dist/http/internal/requestState.js.map +1 -0
- package/dist/http/internal/urlParams.js +25 -0
- package/dist/http/internal/urlParams.js.map +1 -1
- package/dist/http/internal/webResponse.d.ts +2 -0
- package/dist/http/internal/webResponse.d.ts.map +1 -0
- package/dist/http/internal/webResponse.js +12 -0
- package/dist/http/internal/webResponse.js.map +1 -0
- package/dist/http-api/HttpApi.d.ts +3 -6
- package/dist/http-api/HttpApi.d.ts.map +1 -1
- package/dist/http-api/HttpApi.js +4 -7
- package/dist/http-api/HttpApi.js.map +1 -1
- package/dist/http-api/HttpApiBuilder.d.ts.map +1 -1
- package/dist/http-api/HttpApiBuilder.js +142 -23
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +99 -4
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js +218 -60
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiEndpoint.d.ts +72 -29
- package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/http-api/HttpApiEndpoint.js +140 -14
- package/dist/http-api/HttpApiEndpoint.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +58 -0
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +38 -12
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiScalar.d.ts +2 -1
- package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
- package/dist/http-api/HttpApiScalar.js +6 -3
- package/dist/http-api/HttpApiScalar.js.map +1 -1
- package/dist/http-api/HttpApiSchema.d.ts +242 -13
- package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
- package/dist/http-api/HttpApiSchema.js +149 -5
- package/dist/http-api/HttpApiSchema.js.map +1 -1
- package/dist/http-api/HttpApiSwagger.d.ts +5 -0
- package/dist/http-api/HttpApiSwagger.d.ts.map +1 -1
- package/dist/http-api/HttpApiSwagger.js +14 -4
- package/dist/http-api/HttpApiSwagger.js.map +1 -1
- package/dist/http-api/HttpApiTest.d.ts +13 -2
- package/dist/http-api/HttpApiTest.d.ts.map +1 -1
- package/dist/http-api/HttpApiTest.js +33 -11
- package/dist/http-api/HttpApiTest.js.map +1 -1
- package/dist/http-api/OpenApi.d.ts +17 -3
- package/dist/http-api/OpenApi.d.ts.map +1 -1
- package/dist/http-api/OpenApi.js +81 -47
- package/dist/http-api/OpenApi.js.map +1 -1
- package/dist/http-api/internal/path.js +35 -10
- package/dist/http-api/internal/path.js.map +1 -1
- package/dist/http-api/internal/toCodecHttpProperties.d.ts +2 -0
- package/dist/http-api/internal/toCodecHttpProperties.d.ts.map +1 -0
- package/dist/http-api/internal/toCodecHttpProperties.js +38 -0
- package/dist/http-api/internal/toCodecHttpProperties.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/runner.d.ts.map +1 -1
- package/dist/internal/arbitrary/runner.js +120 -44
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/core.js +3 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +19 -7
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +106 -87
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/equal.js +14 -0
- package/dist/internal/equal.js.map +1 -1
- package/dist/internal/hashMap.js +2 -2
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/hydration.d.ts +2 -0
- package/dist/internal/hydration.d.ts.map +1 -0
- package/dist/internal/hydration.js +15 -0
- package/dist/internal/hydration.js.map +1 -0
- package/dist/internal/inflate.d.ts +2 -0
- package/dist/internal/inflate.d.ts.map +1 -0
- package/dist/internal/inflate.js +680 -0
- package/dist/internal/inflate.js.map +1 -0
- package/dist/internal/jsonSchema.d.ts +2 -0
- package/dist/internal/jsonSchema.d.ts.map +1 -0
- package/dist/internal/jsonSchema.js +28 -0
- package/dist/internal/jsonSchema.js.map +1 -0
- package/dist/internal/matcher.js +1 -1
- package/dist/internal/matcher.js.map +1 -1
- package/dist/internal/record.js +6 -0
- package/dist/internal/record.js.map +1 -1
- package/dist/internal/request.js +20 -7
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schedule.js +17 -22
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/compilerRegistry.js +4 -1
- package/dist/internal/schema/compilerRegistry.js.map +1 -1
- package/dist/internal/schema/content.d.ts +2 -0
- package/dist/internal/schema/content.d.ts.map +1 -0
- package/dist/internal/schema/content.js +13 -0
- package/dist/internal/schema/content.js.map +1 -0
- package/dist/internal/schema/fromJsonSchemaDocument.js +253 -255
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/fromRepresentation.js +2 -1
- package/dist/internal/schema/fromRepresentation.js.map +1 -1
- package/dist/internal/schema/interpreter.js +51 -36
- package/dist/internal/schema/interpreter.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +42 -35
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/schema/toCodeDocument.js +10 -5
- package/dist/internal/schema/toCodeDocument.js.map +1 -1
- package/dist/internal/schema/toCodec.js +99 -17
- package/dist/internal/schema/toCodec.js.map +1 -1
- package/dist/internal/schema/toFormatter.js +5 -5
- package/dist/internal/schema/toFormatter.js.map +1 -1
- package/dist/internal/schema/toJsonSchemaDocument.js +257 -170
- package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/toRepresentation.js +107 -129
- package/dist/internal/schema/toRepresentation.js.map +1 -1
- package/dist/internal/sql.d.ts +2 -0
- package/dist/internal/sql.d.ts.map +1 -0
- package/dist/internal/sql.js +13 -0
- package/dist/internal/sql.js.map +1 -0
- package/dist/internal/trie.js +1 -3
- package/dist/internal/trie.js.map +1 -1
- package/dist/internal/uuid.js +7 -3
- package/dist/internal/uuid.js.map +1 -1
- package/dist/internal/version.js +1 -1
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +2 -8
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -12
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +5 -3
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpProxy.d.ts +154 -0
- package/dist/observability/OtlpProxy.d.ts.map +1 -0
- package/dist/observability/OtlpProxy.js +235 -0
- package/dist/observability/OtlpProxy.js.map +1 -0
- package/dist/observability/OtlpResource.d.ts +3 -1
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +11 -4
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpSerialization.d.ts +5 -0
- package/dist/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/observability/OtlpSerialization.js +14 -3
- package/dist/observability/OtlpSerialization.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +4 -0
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/index.d.ts +5 -0
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +5 -0
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/internal/protobuf.d.ts +0 -9
- package/dist/observability/internal/protobuf.d.ts.map +1 -1
- package/dist/observability/internal/protobuf.js +2 -10
- package/dist/observability/internal/protobuf.js.map +1 -1
- package/dist/persistence/CircuitBreaker.d.ts +897 -0
- package/dist/persistence/CircuitBreaker.d.ts.map +1 -0
- package/dist/persistence/CircuitBreaker.js +1165 -0
- package/dist/persistence/CircuitBreaker.js.map +1 -0
- package/dist/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/persistence/PersistedCache.js +1 -1
- package/dist/persistence/PersistedCache.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +6 -2
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +162 -84
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/persistence/Persistence.d.ts +28 -0
- package/dist/persistence/Persistence.d.ts.map +1 -1
- package/dist/persistence/Persistence.js +36 -8
- package/dist/persistence/Persistence.js.map +1 -1
- package/dist/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/persistence/RateLimiter.js +8 -12
- package/dist/persistence/RateLimiter.js.map +1 -1
- package/dist/persistence/Redis.d.ts +78 -2
- package/dist/persistence/Redis.d.ts.map +1 -1
- package/dist/persistence/Redis.js +62 -7
- package/dist/persistence/Redis.js.map +1 -1
- package/dist/persistence/UserDirectories.d.ts +129 -0
- package/dist/persistence/UserDirectories.d.ts.map +1 -0
- package/dist/persistence/UserDirectories.js +178 -0
- package/dist/persistence/UserDirectories.js.map +1 -0
- package/dist/persistence/index.d.ts +10 -0
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +10 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/process/ChildProcess.d.ts +32 -5
- package/dist/process/ChildProcess.d.ts.map +1 -1
- package/dist/process/ChildProcess.js.map +1 -1
- package/dist/process/ChildProcessSpawner.d.ts +30 -0
- package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/process/ChildProcessSpawner.js +5 -2
- package/dist/process/ChildProcessSpawner.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/reactivity/AsyncResult.js +1 -1
- package/dist/reactivity/AsyncResult.js.map +1 -1
- package/dist/reactivity/Atom.d.ts +69 -30
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +40 -15
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +5 -5
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomHttpApi.js +1 -1
- package/dist/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +2 -2
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js +44 -9
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/reactivity/AtomRpc.d.ts +3 -3
- package/dist/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/reactivity/AtomRpc.js +1 -1
- package/dist/reactivity/AtomRpc.js.map +1 -1
- package/dist/reactivity/Hydration.d.ts.map +1 -1
- package/dist/reactivity/Hydration.js +46 -12
- package/dist/reactivity/Hydration.js.map +1 -1
- package/dist/reactivity/Reactivity.d.ts +71 -7
- package/dist/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/reactivity/Reactivity.js +21 -12
- package/dist/reactivity/Reactivity.js.map +1 -1
- package/dist/rpc/Rpc.d.ts +18 -0
- package/dist/rpc/Rpc.d.ts.map +1 -1
- package/dist/rpc/Rpc.js +20 -0
- package/dist/rpc/Rpc.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +26 -2
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +198 -61
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcSerialization.d.ts +29 -0
- package/dist/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/rpc/RpcSerialization.js +41 -13
- package/dist/rpc/RpcSerialization.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +20 -19
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/RpcTest.d.ts +1 -0
- package/dist/rpc/RpcTest.d.ts.map +1 -1
- package/dist/rpc/RpcTest.js +1 -0
- package/dist/rpc/RpcTest.js.map +1 -1
- package/dist/schema/Model.d.ts +1 -1
- package/dist/schema/VariantSchema.d.ts +22 -3
- package/dist/schema/VariantSchema.d.ts.map +1 -1
- package/dist/schema/VariantSchema.js +32 -18
- package/dist/schema/VariantSchema.js.map +1 -1
- package/dist/socket/Socket.d.ts +23 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +36 -3
- package/dist/socket/Socket.js.map +1 -1
- package/dist/sql/Migrator.d.ts +2 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +21 -6
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +148 -5
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +155 -27
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/SqlResolver.d.ts +13 -0
- package/dist/sql/SqlResolver.d.ts.map +1 -1
- package/dist/sql/SqlResolver.js +27 -4
- package/dist/sql/SqlResolver.js.map +1 -1
- package/dist/sql/Statement.d.ts +10 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +45 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +4 -2
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +7 -1
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +9 -3
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +21 -2
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +18 -4
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +13 -3
- package/src/Arbitrary.ts +10 -2
- package/src/Array.ts +128 -55
- package/src/Bytes.ts +111 -0
- package/src/Channel.ts +308 -452
- package/src/ChannelSchema.ts +1 -49
- package/src/Chunk.ts +55 -61
- package/src/Config.ts +12 -86
- package/src/ConfigProvider.ts +2 -1
- package/src/Cron.ts +6 -3
- package/src/Data.ts +60 -265
- package/src/Duration.ts +66 -16
- package/src/Effect.ts +503 -168
- package/src/Equal.ts +8 -1
- package/src/Equivalence.ts +7 -4
- package/src/Exit.ts +27 -12
- package/src/FiberHandle.ts +10 -9
- package/src/FiberMap.ts +13 -66
- package/src/FileSystem.ts +10 -0
- package/src/Formatter.ts +28 -13
- package/src/Graph.ts +171 -1263
- package/src/Hash.ts +4 -1
- package/src/HashSet.ts +0 -60
- package/src/Iterable.ts +15 -14
- package/src/JsonPatch.ts +4 -0
- package/src/JsonSchema.ts +40 -43
- package/src/Layer.ts +2 -2
- package/src/ManagedRuntime.ts +72 -6
- package/src/Metric.ts +252 -510
- package/src/MutableHashMap.ts +4 -473
- package/src/MutableList.ts +7 -5
- package/src/MutableRef.ts +8 -1
- package/src/Number.ts +2 -2
- package/src/Optic.ts +17 -332
- package/src/PartitionedSemaphore.ts +24 -13
- package/src/Path.ts +9 -1
- package/src/Pool.ts +109 -37
- package/src/PubSub.ts +17 -13
- package/src/Queue.ts +5 -37
- package/src/Random.ts +1 -1
- package/src/RcMap.ts +14 -8
- package/src/Record.ts +51 -0
- package/src/Ref.ts +15 -104
- package/src/References.ts +5 -4
- package/src/RequestResolver.ts +46 -87
- package/src/Resource.ts +1 -1
- package/src/Runtime.ts +19 -18
- package/src/Schedule.ts +3 -95
- package/src/Schema.ts +639 -381
- package/src/SchemaAST.ts +40 -29
- package/src/SchemaGetter.ts +22 -5
- package/src/SchemaIssue.ts +44 -53
- package/src/SchemaParser.ts +51 -18
- package/src/SchemaRepresentation.ts +95 -35
- package/src/SchemaTransformation.ts +10 -3
- package/src/Scope.ts +12 -2
- package/src/ScopedCache.ts +17 -142
- package/src/SemVer.ts +1528 -0
- package/src/SemVerRange.ts +883 -0
- package/src/Semaphore.ts +67 -40
- package/src/Sink.ts +21 -4
- package/src/Stream.ts +367 -1027
- package/src/String.ts +11 -8
- package/src/TextDiff.ts +766 -0
- package/src/Tracer.ts +15 -1
- package/src/TxHashMap.ts +1 -103
- package/src/TxHashSet.ts +48 -753
- package/src/ai/AiError.ts +66 -4
- package/src/ai/Chat.ts +10 -5
- package/src/ai/Decision.ts +49 -1
- package/src/ai/DecisionModel.ts +264 -108
- package/src/ai/EmbeddingModel.ts +25 -13
- package/src/ai/LanguageModel.ts +9 -0
- package/src/ai/McpClient.ts +1211 -0
- package/src/ai/McpClientError.ts +329 -0
- package/src/ai/McpProtocol.ts +2 -2
- package/src/ai/McpSchema.ts +153 -35
- package/src/ai/McpServer.ts +231 -233
- package/src/ai/Prompt.ts +114 -35
- package/src/ai/Response.ts +220 -65
- package/src/ai/Tool.ts +50 -6
- package/src/ai/Toolkit.ts +82 -11
- package/src/ai/index.ts +12 -0
- package/src/ai/internal/mcpCore.ts +13 -14
- package/src/ai/internal/mcpProtocol/v2024_11_05.ts +1 -1
- package/src/ai/internal/mcpProtocol/v2025_03_26.ts +1 -1
- package/src/ai/internal/mcpProtocol/v2025_06_18.ts +3 -3
- package/src/ai/internal/mcpProtocol/v2025_11_25.ts +3 -3
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +12 -14
- package/src/ai/internal/mcpProtocol.ts +22 -2
- package/src/ai/internal/mcpRuntime.ts +3 -4
- package/src/ai/internal/mcpSchema/v2024_11_05.ts +20 -13
- package/src/ai/internal/mcpSchema/v2025_03_26.ts +4 -2
- package/src/ai/internal/mcpSchema/v2025_06_18.ts +7 -7
- package/src/ai/internal/mcpSchema/v2025_11_25.ts +8 -8
- package/src/ai/internal/mcpSchema/v2026_07_28.ts +44 -42
- package/src/cli/Argument.ts +15 -0
- package/src/cli/CliError.ts +136 -4
- package/src/cli/CliOutput.ts +183 -6
- package/src/cli/Command.ts +367 -48
- package/src/cli/Completions.ts +56 -0
- package/src/cli/Flag.ts +132 -0
- package/src/cli/GlobalFlag.ts +5 -6
- package/src/cli/Param.ts +151 -6
- package/src/cli/TerminalCapabilities.ts +159 -0
- package/src/cli/index.ts +6 -0
- package/src/cli/internal/command.ts +8 -3
- package/src/cli/internal/completions/bash.ts +83 -32
- package/src/cli/internal/completions/descriptor.ts +11 -1
- package/src/cli/internal/completions/fish.ts +10 -8
- package/src/cli/internal/completions/powershell.ts +23 -14
- package/src/cli/internal/completions/zsh.ts +8 -5
- package/src/cli/internal/formatter.ts +18 -0
- package/src/cli/internal/lexer.ts +12 -5
- package/src/cli/internal/parser.ts +31 -11
- package/src/cluster/ClusterCron.ts +94 -35
- package/src/cluster/ClusterMetrics.ts +149 -7
- package/src/cluster/ClusterWorkflowEngine.ts +130 -57
- package/src/cluster/Entity.ts +4 -0
- package/src/cluster/MessageStorage.ts +26 -14
- package/src/cluster/Runners.ts +76 -25
- package/src/cluster/Sharding.ts +200 -58
- package/src/cluster/ShardingConfig.ts +20 -0
- package/src/cluster/Snowflake.ts +3 -7
- package/src/cluster/SqlMessageStorage.ts +58 -55
- package/src/cluster/SqlRunnerStorage.ts +120 -51
- package/src/cluster/internal/entityManager.ts +155 -32
- package/src/devtools/DevTools.ts +3 -2
- package/src/devtools/DevToolsClient.ts +29 -10
- package/src/encoding/Base64.ts +38 -0
- package/src/encoding/Base64Url.ts +31 -0
- package/src/encoding/Ini.ts +3 -0
- package/src/encoding/JsonArray.ts +849 -0
- package/src/encoding/Ndjson.ts +211 -20
- package/src/encoding/SchemaBinary.ts +14 -48
- package/src/encoding/Sse.ts +4 -3
- package/src/encoding/Tar.ts +1417 -0
- package/src/encoding/Toml.ts +36 -19
- package/src/encoding/Xml.ts +2037 -0
- package/src/encoding/Yaml.ts +108 -36
- package/src/encoding/Zip.ts +1558 -0
- package/src/encoding/index.ts +24 -0
- package/src/eventlog/EventJournal.ts +611 -227
- package/src/eventlog/EventLog.ts +496 -196
- package/src/eventlog/EventLogEncryption.ts +128 -43
- package/src/eventlog/EventLogMessage.ts +62 -11
- package/src/eventlog/EventLogRemote.ts +77 -21
- package/src/eventlog/EventLogServer.ts +162 -20
- package/src/eventlog/EventLogServerEncrypted.ts +121 -80
- package/src/eventlog/EventLogServerUnencrypted.ts +180 -77
- package/src/eventlog/EventRow.ts +706 -0
- package/src/eventlog/SqlEventJournal.ts +496 -193
- package/src/eventlog/SqlEventLogServerEncrypted.ts +212 -83
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +141 -62
- package/src/eventlog/index.ts +6 -0
- package/src/eventlog/internal/conflicts.ts +119 -0
- package/src/graphql/GraphQLClientError.ts +5 -12
- package/src/graphql/GraphQLProtocol.ts +12 -9
- package/src/graphql/GraphQLResolver.ts +90 -239
- package/src/http/Cookies.ts +10 -11
- package/src/http/FetchHttpClient.ts +56 -6
- package/src/http/FindMyWay/internal/router.ts +11 -0
- package/src/http/Headers.ts +337 -154
- package/src/http/HttpClient.ts +673 -142
- package/src/http/HttpClientError.ts +35 -1
- package/src/http/HttpClientRequest.ts +151 -5
- package/src/http/HttpClientResponse.ts +71 -0
- package/src/http/HttpEffect.ts +25 -33
- package/src/http/HttpIncomingMessage.ts +3 -23
- package/src/http/HttpMiddleware.ts +194 -40
- package/src/http/HttpRouter.ts +10 -3
- package/src/http/HttpServerError.ts +8 -5
- package/src/http/HttpServerRequest.ts +172 -27
- package/src/http/HttpServerResponse.ts +49 -23
- package/src/http/HttpStaticServer.ts +71 -26
- package/src/http/MultipartParser/internal/contentType.ts +109 -8
- package/src/http/MultipartParser/internal/headers.ts +4 -16
- package/src/http/MultipartParser/internal/multipart.ts +10 -32
- package/src/http/Url.ts +6 -1
- package/src/http/UrlParams.ts +6 -1
- package/src/http/internal/compression.ts +4 -5
- package/src/http/internal/decompression.ts +32 -17
- package/src/http/internal/httpBody.ts +10 -2
- package/src/http/internal/lazyStream.ts +25 -0
- package/src/http/internal/requestState.ts +33 -0
- package/src/http/internal/urlParams.ts +29 -0
- package/src/http/internal/webResponse.ts +20 -0
- package/src/http-api/HttpApi.ts +4 -7
- package/src/http-api/HttpApiBuilder.ts +190 -32
- package/src/http-api/HttpApiClient.ts +364 -90
- package/src/http-api/HttpApiEndpoint.ts +248 -46
- package/src/http-api/HttpApiError.ts +55 -0
- package/src/http-api/HttpApiScalar.ts +4 -3
- package/src/http-api/HttpApiSchema.ts +373 -18
- package/src/http-api/HttpApiSwagger.ts +11 -4
- package/src/http-api/HttpApiTest.ts +36 -11
- package/src/http-api/OpenApi.ts +103 -58
- package/src/http-api/internal/path.ts +40 -12
- package/src/http-api/internal/toCodecHttpProperties.ts +56 -0
- package/src/index.ts +24 -0
- package/src/internal/arbitrary/runner.ts +133 -36
- package/src/internal/core.ts +3 -1
- package/src/internal/dateTime.ts +20 -7
- package/src/internal/effect.ts +144 -100
- package/src/internal/equal.ts +17 -0
- package/src/internal/hashMap.ts +2 -2
- package/src/internal/hydration.ts +15 -0
- package/src/internal/inflate.ts +710 -0
- package/src/internal/jsonSchema.ts +27 -0
- package/src/internal/matcher.ts +1 -1
- package/src/internal/record.ts +6 -0
- package/src/internal/request.ts +21 -6
- package/src/internal/schedule.ts +20 -39
- package/src/internal/schema/compilerRegistry.ts +6 -1
- package/src/internal/schema/content.ts +18 -0
- package/src/internal/schema/fromJsonSchemaDocument.ts +458 -351
- package/src/internal/schema/fromRepresentation.ts +2 -1
- package/src/internal/schema/interpreter.ts +58 -45
- package/src/internal/schema/standardSchema.ts +34 -32
- package/src/internal/schema/toCodeDocument.ts +12 -7
- package/src/internal/schema/toCodec.ts +134 -15
- package/src/internal/schema/toFormatter.ts +6 -6
- package/src/internal/schema/toJsonSchemaDocument.ts +246 -194
- package/src/internal/schema/toRepresentation.ts +122 -140
- package/src/internal/sql.ts +14 -0
- package/src/internal/trie.ts +1 -3
- package/src/internal/uuid.ts +15 -10
- package/src/internal/version.ts +1 -1
- package/src/net/NetAddress.ts +2 -9
- package/src/observability/OtlpExporter.ts +5 -12
- package/src/observability/OtlpMetrics.ts +5 -3
- package/src/observability/OtlpProxy.ts +314 -0
- package/src/observability/OtlpResource.ts +16 -6
- package/src/observability/OtlpSerialization.ts +17 -3
- package/src/observability/OtlpTracer.ts +4 -0
- package/src/observability/index.ts +6 -0
- package/src/observability/internal/protobuf.ts +2 -10
- package/src/persistence/CircuitBreaker.ts +1678 -0
- package/src/persistence/PersistedCache.ts +3 -1
- package/src/persistence/PersistedQueue.ts +223 -153
- package/src/persistence/Persistence.ts +64 -30
- package/src/persistence/RateLimiter.ts +18 -21
- package/src/persistence/Redis.ts +129 -8
- package/src/persistence/UserDirectories.ts +273 -0
- package/src/persistence/index.ts +12 -0
- package/src/process/ChildProcess.ts +32 -5
- package/src/process/ChildProcessSpawner.ts +41 -2
- package/src/reactivity/AsyncResult.ts +5 -39
- package/src/reactivity/Atom.ts +134 -166
- package/src/reactivity/AtomHttpApi.ts +10 -16
- package/src/reactivity/AtomRegistry.ts +50 -29
- package/src/reactivity/AtomRpc.ts +6 -22
- package/src/reactivity/Hydration.ts +53 -12
- package/src/reactivity/Reactivity.ts +97 -39
- package/src/rpc/Rpc.ts +21 -0
- package/src/rpc/RpcClient.ts +283 -104
- package/src/rpc/RpcSerialization.ts +53 -14
- package/src/rpc/RpcServer.ts +27 -21
- package/src/rpc/RpcTest.ts +3 -0
- package/src/schema/VariantSchema.ts +86 -22
- package/src/socket/Socket.ts +45 -20
- package/src/sql/Migrator.ts +26 -11
- package/src/sql/SqlClient.ts +273 -29
- package/src/sql/SqlResolver.ts +32 -9
- package/src/sql/Statement.ts +65 -10
- package/src/testing/TestClock.ts +4 -1
- package/src/testing/TestSchema.ts +9 -3
- package/src/workflow/DurableDeferred.ts +23 -6
- package/src/workflow/WorkflowEngine.ts +34 -10
- package/dist/http/internal/preResponseHandler.d.ts +0 -2
- package/dist/http/internal/preResponseHandler.d.ts.map +0 -1
- package/dist/http/internal/preResponseHandler.js +0 -14
- package/dist/http/internal/preResponseHandler.js.map +0 -1
- package/src/http/internal/preResponseHandler.ts +0 -19
package/src/Channel.ts
CHANGED
|
@@ -22,7 +22,7 @@ import type * as Filter from "./Filter.ts"
|
|
|
22
22
|
import type { LazyArg } from "./Function.ts"
|
|
23
23
|
import { constant, constTrue, constVoid, dual, identity as identity_ } from "./Function.ts"
|
|
24
24
|
import * as Count from "./internal/count.ts"
|
|
25
|
-
import { ClockRef, endSpan } from "./internal/effect.ts"
|
|
25
|
+
import { ClockRef, endSpan, findRecoverableError } from "./internal/effect.ts"
|
|
26
26
|
import { addSpanStackTrace } from "./internal/tracer.ts"
|
|
27
27
|
import * as Iterable from "./Iterable.ts"
|
|
28
28
|
import * as Latch from "./Latch.ts"
|
|
@@ -488,7 +488,7 @@ const asyncQueue = <A, E = never, R = never>(
|
|
|
488
488
|
Effect.tap((queue) =>
|
|
489
489
|
Scope.provide(f(queue), scope).pipe(
|
|
490
490
|
Effect.catchCause((cause) => Queue.failCause(queue, cause)),
|
|
491
|
-
Effect.forkIn(scope)
|
|
491
|
+
Effect.forkIn(scope, { startImmediately: true })
|
|
492
492
|
)
|
|
493
493
|
)
|
|
494
494
|
)
|
|
@@ -1753,6 +1753,12 @@ export const fromSchedule = <O, E, R>(
|
|
|
1753
1753
|
/**
|
|
1754
1754
|
* Creates a channel from a lazily supplied Web `ReadableStream`.
|
|
1755
1755
|
*
|
|
1756
|
+
* **Details**
|
|
1757
|
+
*
|
|
1758
|
+
* Read failures are mapped with `onError`. Finalization cancels the reader and
|
|
1759
|
+
* releases its lock, or only releases the lock when `releaseLockOnEnd` is set.
|
|
1760
|
+
* A rejected cancel hook becomes a defect.
|
|
1761
|
+
*
|
|
1756
1762
|
* **Example** (Reading from a Web stream)
|
|
1757
1763
|
*
|
|
1758
1764
|
* ```ts import.meta.vitest
|
|
@@ -1795,6 +1801,7 @@ export const pullIntoWritableStream = <A, IE, E>(options: {
|
|
|
1795
1801
|
readonly writable: WritableStream<A>
|
|
1796
1802
|
readonly onError: (error: unknown) => E
|
|
1797
1803
|
readonly closeOnDone?: boolean | undefined
|
|
1804
|
+
readonly onAbort?: ((cause: Cause.Cause<IE | E>) => void) | undefined
|
|
1798
1805
|
}): Pull.Pull<never, IE | E, unknown> =>
|
|
1799
1806
|
Effect.acquireUseRelease(
|
|
1800
1807
|
Effect.sync(() => options.writable.getWriter()),
|
|
@@ -1825,10 +1832,12 @@ export const pullIntoWritableStream = <A, IE, E>(options: {
|
|
|
1825
1832
|
: loop
|
|
1826
1833
|
return Effect.onError(
|
|
1827
1834
|
withClose,
|
|
1828
|
-
(cause) =>
|
|
1829
|
-
Pull.isDoneCause(cause)
|
|
1830
|
-
|
|
1831
|
-
|
|
1835
|
+
(cause) => {
|
|
1836
|
+
if (Pull.isDoneCause(cause)) return Effect.void
|
|
1837
|
+
const reason = unwrapUpstreamFailure(cause) as Cause.Cause<IE | E>
|
|
1838
|
+
options.onAbort?.(reason)
|
|
1839
|
+
return Effect.promise(() => writer.abort(reason).catch(constVoid))
|
|
1840
|
+
}
|
|
1832
1841
|
)
|
|
1833
1842
|
},
|
|
1834
1843
|
(writer) => Effect.sync(() => writer.releaseLock())
|
|
@@ -1919,7 +1928,12 @@ export const fromTransformStream = <IE, I, O, E>(options: {
|
|
|
1919
1928
|
pull: upstream,
|
|
1920
1929
|
writable: transform.writable,
|
|
1921
1930
|
onError: options.onError,
|
|
1922
|
-
closeOnDone: options.closeOnDone
|
|
1931
|
+
closeOnDone: options.closeOnDone,
|
|
1932
|
+
// Aborting errors the readable, so record the failure first. Otherwise a
|
|
1933
|
+
// pending read reports the abort reason instead.
|
|
1934
|
+
onAbort: (cause) => {
|
|
1935
|
+
exit.current = Exit.failCause(cause)
|
|
1936
|
+
}
|
|
1923
1937
|
}).pipe(
|
|
1924
1938
|
Effect.catchCause((cause) => {
|
|
1925
1939
|
if (!Pull.isDoneCause(cause)) {
|
|
@@ -1970,7 +1984,13 @@ const readableStreamToPullUnsafe = <A, E, E2 = never>(options: {
|
|
|
1970
1984
|
options.scope,
|
|
1971
1985
|
options.releaseLockOnEnd
|
|
1972
1986
|
? Effect.sync(() => reader.releaseLock())
|
|
1973
|
-
: Effect.promise(() =>
|
|
1987
|
+
: Effect.promise(() =>
|
|
1988
|
+
reader.cancel().catch((error) =>
|
|
1989
|
+
// `closed` resolves only when the cancel hook failed. An errored
|
|
1990
|
+
// stream rejects it with an error that was already reported.
|
|
1991
|
+
reader.closed.then(() => Promise.reject(error), constVoid)
|
|
1992
|
+
)
|
|
1993
|
+
).pipe(Effect.ensuring(Effect.sync(() => reader.releaseLock())))
|
|
1974
1994
|
),
|
|
1975
1995
|
pull
|
|
1976
1996
|
)
|
|
@@ -2467,7 +2487,7 @@ const mapEffectConcurrent = <
|
|
|
2467
2487
|
const pull = yield* toTransform(self)(upstream, scope)
|
|
2468
2488
|
const concurrencyN = options.concurrency === "unbounded"
|
|
2469
2489
|
? Number.MAX_SAFE_INTEGER
|
|
2470
|
-
: options.concurrency
|
|
2490
|
+
: Math.min(options.concurrency, Number.MAX_SAFE_INTEGER)
|
|
2471
2491
|
const queue = yield* Queue.bounded<OutElem2, OutErr | EX | Cause.Done<OutDone>>(0)
|
|
2472
2492
|
yield* Scope.addFinalizer(forkedScope, Queue.shutdown(queue))
|
|
2473
2493
|
|
|
@@ -3909,12 +3929,12 @@ export const repeat: {
|
|
|
3909
3929
|
let meta = Schedule.CurrentMetadata.defaultValue()
|
|
3910
3930
|
return repeatLoop(
|
|
3911
3931
|
provideServiceEffect(self, Schedule.CurrentMetadata, Effect.sync(() => meta)),
|
|
3912
|
-
(
|
|
3913
|
-
step(
|
|
3932
|
+
(exit): Pull.Pull<void, OutErr | SE, OutDone, SR> =>
|
|
3933
|
+
Exit.isFailure(exit) ? Effect.failCause(exit.cause) : step(exit.value).pipe(
|
|
3914
3934
|
Effect.map((meta_) => {
|
|
3915
3935
|
meta = meta_
|
|
3916
3936
|
}),
|
|
3917
|
-
Pull.catchDone(() => Cause.done(
|
|
3937
|
+
Pull.catchDone(() => Cause.done(exit.value))
|
|
3918
3938
|
)
|
|
3919
3939
|
)
|
|
3920
3940
|
}),
|
|
@@ -3923,19 +3943,21 @@ export const repeat: {
|
|
|
3923
3943
|
|
|
3924
3944
|
const repeatLoop = <OutElem, OutErr, OutDone, InElem, InErr, InDone, Env, E, OutDone2, R>(
|
|
3925
3945
|
self: Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>,
|
|
3926
|
-
|
|
3927
|
-
): Channel<OutElem,
|
|
3946
|
+
onExit: (exit: Exit.Exit<OutDone, OutErr>, scope: Scope.Scope) => Pull.Pull<void, E, OutDone2, R>
|
|
3947
|
+
): Channel<OutElem, E, OutDone2, InElem, InErr, InDone, Env | R> =>
|
|
3928
3948
|
fromTransform((upstream, scope) =>
|
|
3929
3949
|
Effect.sync(() => {
|
|
3930
|
-
let currentPull: Pull.Pull<OutElem,
|
|
3931
|
-
const makePull = (): Pull.Pull<OutElem,
|
|
3950
|
+
let currentPull: Pull.Pull<OutElem, E, OutDone2, Env | R> | undefined
|
|
3951
|
+
const makePull = (): Pull.Pull<OutElem, E, OutDone2, Env | R> => {
|
|
3932
3952
|
const runScope = Scope.forkUnsafe(scope)
|
|
3933
3953
|
return Effect.flatMap(toTransform(self)(upstream, runScope), (pull) => {
|
|
3934
|
-
currentPull =
|
|
3935
|
-
|
|
3936
|
-
|
|
3954
|
+
currentPull = Effect.catchCause(pull, (cause) => {
|
|
3955
|
+
const exit = Pull.doneExitFromCause(cause) as Exit.Exit<OutDone, OutErr>
|
|
3956
|
+
return Scope.close(runScope, exit).pipe(
|
|
3957
|
+
Effect.flatMap(() => onExit(exit, scope)),
|
|
3937
3958
|
Effect.flatMap(makePull)
|
|
3938
|
-
)
|
|
3959
|
+
)
|
|
3960
|
+
})
|
|
3939
3961
|
return currentPull
|
|
3940
3962
|
})
|
|
3941
3963
|
}
|
|
@@ -3952,7 +3974,8 @@ const repeatLoop = <OutElem, OutErr, OutDone, InElem, InErr, InDone, Env, E, Out
|
|
|
3952
3974
|
*/
|
|
3953
3975
|
export const forever = <OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>(
|
|
3954
3976
|
self: Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>
|
|
3955
|
-
): Channel<OutElem, OutErr, never, InElem, InErr, InDone, Env> =>
|
|
3977
|
+
): Channel<OutElem, OutErr, never, InElem, InErr, InDone, Env> =>
|
|
3978
|
+
repeatLoop(self, (exit) => Exit.isFailure(exit) ? Effect.failCause(exit.cause) : Effect.void)
|
|
3956
3979
|
|
|
3957
3980
|
/**
|
|
3958
3981
|
* Runs a schedule step for each output element while preserving the emitted
|
|
@@ -5679,6 +5702,12 @@ export const catchCause: {
|
|
|
5679
5702
|
*
|
|
5680
5703
|
* Typed failures and interruptions are not caught.
|
|
5681
5704
|
*
|
|
5705
|
+
* **Gotchas**
|
|
5706
|
+
*
|
|
5707
|
+
* `catchDefect` recovers any cause that contains a defect, including causes
|
|
5708
|
+
* that also contain typed errors. Typed error handlers such as `catch` skip
|
|
5709
|
+
* those causes, so defects always take precedence.
|
|
5710
|
+
*
|
|
5682
5711
|
* **Example** (Recovering from a defect)
|
|
5683
5712
|
*
|
|
5684
5713
|
* ```ts import.meta.vitest
|
|
@@ -5703,6 +5732,12 @@ export const catchDefect: {
|
|
|
5703
5732
|
*
|
|
5704
5733
|
* Typed failures and interruptions are not caught.
|
|
5705
5734
|
*
|
|
5735
|
+
* **Gotchas**
|
|
5736
|
+
*
|
|
5737
|
+
* `catchDefect` recovers any cause that contains a defect, including causes
|
|
5738
|
+
* that also contain typed errors. Typed error handlers such as `catch` skip
|
|
5739
|
+
* those causes, so defects always take precedence.
|
|
5740
|
+
*
|
|
5706
5741
|
* **Example** (Recovering from a defect)
|
|
5707
5742
|
*
|
|
5708
5743
|
* ```ts import.meta.vitest
|
|
@@ -5739,6 +5774,12 @@ export const catchDefect: {
|
|
|
5739
5774
|
*
|
|
5740
5775
|
* Typed failures and interruptions are not caught.
|
|
5741
5776
|
*
|
|
5777
|
+
* **Gotchas**
|
|
5778
|
+
*
|
|
5779
|
+
* `catchDefect` recovers any cause that contains a defect, including causes
|
|
5780
|
+
* that also contain typed errors. Typed error handlers such as `catch` skip
|
|
5781
|
+
* those causes, so defects always take precedence.
|
|
5782
|
+
*
|
|
5742
5783
|
* **Example** (Recovering from a defect)
|
|
5743
5784
|
*
|
|
5744
5785
|
* ```ts import.meta.vitest
|
|
@@ -6362,12 +6403,19 @@ const catch_: {
|
|
|
6362
6403
|
InErr & InErr1,
|
|
6363
6404
|
InDone & InDone1,
|
|
6364
6405
|
Env | Env1
|
|
6365
|
-
> => catchCauseFilter(self,
|
|
6406
|
+
> => catchCauseFilter(self, findRecoverableError, (e) => f(e)))
|
|
6366
6407
|
|
|
6367
6408
|
export {
|
|
6368
6409
|
/**
|
|
6369
6410
|
* Recovers from typed channel errors by running a fallback channel.
|
|
6370
6411
|
*
|
|
6412
|
+
* **Gotchas**
|
|
6413
|
+
*
|
|
6414
|
+
* Defects take precedence over typed errors. If the cause also contains a
|
|
6415
|
+
* defect, the handler does not run and the failure is propagated with every
|
|
6416
|
+
* typed error converted to a defect. An interruption alongside a typed error
|
|
6417
|
+
* does not prevent recovery.
|
|
6418
|
+
*
|
|
6371
6419
|
* @stability stable
|
|
6372
6420
|
* @category error handling
|
|
6373
6421
|
* @since 4.0.0
|
|
@@ -6500,6 +6548,12 @@ export const tapError: {
|
|
|
6500
6548
|
* are handled by `orElse` when provided. Without `orElse`, non-matching errors
|
|
6501
6549
|
* are re-failed.
|
|
6502
6550
|
*
|
|
6551
|
+
* **Gotchas**
|
|
6552
|
+
*
|
|
6553
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6554
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6555
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6556
|
+
*
|
|
6503
6557
|
* @see {@link catch_ catch} for recovering from every typed channel error
|
|
6504
6558
|
* @see {@link catchFilter} for selecting typed errors with a `Filter`
|
|
6505
6559
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
@@ -6524,6 +6578,12 @@ export const catchIf: {
|
|
|
6524
6578
|
* are handled by `orElse` when provided. Without `orElse`, non-matching errors
|
|
6525
6579
|
* are re-failed.
|
|
6526
6580
|
*
|
|
6581
|
+
* **Gotchas**
|
|
6582
|
+
*
|
|
6583
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6584
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6585
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6586
|
+
*
|
|
6527
6587
|
* @see {@link catch_ catch} for recovering from every typed channel error
|
|
6528
6588
|
* @see {@link catchFilter} for selecting typed errors with a `Filter`
|
|
6529
6589
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
@@ -6551,7 +6611,7 @@ export const catchIf: {
|
|
|
6551
6611
|
InDone2 = unknown,
|
|
6552
6612
|
Env2 = never
|
|
6553
6613
|
>(
|
|
6554
|
-
refinement: Predicate.Refinement<OutErr
|
|
6614
|
+
refinement: Predicate.Refinement<NoInfer<OutErr>, EB>,
|
|
6555
6615
|
f: (failure: EB) => Channel<OutElem1, OutErr1, OutDone1, InElem1, InErr1, InDone1, Env1>,
|
|
6556
6616
|
orElse?:
|
|
6557
6617
|
| ((
|
|
@@ -6588,6 +6648,12 @@ export const catchIf: {
|
|
|
6588
6648
|
* are handled by `orElse` when provided. Without `orElse`, non-matching errors
|
|
6589
6649
|
* are re-failed.
|
|
6590
6650
|
*
|
|
6651
|
+
* **Gotchas**
|
|
6652
|
+
*
|
|
6653
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6654
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6655
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6656
|
+
*
|
|
6591
6657
|
* @see {@link catch_ catch} for recovering from every typed channel error
|
|
6592
6658
|
* @see {@link catchFilter} for selecting typed errors with a `Filter`
|
|
6593
6659
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
@@ -6651,6 +6717,12 @@ export const catchIf: {
|
|
|
6651
6717
|
* are handled by `orElse` when provided. Without `orElse`, non-matching errors
|
|
6652
6718
|
* are re-failed.
|
|
6653
6719
|
*
|
|
6720
|
+
* **Gotchas**
|
|
6721
|
+
*
|
|
6722
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6723
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6724
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6725
|
+
*
|
|
6654
6726
|
* @see {@link catch_ catch} for recovering from every typed channel error
|
|
6655
6727
|
* @see {@link catchFilter} for selecting typed errors with a `Filter`
|
|
6656
6728
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
@@ -6685,7 +6757,7 @@ export const catchIf: {
|
|
|
6685
6757
|
Env2 = never
|
|
6686
6758
|
>(
|
|
6687
6759
|
self: Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>,
|
|
6688
|
-
refinement: Predicate.Refinement<OutErr
|
|
6760
|
+
refinement: Predicate.Refinement<NoInfer<OutErr>, EB>,
|
|
6689
6761
|
f: (failure: EB) => Channel<OutElem1, OutErr1, OutDone1, InElem1, InErr1, InDone1, Env1>,
|
|
6690
6762
|
orElse?:
|
|
6691
6763
|
| ((
|
|
@@ -6715,6 +6787,12 @@ export const catchIf: {
|
|
|
6715
6787
|
* are handled by `orElse` when provided. Without `orElse`, non-matching errors
|
|
6716
6788
|
* are re-failed.
|
|
6717
6789
|
*
|
|
6790
|
+
* **Gotchas**
|
|
6791
|
+
*
|
|
6792
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6793
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6794
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6795
|
+
*
|
|
6718
6796
|
* @see {@link catch_ catch} for recovering from every typed channel error
|
|
6719
6797
|
* @see {@link catchFilter} for selecting typed errors with a `Filter`
|
|
6720
6798
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
@@ -6837,6 +6915,12 @@ export const catchIf: {
|
|
|
6837
6915
|
* filter results are handled by `orElse` when provided. Without `orElse`,
|
|
6838
6916
|
* failed filter results are re-failed.
|
|
6839
6917
|
*
|
|
6918
|
+
* **Gotchas**
|
|
6919
|
+
*
|
|
6920
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6921
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6922
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6923
|
+
*
|
|
6840
6924
|
* @see {@link catchIf} for selecting typed errors with a predicate
|
|
6841
6925
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
6842
6926
|
* @see {@link catchCauseFilter} for selecting full causes with a `Filter`
|
|
@@ -6860,6 +6944,12 @@ export const catchFilter: {
|
|
|
6860
6944
|
* filter results are handled by `orElse` when provided. Without `orElse`,
|
|
6861
6945
|
* failed filter results are re-failed.
|
|
6862
6946
|
*
|
|
6947
|
+
* **Gotchas**
|
|
6948
|
+
*
|
|
6949
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
6950
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
6951
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
6952
|
+
*
|
|
6863
6953
|
* @see {@link catchIf} for selecting typed errors with a predicate
|
|
6864
6954
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
6865
6955
|
* @see {@link catchCauseFilter} for selecting full causes with a `Filter`
|
|
@@ -6924,6 +7014,12 @@ export const catchFilter: {
|
|
|
6924
7014
|
* filter results are handled by `orElse` when provided. Without `orElse`,
|
|
6925
7015
|
* failed filter results are re-failed.
|
|
6926
7016
|
*
|
|
7017
|
+
* **Gotchas**
|
|
7018
|
+
*
|
|
7019
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7020
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7021
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7022
|
+
*
|
|
6927
7023
|
* @see {@link catchIf} for selecting typed errors with a predicate
|
|
6928
7024
|
* @see {@link catchTag} for selecting tagged typed errors
|
|
6929
7025
|
* @see {@link catchCauseFilter} for selecting full causes with a `Filter`
|
|
@@ -7045,6 +7141,12 @@ export const catchFilter: {
|
|
|
7045
7141
|
* errors are handled by `orElse` when provided. Without `orElse`,
|
|
7046
7142
|
* non-matching errors are re-failed.
|
|
7047
7143
|
*
|
|
7144
|
+
* **Gotchas**
|
|
7145
|
+
*
|
|
7146
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7147
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7148
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7149
|
+
*
|
|
7048
7150
|
* @stability stable
|
|
7049
7151
|
* @category error handling
|
|
7050
7152
|
* @since 4.0.0
|
|
@@ -7059,6 +7161,12 @@ export const catchTag: {
|
|
|
7059
7161
|
* errors are handled by `orElse` when provided. Without `orElse`,
|
|
7060
7162
|
* non-matching errors are re-failed.
|
|
7061
7163
|
*
|
|
7164
|
+
* **Gotchas**
|
|
7165
|
+
*
|
|
7166
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7167
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7168
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7169
|
+
*
|
|
7062
7170
|
* @stability stable
|
|
7063
7171
|
* @category error handling
|
|
7064
7172
|
* @since 4.0.0
|
|
@@ -7119,6 +7227,12 @@ export const catchTag: {
|
|
|
7119
7227
|
* errors are handled by `orElse` when provided. Without `orElse`,
|
|
7120
7228
|
* non-matching errors are re-failed.
|
|
7121
7229
|
*
|
|
7230
|
+
* **Gotchas**
|
|
7231
|
+
*
|
|
7232
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7233
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7234
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7235
|
+
*
|
|
7122
7236
|
* @stability stable
|
|
7123
7237
|
* @category error handling
|
|
7124
7238
|
* @since 4.0.0
|
|
@@ -7222,6 +7336,12 @@ export const catchTag: {
|
|
|
7222
7336
|
/**
|
|
7223
7337
|
* Catches a specific reason within a tagged error.
|
|
7224
7338
|
*
|
|
7339
|
+
* **Gotchas**
|
|
7340
|
+
*
|
|
7341
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7342
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7343
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7344
|
+
*
|
|
7225
7345
|
* **Example** (Recovering from nested reasons)
|
|
7226
7346
|
*
|
|
7227
7347
|
* ```ts import.meta.vitest
|
|
@@ -7258,6 +7378,12 @@ export const catchReason: {
|
|
|
7258
7378
|
/**
|
|
7259
7379
|
* Catches a specific reason within a tagged error.
|
|
7260
7380
|
*
|
|
7381
|
+
* **Gotchas**
|
|
7382
|
+
*
|
|
7383
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7384
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7385
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7386
|
+
*
|
|
7261
7387
|
* **Example** (Recovering from nested reasons)
|
|
7262
7388
|
*
|
|
7263
7389
|
* ```ts import.meta.vitest
|
|
@@ -7345,6 +7471,12 @@ export const catchReason: {
|
|
|
7345
7471
|
/**
|
|
7346
7472
|
* Catches a specific reason within a tagged error.
|
|
7347
7473
|
*
|
|
7474
|
+
* **Gotchas**
|
|
7475
|
+
*
|
|
7476
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7477
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7478
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7479
|
+
*
|
|
7348
7480
|
* **Example** (Recovering from nested reasons)
|
|
7349
7481
|
*
|
|
7350
7482
|
* ```ts import.meta.vitest
|
|
@@ -7502,6 +7634,12 @@ export const catchReason: {
|
|
|
7502
7634
|
/**
|
|
7503
7635
|
* Catches multiple reasons within a tagged error using an object of handlers.
|
|
7504
7636
|
*
|
|
7637
|
+
* **Gotchas**
|
|
7638
|
+
*
|
|
7639
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7640
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7641
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7642
|
+
*
|
|
7505
7643
|
* @stability stable
|
|
7506
7644
|
* @category error handling
|
|
7507
7645
|
* @since 4.0.0
|
|
@@ -7510,6 +7648,12 @@ export const catchReasons: {
|
|
|
7510
7648
|
/**
|
|
7511
7649
|
* Catches multiple reasons within a tagged error using an object of handlers.
|
|
7512
7650
|
*
|
|
7651
|
+
* **Gotchas**
|
|
7652
|
+
*
|
|
7653
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7654
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7655
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7656
|
+
*
|
|
7513
7657
|
* @stability stable
|
|
7514
7658
|
* @category error handling
|
|
7515
7659
|
* @since 4.0.0
|
|
@@ -7589,6 +7733,12 @@ export const catchReasons: {
|
|
|
7589
7733
|
/**
|
|
7590
7734
|
* Catches multiple reasons within a tagged error using an object of handlers.
|
|
7591
7735
|
*
|
|
7736
|
+
* **Gotchas**
|
|
7737
|
+
*
|
|
7738
|
+
* If the cause contains a defect, the handler is skipped and every typed error
|
|
7739
|
+
* is converted to a defect, preserving reason order and interrupts. An
|
|
7740
|
+
* interruption alongside a typed error does not prevent recovery.
|
|
7741
|
+
*
|
|
7592
7742
|
* @stability stable
|
|
7593
7743
|
* @category error handling
|
|
7594
7744
|
* @since 4.0.0
|
|
@@ -7848,9 +7998,12 @@ export const unwrapReason: {
|
|
|
7848
7998
|
) as any)
|
|
7849
7999
|
|
|
7850
8000
|
/**
|
|
7851
|
-
*
|
|
7852
|
-
*
|
|
7853
|
-
*
|
|
8001
|
+
* Transforms the typed errors of a channel using the specified function.
|
|
8002
|
+
*
|
|
8003
|
+
* **Details**
|
|
8004
|
+
*
|
|
8005
|
+
* Maps every typed error in the cause, preserving defects, interrupts and
|
|
8006
|
+
* reason order. Unlike typed recovery, mapping does not convert errors to defects.
|
|
7854
8007
|
*
|
|
7855
8008
|
* @stability stable
|
|
7856
8009
|
* @category error handling
|
|
@@ -7858,9 +8011,12 @@ export const unwrapReason: {
|
|
|
7858
8011
|
*/
|
|
7859
8012
|
export const mapError: {
|
|
7860
8013
|
/**
|
|
7861
|
-
*
|
|
7862
|
-
*
|
|
7863
|
-
*
|
|
8014
|
+
* Transforms the typed errors of a channel using the specified function.
|
|
8015
|
+
*
|
|
8016
|
+
* **Details**
|
|
8017
|
+
*
|
|
8018
|
+
* Maps every typed error in the cause, preserving defects, interrupts and
|
|
8019
|
+
* reason order. Unlike typed recovery, mapping does not convert errors to defects.
|
|
7864
8020
|
*
|
|
7865
8021
|
* @stability stable
|
|
7866
8022
|
* @category error handling
|
|
@@ -7870,9 +8026,12 @@ export const mapError: {
|
|
|
7870
8026
|
self: Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>
|
|
7871
8027
|
) => Channel<OutElem, OutErr2, OutDone, InElem, InErr, InDone, Env>
|
|
7872
8028
|
/**
|
|
7873
|
-
*
|
|
7874
|
-
*
|
|
7875
|
-
*
|
|
8029
|
+
* Transforms the typed errors of a channel using the specified function.
|
|
8030
|
+
*
|
|
8031
|
+
* **Details**
|
|
8032
|
+
*
|
|
8033
|
+
* Maps every typed error in the cause, preserving defects, interrupts and
|
|
8034
|
+
* reason order. Unlike typed recovery, mapping does not convert errors to defects.
|
|
7876
8035
|
*
|
|
7877
8036
|
* @stability stable
|
|
7878
8037
|
* @category error handling
|
|
@@ -7885,7 +8044,11 @@ export const mapError: {
|
|
|
7885
8044
|
} = dual(2, <OutElem, OutErr, OutDone, InElem, InErr, InDone, Env, OutErr2>(
|
|
7886
8045
|
self: Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env>,
|
|
7887
8046
|
f: (err: OutErr) => OutErr2
|
|
7888
|
-
): Channel<OutElem, OutErr2, OutDone, InElem, InErr, InDone, Env> =>
|
|
8047
|
+
): Channel<OutElem, OutErr2, OutDone, InElem, InErr, InDone, Env> =>
|
|
8048
|
+
transformPull(
|
|
8049
|
+
self,
|
|
8050
|
+
(pull) => Effect.succeed(Effect.mapError(pull, (err) => Cause.isDone(err) ? err : f(err)))
|
|
8051
|
+
))
|
|
7889
8052
|
|
|
7890
8053
|
/**
|
|
7891
8054
|
* Converts all errors in the channel to defects (unrecoverable failures).
|
|
@@ -7933,6 +8096,13 @@ export const orDie = <
|
|
|
7933
8096
|
*
|
|
7934
8097
|
* Use the `log` option to emit the full {@link Cause} when the channel fails.
|
|
7935
8098
|
*
|
|
8099
|
+
* **Gotchas**
|
|
8100
|
+
*
|
|
8101
|
+
* Defects take precedence over typed errors. If the cause also contains a
|
|
8102
|
+
* defect, the failure is not ignored and is propagated with every typed error
|
|
8103
|
+
* converted to a defect. An interruption alongside a typed error does not
|
|
8104
|
+
* prevent the error from being ignored.
|
|
8105
|
+
*
|
|
7936
8106
|
* @stability stable
|
|
7937
8107
|
* @category error handling
|
|
7938
8108
|
* @since 4.0.0
|
|
@@ -8032,6 +8202,12 @@ export const ignoreCause: <
|
|
|
8032
8202
|
* Returns a new channel that retries this channel according to the specified
|
|
8033
8203
|
* schedule whenever it fails.
|
|
8034
8204
|
*
|
|
8205
|
+
* **Gotchas**
|
|
8206
|
+
*
|
|
8207
|
+
* Defects take precedence over typed errors. A failure whose cause contains a
|
|
8208
|
+
* defect is not retried and is propagated with every typed error converted to a
|
|
8209
|
+
* defect. A typed error alongside an interruption is retried.
|
|
8210
|
+
*
|
|
8035
8211
|
* @stability stable
|
|
8036
8212
|
* @category error handling
|
|
8037
8213
|
* @since 4.0.0
|
|
@@ -8041,6 +8217,12 @@ export const retry: {
|
|
|
8041
8217
|
* Returns a new channel that retries this channel according to the specified
|
|
8042
8218
|
* schedule whenever it fails.
|
|
8043
8219
|
*
|
|
8220
|
+
* **Gotchas**
|
|
8221
|
+
*
|
|
8222
|
+
* Defects take precedence over typed errors. A failure whose cause contains a
|
|
8223
|
+
* defect is not retried and is propagated with every typed error converted to a
|
|
8224
|
+
* defect. A typed error alongside an interruption is retried.
|
|
8225
|
+
*
|
|
8044
8226
|
* @stability stable
|
|
8045
8227
|
* @category error handling
|
|
8046
8228
|
* @since 4.0.0
|
|
@@ -8060,6 +8242,12 @@ export const retry: {
|
|
|
8060
8242
|
* Returns a new channel that retries this channel according to the specified
|
|
8061
8243
|
* schedule whenever it fails.
|
|
8062
8244
|
*
|
|
8245
|
+
* **Gotchas**
|
|
8246
|
+
*
|
|
8247
|
+
* Defects take precedence over typed errors. A failure whose cause contains a
|
|
8248
|
+
* defect is not retried and is propagated with every typed error converted to a
|
|
8249
|
+
* defect. A typed error alongside an interruption is retried.
|
|
8250
|
+
*
|
|
8063
8251
|
* @stability stable
|
|
8064
8252
|
* @category error handling
|
|
8065
8253
|
* @since 4.0.0
|
|
@@ -8091,29 +8279,20 @@ export const retry: {
|
|
|
8091
8279
|
return Effect.void
|
|
8092
8280
|
})
|
|
8093
8281
|
const resolvedSchedule = typeof schedule === "function" ? schedule(identity_) : schedule
|
|
8094
|
-
|
|
8095
|
-
|
|
8096
|
-
|
|
8097
|
-
|
|
8098
|
-
|
|
8099
|
-
|
|
8100
|
-
|
|
8101
|
-
|
|
8102
|
-
|
|
8103
|
-
|
|
8104
|
-
|
|
8105
|
-
|
|
8106
|
-
if (!step) {
|
|
8107
|
-
step = yield* Schedule.toStepWithMetadata(resolvedSchedule)
|
|
8108
|
-
}
|
|
8109
|
-
meta = yield* step(error)
|
|
8110
|
-
return loop
|
|
8111
|
-
},
|
|
8112
|
-
(effect, error) => Pull.catchDone(effect, () => Effect.succeed(fail(error))),
|
|
8113
|
-
unwrap
|
|
8282
|
+
return repeatLoop(withReset, (exit, scope) => {
|
|
8283
|
+
if (Exit.isSuccess(exit)) return Cause.done(exit.value)
|
|
8284
|
+
const error = findRecoverableError(exit.cause)
|
|
8285
|
+
if (Result.isFailure(error)) return Effect.failCause(error.failure)
|
|
8286
|
+
return Effect.gen(function*() {
|
|
8287
|
+
if (!step) {
|
|
8288
|
+
step = yield* Schedule.toStepWithMetadata(resolvedSchedule)
|
|
8289
|
+
}
|
|
8290
|
+
meta = yield* step(error.success)
|
|
8291
|
+
}).pipe(
|
|
8292
|
+
Pull.catchDone(() => Effect.fail(error.success)),
|
|
8293
|
+
Scope.provide(scope)
|
|
8114
8294
|
)
|
|
8115
|
-
)
|
|
8116
|
-
return loop
|
|
8295
|
+
})
|
|
8117
8296
|
}))
|
|
8118
8297
|
|
|
8119
8298
|
/**
|
|
@@ -8507,83 +8686,9 @@ export const mergeAll: {
|
|
|
8507
8686
|
: Math.max(1, concurrency)
|
|
8508
8687
|
const semaphore = switch_ ? undefined : Semaphore.makeUnsafe(concurrencyN)
|
|
8509
8688
|
const doneLatch = yield* Latch.make(true)
|
|
8510
|
-
const fibers = new
|
|
8511
|
-
|
|
8512
|
-
const queue = yield* Queue.bounded
|
|
8513
|
-
* Merges multiple channels with specified concurrency and buffering options.
|
|
8514
|
-
*
|
|
8515
|
-
* **When to use**
|
|
8516
|
-
*
|
|
8517
|
-
* Use when channel outputs are themselves channels and multiple inner channels
|
|
8518
|
-
* should run with configured concurrency and buffering.
|
|
8519
|
-
*
|
|
8520
|
-
* **Example** (Merging nested channels)
|
|
8521
|
-
*
|
|
8522
|
-
* ```ts import.meta.vitest
|
|
8523
|
-
* import { Channel, Data, Effect } from "effect"
|
|
8524
|
-
*
|
|
8525
|
-
* class MergeAllError extends Data.TaggedError("MergeAllError")<{
|
|
8526
|
-
* readonly reason: string
|
|
8527
|
-
* }> {}
|
|
8528
|
-
*
|
|
8529
|
-
* // Create channels that output other channels
|
|
8530
|
-
* const nestedChannels = Channel.fromIterable([
|
|
8531
|
-
* Channel.fromIterable([1, 2]),
|
|
8532
|
-
* Channel.fromIterable([3, 4]),
|
|
8533
|
-
* Channel.fromIterable([5, 6])
|
|
8534
|
-
* ])
|
|
8535
|
-
*
|
|
8536
|
-
* // Merge all channels with bounded concurrency
|
|
8537
|
-
* const mergedChannel = Channel.mergeAll({
|
|
8538
|
-
* concurrency: 1,
|
|
8539
|
-
* bufferSize: 16
|
|
8540
|
-
* })(nestedChannels)
|
|
8541
|
-
*
|
|
8542
|
-
* await Effect.runPromise(Channel.runCollect(mergedChannel)) // => [1, 2, 3, 4, 5, 6]
|
|
8543
|
-
* ```
|
|
8544
|
-
*
|
|
8545
|
-
* @stability stable
|
|
8546
|
-
* @category combining
|
|
8547
|
-
* @since 2.0.0
|
|
8548
|
-
*/
|
|
8549
|
-
OutElem, /**
|
|
8550
|
-
* Merges multiple channels with specified concurrency and buffering options.
|
|
8551
|
-
*
|
|
8552
|
-
* **When to use**
|
|
8553
|
-
*
|
|
8554
|
-
* Use when channel outputs are themselves channels and multiple inner channels
|
|
8555
|
-
* should run with configured concurrency and buffering.
|
|
8556
|
-
*
|
|
8557
|
-
* **Example** (Merging nested channels)
|
|
8558
|
-
*
|
|
8559
|
-
* ```ts import.meta.vitest
|
|
8560
|
-
* import { Channel, Data, Effect } from "effect"
|
|
8561
|
-
*
|
|
8562
|
-
* class MergeAllError extends Data.TaggedError("MergeAllError")<{
|
|
8563
|
-
* readonly reason: string
|
|
8564
|
-
* }> {}
|
|
8565
|
-
*
|
|
8566
|
-
* // Create channels that output other channels
|
|
8567
|
-
* const nestedChannels = Channel.fromIterable([
|
|
8568
|
-
* Channel.fromIterable([1, 2]),
|
|
8569
|
-
* Channel.fromIterable([3, 4]),
|
|
8570
|
-
* Channel.fromIterable([5, 6])
|
|
8571
|
-
* ])
|
|
8572
|
-
*
|
|
8573
|
-
* // Merge all channels with bounded concurrency
|
|
8574
|
-
* const mergedChannel = Channel.mergeAll({
|
|
8575
|
-
* concurrency: 1,
|
|
8576
|
-
* bufferSize: 16
|
|
8577
|
-
* })(nestedChannels)
|
|
8578
|
-
*
|
|
8579
|
-
* await Effect.runPromise(Channel.runCollect(mergedChannel)) // => [1, 2, 3, 4, 5, 6]
|
|
8580
|
-
* ```
|
|
8581
|
-
*
|
|
8582
|
-
* @stability stable
|
|
8583
|
-
* @category combining
|
|
8584
|
-
* @since 2.0.0
|
|
8585
|
-
*/
|
|
8586
|
-
OutErr | OutErr1 | Cause.Done<OutDone>>(
|
|
8689
|
+
const fibers = new Map<Fiber.Fiber<any, any>, Scope.Closeable>()
|
|
8690
|
+
|
|
8691
|
+
const queue = yield* Queue.bounded<OutElem, OutErr | OutErr1 | Cause.Done<OutDone>>(
|
|
8587
8692
|
bufferSize
|
|
8588
8693
|
)
|
|
8589
8694
|
yield* Scope.addFinalizer(forkedScope, Queue.shutdown(queue))
|
|
@@ -8611,10 +8716,14 @@ export const mergeAll: {
|
|
|
8611
8716
|
const childPull = yield* toTransform(channel)(upstream, childScope)
|
|
8612
8717
|
|
|
8613
8718
|
while (fibers.size >= concurrencyN) {
|
|
8614
|
-
const fiber = Iterable.headUnsafe(fibers)
|
|
8719
|
+
const [fiber, fiberScope] = Iterable.headUnsafe(fibers)
|
|
8615
8720
|
fibers.delete(fiber)
|
|
8616
8721
|
if (fibers.size === 0) yield* doneLatch.open
|
|
8617
8722
|
yield* Fiber.interrupt(fiber)
|
|
8723
|
+
// A worker interrupted before it starts never closes its own
|
|
8724
|
+
// scope. Finalizer failures of replaced workers are discarded
|
|
8725
|
+
// either way.
|
|
8726
|
+
yield* Effect.ignoreCause(Scope.close(fiberScope, Exit.interrupt()))
|
|
8618
8727
|
}
|
|
8619
8728
|
|
|
8620
8729
|
const fiber = yield* childPull.pipe(
|
|
@@ -8638,7 +8747,7 @@ export const mergeAll: {
|
|
|
8638
8747
|
)
|
|
8639
8748
|
|
|
8640
8749
|
doneLatch.closeUnsafe()
|
|
8641
|
-
fibers.
|
|
8750
|
+
fibers.set(fiber, childScope)
|
|
8642
8751
|
}
|
|
8643
8752
|
}).pipe(
|
|
8644
8753
|
Effect.catchCause((cause) => {
|
|
@@ -8825,55 +8934,7 @@ export const merge: {
|
|
|
8825
8934
|
> =>
|
|
8826
8935
|
fromTransformBracket(Effect.fnUntraced(function*(upstream, _scope, forkedScope) {
|
|
8827
8936
|
const strategy = options?.haltStrategy ?? "both"
|
|
8828
|
-
const queue = yield* Queue.bounded
|
|
8829
|
-
* Returns a new channel, which is the merge of this channel and the specified
|
|
8830
|
-
* channel.
|
|
8831
|
-
*
|
|
8832
|
-
* **Example** (Merging channels)
|
|
8833
|
-
*
|
|
8834
|
-
* ```ts import.meta.vitest
|
|
8835
|
-
* import { Channel, Effect } from "effect"
|
|
8836
|
-
*
|
|
8837
|
-
* // Create two channels
|
|
8838
|
-
* const leftChannel = Channel.fromIterable([1, 2, 3])
|
|
8839
|
-
* const rightChannel = Channel.fromIterable(["a", "b", "c"])
|
|
8840
|
-
*
|
|
8841
|
-
* // The default "both" strategy waits for both channels to complete
|
|
8842
|
-
* const mergedChannel = Channel.merge(leftChannel, rightChannel)
|
|
8843
|
-
*
|
|
8844
|
-
* const values = await Effect.runPromise(Channel.runCollect(mergedChannel))
|
|
8845
|
-
* values.map(String).sort() // => ["1", "2", "3", "a", "b", "c"]
|
|
8846
|
-
* ```
|
|
8847
|
-
*
|
|
8848
|
-
* @stability stable
|
|
8849
|
-
* @category combining
|
|
8850
|
-
* @since 4.0.0
|
|
8851
|
-
*/
|
|
8852
|
-
OutElem | OutElem1, /**
|
|
8853
|
-
* Returns a new channel, which is the merge of this channel and the specified
|
|
8854
|
-
* channel.
|
|
8855
|
-
*
|
|
8856
|
-
* **Example** (Merging channels)
|
|
8857
|
-
*
|
|
8858
|
-
* ```ts import.meta.vitest
|
|
8859
|
-
* import { Channel, Effect } from "effect"
|
|
8860
|
-
*
|
|
8861
|
-
* // Create two channels
|
|
8862
|
-
* const leftChannel = Channel.fromIterable([1, 2, 3])
|
|
8863
|
-
* const rightChannel = Channel.fromIterable(["a", "b", "c"])
|
|
8864
|
-
*
|
|
8865
|
-
* // The default "both" strategy waits for both channels to complete
|
|
8866
|
-
* const mergedChannel = Channel.merge(leftChannel, rightChannel)
|
|
8867
|
-
*
|
|
8868
|
-
* const values = await Effect.runPromise(Channel.runCollect(mergedChannel))
|
|
8869
|
-
* values.map(String).sort() // => ["1", "2", "3", "a", "b", "c"]
|
|
8870
|
-
* ```
|
|
8871
|
-
*
|
|
8872
|
-
* @stability stable
|
|
8873
|
-
* @category combining
|
|
8874
|
-
* @since 4.0.0
|
|
8875
|
-
*/
|
|
8876
|
-
OutErr | OutErr1 | Cause.Done<OutDone | OutDone1>>(0)
|
|
8937
|
+
const queue = yield* Queue.bounded<OutElem | OutElem1, OutErr | OutErr1 | Cause.Done<OutDone | OutDone1>>(0)
|
|
8877
8938
|
yield* Scope.addFinalizer(forkedScope, Queue.shutdown(queue))
|
|
8878
8939
|
let done = 0
|
|
8879
8940
|
function onExit(
|
|
@@ -9136,8 +9197,9 @@ export const splitLines = <Err, Done>(): Channel<
|
|
|
9136
9197
|
* **Details**
|
|
9137
9198
|
*
|
|
9138
9199
|
* Input chunks are decoded with streaming enabled so multi-byte characters may
|
|
9139
|
-
* span `Uint8Array` boundaries.
|
|
9140
|
-
*
|
|
9200
|
+
* span `Uint8Array` boundaries. On normal completion, incomplete trailing
|
|
9201
|
+
* characters become U+FFFD or, with `fatal: true`, a defect. The optional
|
|
9202
|
+
* `encoding` and `options` are passed to `TextDecoder`.
|
|
9141
9203
|
*
|
|
9142
9204
|
* @stability stable
|
|
9143
9205
|
* @category decoding
|
|
@@ -9158,7 +9220,15 @@ export const decodeText = <Err, Done>(
|
|
|
9158
9220
|
Effect.sync(() => {
|
|
9159
9221
|
const decoder = new TextDecoder(encoding, options)
|
|
9160
9222
|
const streamOptions = { stream: true }
|
|
9161
|
-
|
|
9223
|
+
let pull: Pull.Pull<Arr.NonEmptyReadonlyArray<string>, Err, Done> = upstream.pipe(
|
|
9224
|
+
Effect.map(Arr.map((bytes) => decoder.decode(bytes, streamOptions))),
|
|
9225
|
+
Pull.catchDone((leftover) => {
|
|
9226
|
+
pull = Cause.done(leftover as Done)
|
|
9227
|
+
const last = decoder.decode()
|
|
9228
|
+
return last.length > 0 ? Effect.succeed(Arr.of(last)) : pull
|
|
9229
|
+
})
|
|
9230
|
+
)
|
|
9231
|
+
return Effect.suspend(() => pull)
|
|
9162
9232
|
})
|
|
9163
9233
|
)
|
|
9164
9234
|
|
|
@@ -9396,25 +9466,53 @@ export const pipeToOrFail: {
|
|
|
9396
9466
|
that: Channel<OutElem2, OutErr2, OutDone2, OutElem, never, OutDone, Env2>
|
|
9397
9467
|
): Channel<OutElem2, OutErr | OutErr2, OutDone2, InElem, InErr, InDone, Env2 | Env> =>
|
|
9398
9468
|
fromTransform((upstream, scope) =>
|
|
9399
|
-
Effect.flatMap(toTransform(self)(upstream, scope), (upstream) =>
|
|
9400
|
-
|
|
9401
|
-
upstream,
|
|
9402
|
-
|
|
9403
|
-
)
|
|
9404
|
-
|
|
9405
|
-
return Effect.map(
|
|
9406
|
-
toTransform(that)(upstreamPull, scope),
|
|
9407
|
-
(pull) =>
|
|
9408
|
-
Effect.catchDefect(
|
|
9409
|
-
pull,
|
|
9410
|
-
(defect) =>
|
|
9411
|
-
Cause.isDone(defect) ? Effect.failCause(defect.value as Cause.Cause<OutErr>) : Effect.die(defect)
|
|
9412
|
-
)
|
|
9413
|
-
)
|
|
9414
|
-
})
|
|
9469
|
+
Effect.flatMap(toTransform(self)(upstream, scope), (upstream) =>
|
|
9470
|
+
Effect.map(
|
|
9471
|
+
toTransform(that)(upstreamFailureToDefect(upstream), scope),
|
|
9472
|
+
restoreUpstreamFailure<OutElem2, OutErr | OutErr2 | Cause.Done<OutDone2>, Env2>
|
|
9473
|
+
))
|
|
9415
9474
|
)
|
|
9416
9475
|
)
|
|
9417
9476
|
|
|
9477
|
+
// Upstream failures are hidden from downstream error handlers by encoding them
|
|
9478
|
+
// as a `Die(Cause.Done(cause))` defect, which is unwrapped again once the
|
|
9479
|
+
// downstream has exited.
|
|
9480
|
+
const isUpstreamFailure = (
|
|
9481
|
+
reason: Cause.Reason<unknown>
|
|
9482
|
+
): reason is Cause.Die & { readonly defect: Cause.Done<Cause.Cause<unknown>> } =>
|
|
9483
|
+
reason._tag === "Die" && Cause.isDone(reason.defect) && Cause.isCause(reason.defect.value)
|
|
9484
|
+
|
|
9485
|
+
/** @internal */
|
|
9486
|
+
export const hasUpstreamFailure = (cause: Cause.Cause<unknown>): boolean => cause.reasons.some(isUpstreamFailure)
|
|
9487
|
+
|
|
9488
|
+
/** @internal */
|
|
9489
|
+
export const upstreamFailureToDefect = <A, E, Done, R>(
|
|
9490
|
+
pull: Pull.Pull<A, E, Done, R>
|
|
9491
|
+
): Pull.Pull<A, never, Done, R> =>
|
|
9492
|
+
Effect.catchCause(
|
|
9493
|
+
pull,
|
|
9494
|
+
(cause) => Pull.isDoneCause(cause) ? Effect.failCause(cause) : Effect.die(Cause.Done(cause))
|
|
9495
|
+
) as Pull.Pull<A, never, Done, R>
|
|
9496
|
+
|
|
9497
|
+
/** @internal */
|
|
9498
|
+
export const unwrapUpstreamFailure = <E>(cause: Cause.Cause<E>): Cause.Cause<unknown> =>
|
|
9499
|
+
hasUpstreamFailure(cause)
|
|
9500
|
+
? Cause.fromReasons(
|
|
9501
|
+
cause.reasons.flatMap((reason) => isUpstreamFailure(reason) ? reason.defect.value.reasons : [reason])
|
|
9502
|
+
)
|
|
9503
|
+
: cause
|
|
9504
|
+
|
|
9505
|
+
/**
|
|
9506
|
+
* The type parameters are explicit because the restored error type includes
|
|
9507
|
+
* the upstream error, which is not part of the input effect's type.
|
|
9508
|
+
*
|
|
9509
|
+
* @internal
|
|
9510
|
+
*/
|
|
9511
|
+
export const restoreUpstreamFailure = <A, E, R>(
|
|
9512
|
+
effect: Effect.Effect<A, NoInfer<E>, R>
|
|
9513
|
+
): Effect.Effect<A, E, R> =>
|
|
9514
|
+
Effect.catchCause(effect, (cause) => Effect.failCause(unwrapUpstreamFailure(cause) as Cause.Cause<E>))
|
|
9515
|
+
|
|
9418
9516
|
/**
|
|
9419
9517
|
* Constructs a `Channel` from a scoped effect that will result in a
|
|
9420
9518
|
* `Channel` if successful.
|
|
@@ -9708,59 +9806,7 @@ export const buffer: {
|
|
|
9708
9806
|
): Channel<OutElem, OutErr, OutDone, InElem, InErr, InDone, Env> =>
|
|
9709
9807
|
fromTransform(Effect.fnUntraced(function*(upstream, scope) {
|
|
9710
9808
|
const pull = yield* toTransform(self)(upstream, scope)
|
|
9711
|
-
const queue = yield* Queue.make
|
|
9712
|
-
* Buffers individual output elements in a queue with the configured `capacity`
|
|
9713
|
-
* so a faster producer can progress independently of a slower consumer.
|
|
9714
|
-
*
|
|
9715
|
-
* **When to use**
|
|
9716
|
-
*
|
|
9717
|
-
* Use when output elements can be decoupled from downstream demand and the
|
|
9718
|
-
* configured backpressure or loss strategy is acceptable.
|
|
9719
|
-
*
|
|
9720
|
-
* **Details**
|
|
9721
|
-
*
|
|
9722
|
-
* Finite queues use the `strategy` option. The default `"suspend"` strategy
|
|
9723
|
-
* applies backpressure, while `"dropping"` and `"sliding"` can discard output
|
|
9724
|
-
* elements when the queue is full. `"unbounded"` capacity does not use a finite
|
|
9725
|
-
* capacity strategy.
|
|
9726
|
-
*
|
|
9727
|
-
* **Gotchas**
|
|
9728
|
-
*
|
|
9729
|
-
* Dropping and sliding strategies can lose output elements under backpressure.
|
|
9730
|
-
*
|
|
9731
|
-
* @see {@link bufferArray} for buffering elements from array outputs
|
|
9732
|
-
*
|
|
9733
|
-
* @stability stable
|
|
9734
|
-
* @category buffering
|
|
9735
|
-
* @since 2.0.0
|
|
9736
|
-
*/
|
|
9737
|
-
OutElem, /**
|
|
9738
|
-
* Buffers individual output elements in a queue with the configured `capacity`
|
|
9739
|
-
* so a faster producer can progress independently of a slower consumer.
|
|
9740
|
-
*
|
|
9741
|
-
* **When to use**
|
|
9742
|
-
*
|
|
9743
|
-
* Use when output elements can be decoupled from downstream demand and the
|
|
9744
|
-
* configured backpressure or loss strategy is acceptable.
|
|
9745
|
-
*
|
|
9746
|
-
* **Details**
|
|
9747
|
-
*
|
|
9748
|
-
* Finite queues use the `strategy` option. The default `"suspend"` strategy
|
|
9749
|
-
* applies backpressure, while `"dropping"` and `"sliding"` can discard output
|
|
9750
|
-
* elements when the queue is full. `"unbounded"` capacity does not use a finite
|
|
9751
|
-
* capacity strategy.
|
|
9752
|
-
*
|
|
9753
|
-
* **Gotchas**
|
|
9754
|
-
*
|
|
9755
|
-
* Dropping and sliding strategies can lose output elements under backpressure.
|
|
9756
|
-
*
|
|
9757
|
-
* @see {@link bufferArray} for buffering elements from array outputs
|
|
9758
|
-
*
|
|
9759
|
-
* @stability stable
|
|
9760
|
-
* @category buffering
|
|
9761
|
-
* @since 2.0.0
|
|
9762
|
-
*/
|
|
9763
|
-
OutErr | Cause.Done<OutDone>>({
|
|
9809
|
+
const queue = yield* Queue.make<OutElem, OutErr | Cause.Done<OutDone>>({
|
|
9764
9810
|
capacity: options.capacity === "unbounded" ? undefined : options.capacity,
|
|
9765
9811
|
strategy: options.capacity === "unbounded" ? undefined : options.strategy
|
|
9766
9812
|
})
|
|
@@ -9883,63 +9929,7 @@ export const bufferArray: {
|
|
|
9883
9929
|
): Channel<Arr.NonEmptyReadonlyArray<OutElem>, OutErr, OutDone, InElem, InErr, InDone, Env> =>
|
|
9884
9930
|
fromTransform(Effect.fnUntraced(function*(upstream, scope) {
|
|
9885
9931
|
const pull = yield* toTransform(self)(upstream, scope)
|
|
9886
|
-
const queue = yield* Queue.make
|
|
9887
|
-
* Buffers array output elements in a queue with the configured `capacity` so a
|
|
9888
|
-
* faster producer can progress independently of a slower consumer.
|
|
9889
|
-
*
|
|
9890
|
-
* **When to use**
|
|
9891
|
-
*
|
|
9892
|
-
* Use when emitted arrays are batches of elements and it is acceptable for
|
|
9893
|
-
* buffering to flatten and rebuild those batches.
|
|
9894
|
-
*
|
|
9895
|
-
* **Details**
|
|
9896
|
-
*
|
|
9897
|
-
* Finite queues use the `strategy` option. The default `"suspend"` strategy
|
|
9898
|
-
* applies backpressure, while `"dropping"` and `"sliding"` can discard output
|
|
9899
|
-
* elements when the queue is full. `"unbounded"` capacity does not use a finite
|
|
9900
|
-
* capacity strategy.
|
|
9901
|
-
*
|
|
9902
|
-
* **Gotchas**
|
|
9903
|
-
*
|
|
9904
|
-
* Input arrays are offered to the queue element-by-element and outputs are
|
|
9905
|
-
* rebuilt from the currently available queued elements, so upstream array
|
|
9906
|
-
* boundaries are not preserved.
|
|
9907
|
-
*
|
|
9908
|
-
* @see {@link buffer} for buffering output elements without flattening arrays
|
|
9909
|
-
*
|
|
9910
|
-
* @stability stable
|
|
9911
|
-
* @category buffering
|
|
9912
|
-
* @since 4.0.0
|
|
9913
|
-
*/
|
|
9914
|
-
OutElem, /**
|
|
9915
|
-
* Buffers array output elements in a queue with the configured `capacity` so a
|
|
9916
|
-
* faster producer can progress independently of a slower consumer.
|
|
9917
|
-
*
|
|
9918
|
-
* **When to use**
|
|
9919
|
-
*
|
|
9920
|
-
* Use when emitted arrays are batches of elements and it is acceptable for
|
|
9921
|
-
* buffering to flatten and rebuild those batches.
|
|
9922
|
-
*
|
|
9923
|
-
* **Details**
|
|
9924
|
-
*
|
|
9925
|
-
* Finite queues use the `strategy` option. The default `"suspend"` strategy
|
|
9926
|
-
* applies backpressure, while `"dropping"` and `"sliding"` can discard output
|
|
9927
|
-
* elements when the queue is full. `"unbounded"` capacity does not use a finite
|
|
9928
|
-
* capacity strategy.
|
|
9929
|
-
*
|
|
9930
|
-
* **Gotchas**
|
|
9931
|
-
*
|
|
9932
|
-
* Input arrays are offered to the queue element-by-element and outputs are
|
|
9933
|
-
* rebuilt from the currently available queued elements, so upstream array
|
|
9934
|
-
* boundaries are not preserved.
|
|
9935
|
-
*
|
|
9936
|
-
* @see {@link buffer} for buffering output elements without flattening arrays
|
|
9937
|
-
*
|
|
9938
|
-
* @stability stable
|
|
9939
|
-
* @category buffering
|
|
9940
|
-
* @since 4.0.0
|
|
9941
|
-
*/
|
|
9942
|
-
OutErr | Cause.Done<OutDone>>({
|
|
9932
|
+
const queue = yield* Queue.make<OutElem, OutErr | Cause.Done<OutDone>>({
|
|
9943
9933
|
capacity: options.capacity === "unbounded" ? undefined : options.capacity,
|
|
9944
9934
|
strategy: options.capacity === "unbounded" ? undefined : options.strategy
|
|
9945
9935
|
})
|
|
@@ -12214,75 +12204,7 @@ export const toQueue: {
|
|
|
12214
12204
|
}
|
|
12215
12205
|
) {
|
|
12216
12206
|
const scope = yield* Effect.scope
|
|
12217
|
-
const queue = yield* Queue.make
|
|
12218
|
-
* Creates a scoped queue and forks the channel to feed it for concurrent
|
|
12219
|
-
* consumption.
|
|
12220
|
-
*
|
|
12221
|
-
* **Details**
|
|
12222
|
-
*
|
|
12223
|
-
* Output elements are offered to the queue. Channel completion and failure are
|
|
12224
|
-
* signaled through the queue. The queue is shut down when the surrounding scope
|
|
12225
|
-
* closes.
|
|
12226
|
-
*
|
|
12227
|
-
* **Example** (Converting channels to queues)
|
|
12228
|
-
*
|
|
12229
|
-
* ```ts import.meta.vitest
|
|
12230
|
-
* import { Channel, Data, Effect, Queue } from "effect"
|
|
12231
|
-
*
|
|
12232
|
-
* class QueueError extends Data.TaggedError("QueueError")<{
|
|
12233
|
-
* readonly operation: string
|
|
12234
|
-
* }> {}
|
|
12235
|
-
*
|
|
12236
|
-
* // Create a channel with data
|
|
12237
|
-
* const dataChannel = Channel.fromIterable([1, 2, 3, 4, 5])
|
|
12238
|
-
*
|
|
12239
|
-
* // Convert to queue for concurrent processing
|
|
12240
|
-
* const program = Effect.scoped(Effect.gen(function*() {
|
|
12241
|
-
* const queue = yield* Channel.toQueue(dataChannel, { capacity: 32 })
|
|
12242
|
-
* return yield* Queue.takeBetween(queue, 5, 5)
|
|
12243
|
-
* }))
|
|
12244
|
-
* await Effect.runPromise(program) // => [1, 2, 3, 4, 5]
|
|
12245
|
-
* ```
|
|
12246
|
-
*
|
|
12247
|
-
* @stability stable
|
|
12248
|
-
* @category destructors
|
|
12249
|
-
* @since 2.0.0
|
|
12250
|
-
*/
|
|
12251
|
-
OutElem, /**
|
|
12252
|
-
* Creates a scoped queue and forks the channel to feed it for concurrent
|
|
12253
|
-
* consumption.
|
|
12254
|
-
*
|
|
12255
|
-
* **Details**
|
|
12256
|
-
*
|
|
12257
|
-
* Output elements are offered to the queue. Channel completion and failure are
|
|
12258
|
-
* signaled through the queue. The queue is shut down when the surrounding scope
|
|
12259
|
-
* closes.
|
|
12260
|
-
*
|
|
12261
|
-
* **Example** (Converting channels to queues)
|
|
12262
|
-
*
|
|
12263
|
-
* ```ts import.meta.vitest
|
|
12264
|
-
* import { Channel, Data, Effect, Queue } from "effect"
|
|
12265
|
-
*
|
|
12266
|
-
* class QueueError extends Data.TaggedError("QueueError")<{
|
|
12267
|
-
* readonly operation: string
|
|
12268
|
-
* }> {}
|
|
12269
|
-
*
|
|
12270
|
-
* // Create a channel with data
|
|
12271
|
-
* const dataChannel = Channel.fromIterable([1, 2, 3, 4, 5])
|
|
12272
|
-
*
|
|
12273
|
-
* // Convert to queue for concurrent processing
|
|
12274
|
-
* const program = Effect.scoped(Effect.gen(function*() {
|
|
12275
|
-
* const queue = yield* Channel.toQueue(dataChannel, { capacity: 32 })
|
|
12276
|
-
* return yield* Queue.takeBetween(queue, 5, 5)
|
|
12277
|
-
* }))
|
|
12278
|
-
* await Effect.runPromise(program) // => [1, 2, 3, 4, 5]
|
|
12279
|
-
* ```
|
|
12280
|
-
*
|
|
12281
|
-
* @stability stable
|
|
12282
|
-
* @category destructors
|
|
12283
|
-
* @since 2.0.0
|
|
12284
|
-
*/
|
|
12285
|
-
OutErr | Cause.Done>({
|
|
12207
|
+
const queue = yield* Queue.make<OutElem, OutErr | Cause.Done>({
|
|
12286
12208
|
capacity: typeof options.capacity === "number" ? options.capacity : undefined,
|
|
12287
12209
|
strategy: typeof options.capacity === "number" ? options.strategy : undefined
|
|
12288
12210
|
})
|
|
@@ -12363,33 +12285,7 @@ export const toQueueArray: {
|
|
|
12363
12285
|
}
|
|
12364
12286
|
) {
|
|
12365
12287
|
const scope = yield* Effect.scope
|
|
12366
|
-
const queue = yield* Queue.make
|
|
12367
|
-
* Creates a scoped queue and forks an array-emitting channel to feed it.
|
|
12368
|
-
*
|
|
12369
|
-
* **Details**
|
|
12370
|
-
*
|
|
12371
|
-
* Each element inside emitted non-empty arrays is offered to the queue. Channel
|
|
12372
|
-
* completion and failure are signaled through the queue. The queue is shut down
|
|
12373
|
-
* when the surrounding scope closes.
|
|
12374
|
-
*
|
|
12375
|
-
* @stability stable
|
|
12376
|
-
* @category destructors
|
|
12377
|
-
* @since 4.0.0
|
|
12378
|
-
*/
|
|
12379
|
-
OutElem, /**
|
|
12380
|
-
* Creates a scoped queue and forks an array-emitting channel to feed it.
|
|
12381
|
-
*
|
|
12382
|
-
* **Details**
|
|
12383
|
-
*
|
|
12384
|
-
* Each element inside emitted non-empty arrays is offered to the queue. Channel
|
|
12385
|
-
* completion and failure are signaled through the queue. The queue is shut down
|
|
12386
|
-
* when the surrounding scope closes.
|
|
12387
|
-
*
|
|
12388
|
-
* @stability stable
|
|
12389
|
-
* @category destructors
|
|
12390
|
-
* @since 4.0.0
|
|
12391
|
-
*/
|
|
12392
|
-
OutErr | Cause.Done>({
|
|
12288
|
+
const queue = yield* Queue.make<OutElem, OutErr | Cause.Done>({
|
|
12393
12289
|
capacity: typeof options.capacity === "number" ? options.capacity : undefined,
|
|
12394
12290
|
strategy: typeof options.capacity === "number" ? options.strategy : undefined
|
|
12395
12291
|
})
|
|
@@ -12478,19 +12374,7 @@ export const toPubSub: {
|
|
|
12478
12374
|
readonly shutdownOnEnd?: boolean | undefined
|
|
12479
12375
|
}
|
|
12480
12376
|
) {
|
|
12481
|
-
const pubsub = yield* makePubSub
|
|
12482
|
-
* Converts a channel to a PubSub for concurrent consumption.
|
|
12483
|
-
*
|
|
12484
|
-
* **Details**
|
|
12485
|
-
*
|
|
12486
|
-
* `shutdownOnEnd` indicates whether the PubSub should be shut down when the
|
|
12487
|
-
* channel ends. By default this is `true`.
|
|
12488
|
-
*
|
|
12489
|
-
* @stability stable
|
|
12490
|
-
* @category destructors
|
|
12491
|
-
* @since 2.0.0
|
|
12492
|
-
*/
|
|
12493
|
-
OutElem>(options)
|
|
12377
|
+
const pubsub = yield* makePubSub<OutElem>(options)
|
|
12494
12378
|
yield* Effect.forkScoped(runIntoPubSub(self, pubsub, {
|
|
12495
12379
|
shutdownOnEnd: options.shutdownOnEnd !== false
|
|
12496
12380
|
}))
|
|
@@ -12670,21 +12554,7 @@ export const toPubSubArray: {
|
|
|
12670
12554
|
readonly shutdownOnEnd?: boolean | undefined
|
|
12671
12555
|
}
|
|
12672
12556
|
) {
|
|
12673
|
-
const pubsub = yield* makePubSub
|
|
12674
|
-
* Converts an array-emitting channel to a scoped `PubSub` for concurrent
|
|
12675
|
-
* consumption.
|
|
12676
|
-
*
|
|
12677
|
-
* **Details**
|
|
12678
|
-
*
|
|
12679
|
-
* Each element inside emitted non-empty arrays is published as an individual
|
|
12680
|
-
* PubSub message. `shutdownOnEnd` indicates whether the PubSub should be shut
|
|
12681
|
-
* down when the channel ends. By default this is `true`.
|
|
12682
|
-
*
|
|
12683
|
-
* @stability stable
|
|
12684
|
-
* @category destructors
|
|
12685
|
-
* @since 4.0.0
|
|
12686
|
-
*/
|
|
12687
|
-
OutElem>(options)
|
|
12557
|
+
const pubsub = yield* makePubSub<OutElem>(options)
|
|
12688
12558
|
yield* Effect.forkScoped(runIntoPubSubArray(self, pubsub, {
|
|
12689
12559
|
shutdownOnEnd: options.shutdownOnEnd !== false
|
|
12690
12560
|
}))
|
|
@@ -12851,21 +12721,7 @@ export const toPubSubTake: {
|
|
|
12851
12721
|
readonly replay?: number | undefined
|
|
12852
12722
|
}
|
|
12853
12723
|
) {
|
|
12854
|
-
const pubsub = yield* makePubSub
|
|
12855
|
-
* Converts a channel to a scoped `PubSub` of `Take` values.
|
|
12856
|
-
*
|
|
12857
|
-
* **Details**
|
|
12858
|
-
*
|
|
12859
|
-
* Emitted non-empty arrays are published as output `Take` values. When the
|
|
12860
|
-
* channel ends, the `PubSub` is ended with its final `Exit`, so every
|
|
12861
|
-
* subscriber, including one that subscribes later, observes completion or
|
|
12862
|
-
* failure once it has consumed its buffered values.
|
|
12863
|
-
*
|
|
12864
|
-
* @stability stable
|
|
12865
|
-
* @category destructors
|
|
12866
|
-
* @since 4.0.0
|
|
12867
|
-
*/
|
|
12868
|
-
Take.Take<OutElem, OutErr, OutDone>>(options)
|
|
12724
|
+
const pubsub = yield* makePubSub<Take.Take<OutElem, OutErr, OutDone>>(options)
|
|
12869
12725
|
yield* runForEach(self, (value) => PubSub.publish(pubsub, value)).pipe(
|
|
12870
12726
|
Effect.onExit((exit) => PubSub.end(pubsub, exit)),
|
|
12871
12727
|
Effect.forkScoped
|