effect 4.0.0-beta.30 → 4.0.0-beta.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Array.d.ts +87 -86
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +47 -40
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +46 -45
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +35 -38
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +39 -32
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +32 -29
- package/dist/BigInt.js.map +1 -1
- package/dist/Channel.d.ts +2 -2
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +58 -57
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +20 -21
- package/dist/Chunk.js.map +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +4 -1
- package/dist/Config.js.map +1 -1
- package/dist/Cron.d.ts +3 -6
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +11 -18
- package/dist/Cron.js.map +1 -1
- package/dist/DateTime.d.ts +49 -92
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +9 -9
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +7 -5
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +7 -5
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +55 -25
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +100 -70
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +3 -4
- package/dist/Effect.js.map +1 -1
- package/dist/Fiber.d.ts +2 -1
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +9 -8
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +8 -7
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +20 -19
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +6 -6
- package/dist/FiberMap.js.map +1 -1
- package/dist/FileSystem.d.ts +17 -16
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +10 -7
- package/dist/FileSystem.js.map +1 -1
- package/dist/Graph.d.ts +64 -64
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +53 -53
- package/dist/Graph.js.map +1 -1
- package/dist/HashMap.d.ts +11 -5
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +3 -1
- package/dist/HashMap.js.map +1 -1
- package/dist/Iterable.d.ts +11 -11
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +12 -12
- package/dist/Iterable.js.map +1 -1
- package/dist/Latch.d.ts +69 -3
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +58 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +181 -2
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +35 -2
- package/dist/Layer.js.map +1 -1
- package/dist/Number.d.ts +74 -18
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +34 -15
- package/dist/Number.js.map +1 -1
- package/dist/Option.d.ts +2 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +183 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -0
- package/dist/PartitionedSemaphore.js +231 -0
- package/dist/PartitionedSemaphore.js.map +1 -0
- package/dist/PubSub.d.ts +5 -4
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +6 -5
- package/dist/PubSub.js.map +1 -1
- package/dist/Queue.d.ts +3 -3
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +2 -2
- package/dist/Queue.js.map +1 -1
- package/dist/Record.d.ts +40 -40
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +16 -15
- package/dist/Record.js.map +1 -1
- package/dist/Scheduler.d.ts +25 -123
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +20 -123
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +2346 -114
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +1359 -68
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +2 -2
- package/dist/SchemaAST.js +2 -2
- package/dist/SchemaGetter.js +6 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +2 -2
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +32 -27
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Semaphore.d.ts +149 -53
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +137 -117
- package/dist/Semaphore.js.map +1 -1
- package/dist/ServiceMap.d.ts +26 -0
- package/dist/ServiceMap.d.ts.map +1 -1
- package/dist/ServiceMap.js +36 -21
- package/dist/ServiceMap.js.map +1 -1
- package/dist/Stream.js +1 -1
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +114 -47
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +29 -47
- package/dist/String.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +1 -2
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +81 -115
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Terminal.d.ts +2 -1
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +5 -4
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +2 -1
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +26 -14
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +8 -4
- package/dist/Trie.js.map +1 -1
- package/dist/TxHashMap.d.ts +77 -59
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +25 -19
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxSemaphore.d.ts +162 -2
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +16 -2
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/index.d.ts +88 -32
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +88 -32
- package/dist/index.js.map +1 -1
- package/dist/internal/dateTime.js +66 -59
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +21 -90
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/hashMap.js +2 -1
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/option.js +6 -0
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/trie.js +3 -3
- package/dist/internal/trie.js.map +1 -1
- package/dist/unstable/ai/AiError.js +1 -1
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +4 -0
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +3 -4
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +2 -2
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +30 -16
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +10 -87
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +4 -0
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +14 -0
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +13 -0
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +2 -4
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.js +1 -3
- package/dist/unstable/cli/Argument.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +3 -2
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +4 -3
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +3 -2
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +3 -3
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +16 -0
- package/dist/unstable/cli/Completions.d.ts.map +1 -0
- package/dist/unstable/cli/Completions.js +23 -0
- package/dist/unstable/cli/Completions.js.map +1 -0
- package/dist/unstable/cli/Flag.d.ts +2 -2
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.js +1 -1
- package/dist/unstable/cli/Flag.js.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +4 -4
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/HelpDoc.d.ts +14 -12
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +4 -4
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +7 -7
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +1 -1
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.js +71 -67
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +4 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +4 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js +9 -2
- package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
- package/dist/unstable/cli/internal/parser.js +8 -3
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +3 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +25 -23
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.js +1 -1
- package/dist/unstable/cluster/DeliverAt.js.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts +3 -2
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +7 -7
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +4 -3
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +3 -2
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +10 -10
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +12 -12
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +2 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +4 -3
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +9 -8
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +2 -1
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +7 -6
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +19 -13
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +5 -4
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +4 -4
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +19 -18
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +9 -10
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +2 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +1 -4
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +8 -8
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +5 -4
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +3 -4
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +5 -1
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +3 -2
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +2 -1
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +2 -1
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts +4 -3
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +8 -6
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +2 -1
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +3 -2
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +16 -15
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +3 -2
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +2 -1
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +7 -7
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +2 -2
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +2 -1
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +2 -1
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +3 -2
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +14 -10
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +4 -3
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.js +27 -15
- package/dist/unstable/http/HttpTraceContext.js.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts +5 -4
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +5 -6
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +2 -2
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +4 -2
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +15 -0
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +81 -3
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +2 -2
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +7 -3
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/persistence/Persistable.js +1 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +1 -5
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +4 -2
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +4 -3
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +4 -4
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts +1 -3
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +3 -2
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +4 -1
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +3 -2
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +2 -1
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +1 -1
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +6 -6
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +2 -1
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +5 -4
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +19 -14
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +112 -105
- package/src/BigDecimal.ts +63 -66
- package/src/BigInt.ts +49 -41
- package/src/Channel.ts +3 -3
- package/src/Chunk.ts +68 -63
- package/src/Config.ts +4 -1
- package/src/Cron.ts +13 -18
- package/src/DateTime.ts +51 -92
- package/src/Deferred.ts +8 -6
- package/src/Duration.ts +112 -56
- package/src/Effect.ts +3 -4
- package/src/Fiber.ts +2 -1
- package/src/FiberHandle.ts +10 -9
- package/src/FiberMap.ts +22 -22
- package/src/FileSystem.ts +25 -22
- package/src/Graph.ts +105 -105
- package/src/HashMap.ts +11 -5
- package/src/Iterable.ts +13 -13
- package/src/Latch.ts +85 -3
- package/src/Layer.ts +244 -19
- package/src/Number.ts +85 -26
- package/src/Option.ts +2 -0
- package/src/PartitionedSemaphore.ts +414 -0
- package/src/PubSub.ts +7 -6
- package/src/Queue.ts +5 -5
- package/src/Record.ts +52 -47
- package/src/Scheduler.ts +37 -126
- package/src/Schema.ts +2366 -116
- package/src/SchemaAST.ts +2 -2
- package/src/SchemaGetter.ts +4 -4
- package/src/SchemaRepresentation.ts +2 -2
- package/src/SchemaTransformation.ts +27 -27
- package/src/Semaphore.ts +271 -183
- package/src/ServiceMap.ts +83 -31
- package/src/Stream.ts +1 -1
- package/src/String.ts +122 -69
- package/src/SubscriptionRef.ts +96 -117
- package/src/Terminal.ts +2 -1
- package/src/Tracer.ts +6 -5
- package/src/Trie.ts +26 -14
- package/src/TxHashMap.ts +78 -60
- package/src/TxSemaphore.ts +186 -11
- package/src/index.ts +89 -33
- package/src/internal/dateTime.ts +74 -65
- package/src/internal/effect.ts +30 -122
- package/src/internal/hashMap.ts +4 -3
- package/src/internal/option.ts +7 -0
- package/src/internal/trie.ts +6 -6
- package/src/unstable/ai/AiError.ts +1 -1
- package/src/unstable/ai/AnthropicStructuredOutput.ts +4 -0
- package/src/unstable/ai/Chat.ts +17 -15
- package/src/unstable/ai/LanguageModel.ts +148 -97
- package/src/unstable/ai/OpenAiStructuredOutput.ts +4 -0
- package/src/unstable/ai/Tool.ts +20 -0
- package/src/unstable/cli/Argument.ts +2 -4
- package/src/unstable/cli/CliOutput.ts +7 -5
- package/src/unstable/cli/Command.ts +5 -5
- package/src/unstable/cli/Completions.ts +36 -0
- package/src/unstable/cli/Flag.ts +2 -2
- package/src/unstable/cli/GlobalFlag.ts +4 -5
- package/src/unstable/cli/HelpDoc.ts +14 -12
- package/src/unstable/cli/Param.ts +15 -11
- package/src/unstable/cli/Primitive.ts +1 -1
- package/src/unstable/cli/Prompt.ts +81 -83
- package/src/unstable/cli/index.ts +5 -0
- package/src/unstable/cli/internal/completions/CommandDescriptor.ts +3 -2
- package/src/unstable/cli/internal/parser.ts +7 -4
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -30
- package/src/unstable/cluster/DeliverAt.ts +1 -1
- package/src/unstable/cluster/Entity.ts +13 -12
- package/src/unstable/cluster/Message.ts +6 -5
- package/src/unstable/cluster/MessageStorage.ts +26 -25
- package/src/unstable/cluster/Reply.ts +7 -4
- package/src/unstable/cluster/RunnerServer.ts +10 -13
- package/src/unstable/cluster/Runners.ts +8 -7
- package/src/unstable/cluster/Sharding.ts +24 -17
- package/src/unstable/cluster/ShardingConfig.ts +6 -6
- package/src/unstable/cluster/SqlMessageStorage.ts +21 -18
- package/src/unstable/cluster/internal/entityManager.ts +27 -21
- package/src/unstable/devtools/DevToolsSchema.ts +3 -2
- package/src/unstable/encoding/Ndjson.ts +17 -17
- package/src/unstable/http/Cookies.ts +7 -8
- package/src/unstable/http/Etag.ts +5 -3
- package/src/unstable/http/Headers.ts +6 -5
- package/src/unstable/http/HttpClient.ts +2 -1
- package/src/unstable/http/HttpClientRequest.ts +11 -9
- package/src/unstable/http/HttpClientResponse.ts +5 -4
- package/src/unstable/http/HttpIncomingMessage.ts +3 -2
- package/src/unstable/http/HttpMiddleware.ts +16 -15
- package/src/unstable/http/HttpPlatform.ts +3 -2
- package/src/unstable/http/HttpRouter.ts +9 -9
- package/src/unstable/http/HttpServer.ts +3 -9
- package/src/unstable/http/HttpServerError.ts +3 -2
- package/src/unstable/http/HttpServerRequest.ts +29 -25
- package/src/unstable/http/HttpServerResponse.ts +7 -6
- package/src/unstable/http/HttpTraceContext.ts +31 -17
- package/src/unstable/http/UrlParams.ts +11 -14
- package/src/unstable/httpapi/HttpApiBuilder.ts +13 -7
- package/src/unstable/httpapi/HttpApiError.ts +67 -12
- package/src/unstable/observability/OtlpExporter.ts +5 -2
- package/src/unstable/observability/OtlpTracer.ts +8 -4
- package/src/unstable/persistence/Persistable.ts +1 -1
- package/src/unstable/reactivity/Atom.ts +1 -4
- package/src/unstable/reactivity/AtomRegistry.ts +5 -3
- package/src/unstable/rpc/Rpc.ts +4 -3
- package/src/unstable/rpc/RpcClient.ts +10 -9
- package/src/unstable/rpc/RpcGroup.ts +3 -3
- package/src/unstable/rpc/RpcSchema.ts +6 -5
- package/src/unstable/rpc/RpcSerialization.ts +4 -1
- package/src/unstable/rpc/RpcServer.ts +3 -3
- package/src/unstable/socket/Socket.ts +2 -1
- package/src/unstable/sql/SqlClient.ts +5 -3
- package/src/unstable/workflow/DurableDeferred.ts +6 -6
- package/src/unstable/workflow/Workflow.ts +1 -1
- package/src/unstable/workflow/WorkflowEngine.ts +29 -20
- package/dist/NullOr.d.ts +0 -149
- package/dist/NullOr.d.ts.map +0 -1
- package/dist/NullOr.js +0 -152
- package/dist/NullOr.js.map +0 -1
- package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
- package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
- package/dist/unstable/cli/internal/completions/Completions.js +0 -23
- package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
- package/src/NullOr.ts +0 -204
- package/src/unstable/cli/internal/completions/Completions.ts +0 -31
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 4.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Effect from "./Effect.ts";
|
|
5
|
+
import * as Option from "./Option.ts";
|
|
6
|
+
/**
|
|
7
|
+
* @since 4.0.0
|
|
8
|
+
* @category models
|
|
9
|
+
*/
|
|
10
|
+
export declare const PartitionedTypeId: PartitionedTypeId;
|
|
11
|
+
/**
|
|
12
|
+
* @since 4.0.0
|
|
13
|
+
* @category models
|
|
14
|
+
*/
|
|
15
|
+
export type PartitionedTypeId = "~effect/PartitionedSemaphore";
|
|
16
|
+
/**
|
|
17
|
+
* A `PartitionedSemaphore` controls access to a shared permit pool while
|
|
18
|
+
* tracking waiters by partition key.
|
|
19
|
+
*
|
|
20
|
+
* Waiting permits are distributed across partitions in round-robin order.
|
|
21
|
+
*
|
|
22
|
+
* @since 4.0.0
|
|
23
|
+
* @category models
|
|
24
|
+
*/
|
|
25
|
+
export interface PartitionedSemaphore<in K> {
|
|
26
|
+
readonly [PartitionedTypeId]: PartitionedTypeId;
|
|
27
|
+
readonly capacity: number;
|
|
28
|
+
readonly available: Effect.Effect<number>;
|
|
29
|
+
readonly take: (key: K, permits: number) => Effect.Effect<void>;
|
|
30
|
+
readonly release: (permits: number) => Effect.Effect<number>;
|
|
31
|
+
readonly withPermits: (key: K, permits: number) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
32
|
+
readonly withPermit: (key: K) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
33
|
+
readonly withPermitsIfAvailable: (permits: number) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<Option.Option<A>, E, R>;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* @since 4.0.0
|
|
37
|
+
* @category models
|
|
38
|
+
*/
|
|
39
|
+
export interface Partitioned<in K> extends PartitionedSemaphore<K> {
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Creates a `PartitionedSemaphore` unsafely.
|
|
43
|
+
*
|
|
44
|
+
* @since 4.0.0
|
|
45
|
+
* @category constructors
|
|
46
|
+
*/
|
|
47
|
+
export declare const makeUnsafe: <K = unknown>(options: {
|
|
48
|
+
readonly permits: number;
|
|
49
|
+
}) => PartitionedSemaphore<K>;
|
|
50
|
+
/**
|
|
51
|
+
* Creates a `PartitionedSemaphore`.
|
|
52
|
+
*
|
|
53
|
+
* @since 4.0.0
|
|
54
|
+
* @category constructors
|
|
55
|
+
*/
|
|
56
|
+
export declare const make: <K = unknown>(options: {
|
|
57
|
+
readonly permits: number;
|
|
58
|
+
}) => Effect.Effect<PartitionedSemaphore<K>>;
|
|
59
|
+
/**
|
|
60
|
+
* Gets the current number of available permits.
|
|
61
|
+
*
|
|
62
|
+
* @since 4.0.0
|
|
63
|
+
* @category combinators
|
|
64
|
+
*/
|
|
65
|
+
export declare const available: <K>(self: PartitionedSemaphore<K>) => Effect.Effect<number>;
|
|
66
|
+
/**
|
|
67
|
+
* Gets the total capacity.
|
|
68
|
+
*
|
|
69
|
+
* @since 4.0.0
|
|
70
|
+
* @category getters
|
|
71
|
+
*/
|
|
72
|
+
export declare const capacity: <K>(self: PartitionedSemaphore<K>) => number;
|
|
73
|
+
/**
|
|
74
|
+
* Acquires permits for a partition.
|
|
75
|
+
*
|
|
76
|
+
* @since 4.0.0
|
|
77
|
+
* @category combinators
|
|
78
|
+
*/
|
|
79
|
+
export declare const take: {
|
|
80
|
+
/**
|
|
81
|
+
* Acquires permits for a partition.
|
|
82
|
+
*
|
|
83
|
+
* @since 4.0.0
|
|
84
|
+
* @category combinators
|
|
85
|
+
*/
|
|
86
|
+
<K>(key: K, permits: number): (self: PartitionedSemaphore<K>) => Effect.Effect<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Acquires permits for a partition.
|
|
89
|
+
*
|
|
90
|
+
* @since 4.0.0
|
|
91
|
+
* @category combinators
|
|
92
|
+
*/
|
|
93
|
+
<K>(self: PartitionedSemaphore<K>, key: K, permits: number): Effect.Effect<void>;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Releases permits back to the shared pool.
|
|
97
|
+
*
|
|
98
|
+
* @since 4.0.0
|
|
99
|
+
* @category combinators
|
|
100
|
+
*/
|
|
101
|
+
export declare const release: {
|
|
102
|
+
/**
|
|
103
|
+
* Releases permits back to the shared pool.
|
|
104
|
+
*
|
|
105
|
+
* @since 4.0.0
|
|
106
|
+
* @category combinators
|
|
107
|
+
*/
|
|
108
|
+
(permits: number): <K>(self: PartitionedSemaphore<K>) => Effect.Effect<number>;
|
|
109
|
+
/**
|
|
110
|
+
* Releases permits back to the shared pool.
|
|
111
|
+
*
|
|
112
|
+
* @since 4.0.0
|
|
113
|
+
* @category combinators
|
|
114
|
+
*/
|
|
115
|
+
<K>(self: PartitionedSemaphore<K>, permits: number): Effect.Effect<number>;
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* Runs an effect with permits for a partition.
|
|
119
|
+
*
|
|
120
|
+
* @since 4.0.0
|
|
121
|
+
* @category combinators
|
|
122
|
+
*/
|
|
123
|
+
export declare const withPermits: {
|
|
124
|
+
/**
|
|
125
|
+
* Runs an effect with permits for a partition.
|
|
126
|
+
*
|
|
127
|
+
* @since 4.0.0
|
|
128
|
+
* @category combinators
|
|
129
|
+
*/
|
|
130
|
+
<K>(self: PartitionedSemaphore<K>, key: K, permits: number): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
131
|
+
/**
|
|
132
|
+
* Runs an effect with permits for a partition.
|
|
133
|
+
*
|
|
134
|
+
* @since 4.0.0
|
|
135
|
+
* @category combinators
|
|
136
|
+
*/
|
|
137
|
+
<K, A, E, R>(self: PartitionedSemaphore<K>, key: K, permits: number, effect: Effect.Effect<A, E, R>): Effect.Effect<A, E, R>;
|
|
138
|
+
};
|
|
139
|
+
/**
|
|
140
|
+
* Runs an effect with a single permit for a partition.
|
|
141
|
+
*
|
|
142
|
+
* @since 4.0.0
|
|
143
|
+
* @category combinators
|
|
144
|
+
*/
|
|
145
|
+
export declare const withPermit: {
|
|
146
|
+
/**
|
|
147
|
+
* Runs an effect with a single permit for a partition.
|
|
148
|
+
*
|
|
149
|
+
* @since 4.0.0
|
|
150
|
+
* @category combinators
|
|
151
|
+
*/
|
|
152
|
+
<K>(self: PartitionedSemaphore<K>, key: K): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
153
|
+
/**
|
|
154
|
+
* Runs an effect with a single permit for a partition.
|
|
155
|
+
*
|
|
156
|
+
* @since 4.0.0
|
|
157
|
+
* @category combinators
|
|
158
|
+
*/
|
|
159
|
+
<K, A, E, R>(self: PartitionedSemaphore<K>, key: K, effect: Effect.Effect<A, E, R>): Effect.Effect<A, E, R>;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Runs an effect only if the permits are immediately available.
|
|
163
|
+
*
|
|
164
|
+
* @since 4.0.0
|
|
165
|
+
* @category combinators
|
|
166
|
+
*/
|
|
167
|
+
export declare const withPermitsIfAvailable: {
|
|
168
|
+
/**
|
|
169
|
+
* Runs an effect only if the permits are immediately available.
|
|
170
|
+
*
|
|
171
|
+
* @since 4.0.0
|
|
172
|
+
* @category combinators
|
|
173
|
+
*/
|
|
174
|
+
<K>(self: PartitionedSemaphore<K>, permits: number): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<Option.Option<A>, E, R>;
|
|
175
|
+
/**
|
|
176
|
+
* Runs an effect only if the permits are immediately available.
|
|
177
|
+
*
|
|
178
|
+
* @since 4.0.0
|
|
179
|
+
* @category combinators
|
|
180
|
+
*/
|
|
181
|
+
<K, A, E, R>(self: PartitionedSemaphore<K>, permits: number, effect: Effect.Effect<A, E, R>): Effect.Effect<Option.Option<A>, E, R>;
|
|
182
|
+
};
|
|
183
|
+
//# sourceMappingURL=PartitionedSemaphore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PartitionedSemaphore.d.ts","sourceRoot":"","sources":["../src/PartitionedSemaphore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 4.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Effect from "./Effect.js";
|
|
5
|
+
import { dual } from "./Function.js";
|
|
6
|
+
import * as MutableHashMap from "./MutableHashMap.js";
|
|
7
|
+
import * as Option from "./Option.js";
|
|
8
|
+
/**
|
|
9
|
+
* @since 4.0.0
|
|
10
|
+
* @category models
|
|
11
|
+
*/
|
|
12
|
+
export const PartitionedTypeId = "~effect/PartitionedSemaphore";
|
|
13
|
+
/**
|
|
14
|
+
* Creates a `PartitionedSemaphore` unsafely.
|
|
15
|
+
*
|
|
16
|
+
* @since 4.0.0
|
|
17
|
+
* @category constructors
|
|
18
|
+
*/
|
|
19
|
+
export const makeUnsafe = options => {
|
|
20
|
+
const maxPermits = Math.max(0, options.permits);
|
|
21
|
+
if (!Number.isFinite(maxPermits)) {
|
|
22
|
+
return {
|
|
23
|
+
[PartitionedTypeId]: PartitionedTypeId,
|
|
24
|
+
capacity: maxPermits,
|
|
25
|
+
available: Effect.succeed(maxPermits),
|
|
26
|
+
take: () => Effect.void,
|
|
27
|
+
release: () => Effect.succeed(maxPermits),
|
|
28
|
+
withPermits: () => effect => effect,
|
|
29
|
+
withPermit: () => effect => effect,
|
|
30
|
+
withPermitsIfAvailable: () => effect => Effect.asSome(effect)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
let totalPermits = maxPermits;
|
|
34
|
+
let waitingPermits = 0;
|
|
35
|
+
const partitions = MutableHashMap.empty();
|
|
36
|
+
let iterator = partitions[Symbol.iterator]();
|
|
37
|
+
const releaseUnsafe = permits => {
|
|
38
|
+
while (permits > 0) {
|
|
39
|
+
if (waitingPermits === 0) {
|
|
40
|
+
totalPermits = Math.min(maxPermits, totalPermits + permits);
|
|
41
|
+
return totalPermits;
|
|
42
|
+
}
|
|
43
|
+
let state = iterator.next();
|
|
44
|
+
if (state.done) {
|
|
45
|
+
iterator = partitions[Symbol.iterator]();
|
|
46
|
+
state = iterator.next();
|
|
47
|
+
if (state.done) {
|
|
48
|
+
return totalPermits;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const waiter = state.value[1].values().next().value;
|
|
52
|
+
if (waiter === undefined) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
waiter.permits -= 1;
|
|
56
|
+
waitingPermits -= 1;
|
|
57
|
+
if (waiter.permits === 0) {
|
|
58
|
+
waiter.resume();
|
|
59
|
+
}
|
|
60
|
+
permits -= 1;
|
|
61
|
+
}
|
|
62
|
+
return totalPermits;
|
|
63
|
+
};
|
|
64
|
+
const take = (key, permits) => {
|
|
65
|
+
if (permits <= 0) {
|
|
66
|
+
return Effect.void;
|
|
67
|
+
}
|
|
68
|
+
return Effect.callback(resume => {
|
|
69
|
+
if (maxPermits < permits) {
|
|
70
|
+
resume(Effect.never);
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (totalPermits >= permits) {
|
|
74
|
+
totalPermits -= permits;
|
|
75
|
+
resume(Effect.void);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
const needed = permits - totalPermits;
|
|
79
|
+
const taken = permits - needed;
|
|
80
|
+
if (totalPermits > 0) {
|
|
81
|
+
totalPermits = 0;
|
|
82
|
+
}
|
|
83
|
+
waitingPermits += needed;
|
|
84
|
+
const waiters = Option.getOrElse(MutableHashMap.get(partitions, key), () => {
|
|
85
|
+
const set = new Set();
|
|
86
|
+
MutableHashMap.set(partitions, key, set);
|
|
87
|
+
return set;
|
|
88
|
+
});
|
|
89
|
+
const entry = {
|
|
90
|
+
permits: needed,
|
|
91
|
+
resume: () => {
|
|
92
|
+
cleanup();
|
|
93
|
+
resume(Effect.void);
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
const cleanup = () => {
|
|
97
|
+
waiters.delete(entry);
|
|
98
|
+
if (waiters.size === 0) {
|
|
99
|
+
MutableHashMap.remove(partitions, key);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
waiters.add(entry);
|
|
103
|
+
return Effect.sync(() => {
|
|
104
|
+
cleanup();
|
|
105
|
+
waitingPermits -= entry.permits;
|
|
106
|
+
if (taken > 0) {
|
|
107
|
+
releaseUnsafe(taken);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
const withPermits = (key, permits) => effect => {
|
|
113
|
+
if (permits <= 0) {
|
|
114
|
+
return effect;
|
|
115
|
+
}
|
|
116
|
+
const takePermits = take(key, permits);
|
|
117
|
+
return Effect.uninterruptibleMask(restore => Effect.flatMap(restore(takePermits), () => Effect.ensuring(restore(effect), Effect.sync(() => {
|
|
118
|
+
releaseUnsafe(permits);
|
|
119
|
+
}))));
|
|
120
|
+
};
|
|
121
|
+
const tryTake = permits => {
|
|
122
|
+
if (permits <= 0) {
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
if (maxPermits < permits || totalPermits < permits) {
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
totalPermits -= permits;
|
|
129
|
+
return true;
|
|
130
|
+
};
|
|
131
|
+
return {
|
|
132
|
+
[PartitionedTypeId]: PartitionedTypeId,
|
|
133
|
+
capacity: maxPermits,
|
|
134
|
+
available: Effect.sync(() => totalPermits),
|
|
135
|
+
take,
|
|
136
|
+
release: permits => Effect.sync(() => releaseUnsafe(permits)),
|
|
137
|
+
withPermits,
|
|
138
|
+
withPermit: key => withPermits(key, 1),
|
|
139
|
+
withPermitsIfAvailable: permits => effect => {
|
|
140
|
+
if (permits <= 0) {
|
|
141
|
+
return Effect.asSome(effect);
|
|
142
|
+
}
|
|
143
|
+
return Effect.suspend(() => {
|
|
144
|
+
if (!tryTake(permits)) {
|
|
145
|
+
return Effect.succeed(Option.none());
|
|
146
|
+
}
|
|
147
|
+
return Effect.ensuring(Effect.asSome(effect), Effect.sync(() => {
|
|
148
|
+
releaseUnsafe(permits);
|
|
149
|
+
}));
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
};
|
|
154
|
+
/**
|
|
155
|
+
* Creates a `PartitionedSemaphore`.
|
|
156
|
+
*
|
|
157
|
+
* @since 4.0.0
|
|
158
|
+
* @category constructors
|
|
159
|
+
*/
|
|
160
|
+
export const make = options => Effect.sync(() => makeUnsafe(options));
|
|
161
|
+
/**
|
|
162
|
+
* Gets the current number of available permits.
|
|
163
|
+
*
|
|
164
|
+
* @since 4.0.0
|
|
165
|
+
* @category combinators
|
|
166
|
+
*/
|
|
167
|
+
export const available = self => self.available;
|
|
168
|
+
/**
|
|
169
|
+
* Gets the total capacity.
|
|
170
|
+
*
|
|
171
|
+
* @since 4.0.0
|
|
172
|
+
* @category getters
|
|
173
|
+
*/
|
|
174
|
+
export const capacity = self => self.capacity;
|
|
175
|
+
/**
|
|
176
|
+
* Acquires permits for a partition.
|
|
177
|
+
*
|
|
178
|
+
* @since 4.0.0
|
|
179
|
+
* @category combinators
|
|
180
|
+
*/
|
|
181
|
+
export const take = /*#__PURE__*/dual(3, (self, key, permits) => self.take(key, permits));
|
|
182
|
+
/**
|
|
183
|
+
* Releases permits back to the shared pool.
|
|
184
|
+
*
|
|
185
|
+
* @since 4.0.0
|
|
186
|
+
* @category combinators
|
|
187
|
+
*/
|
|
188
|
+
export const release = /*#__PURE__*/dual(2, (self, permits) => self.release(permits));
|
|
189
|
+
/**
|
|
190
|
+
* Runs an effect with permits for a partition.
|
|
191
|
+
*
|
|
192
|
+
* @since 4.0.0
|
|
193
|
+
* @category combinators
|
|
194
|
+
*/
|
|
195
|
+
export const withPermits = (...args) => {
|
|
196
|
+
if (args.length === 3) {
|
|
197
|
+
const [self, key, permits] = args;
|
|
198
|
+
return effect => self.withPermits(key, permits)(effect);
|
|
199
|
+
}
|
|
200
|
+
const [self, key, permits, effect] = args;
|
|
201
|
+
return self.withPermits(key, permits)(effect);
|
|
202
|
+
};
|
|
203
|
+
/**
|
|
204
|
+
* Runs an effect with a single permit for a partition.
|
|
205
|
+
*
|
|
206
|
+
* @since 4.0.0
|
|
207
|
+
* @category combinators
|
|
208
|
+
*/
|
|
209
|
+
export const withPermit = (...args) => {
|
|
210
|
+
if (args.length === 2) {
|
|
211
|
+
const [self, key] = args;
|
|
212
|
+
return effect => self.withPermit(key)(effect);
|
|
213
|
+
}
|
|
214
|
+
const [self, key, effect] = args;
|
|
215
|
+
return self.withPermit(key)(effect);
|
|
216
|
+
};
|
|
217
|
+
/**
|
|
218
|
+
* Runs an effect only if the permits are immediately available.
|
|
219
|
+
*
|
|
220
|
+
* @since 4.0.0
|
|
221
|
+
* @category combinators
|
|
222
|
+
*/
|
|
223
|
+
export const withPermitsIfAvailable = (...args) => {
|
|
224
|
+
if (args.length === 2) {
|
|
225
|
+
const [self, permits] = args;
|
|
226
|
+
return effect => self.withPermitsIfAvailable(permits)(effect);
|
|
227
|
+
}
|
|
228
|
+
const [self, permits, effect] = args;
|
|
229
|
+
return self.withPermitsIfAvailable(permits)(effect);
|
|
230
|
+
};
|
|
231
|
+
//# sourceMappingURL=PartitionedSemaphore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PartitionedSemaphore.js","names":["Effect","dual","MutableHashMap","Option","PartitionedTypeId","makeUnsafe","options","maxPermits","Math","max","permits","Number","isFinite","capacity","available","succeed","take","void","release","withPermits","effect","withPermit","withPermitsIfAvailable","asSome","totalPermits","waitingPermits","partitions","empty","iterator","Symbol","releaseUnsafe","min","state","next","done","waiter","value","values","undefined","resume","key","callback","never","needed","taken","waiters","getOrElse","get","set","Set","entry","cleanup","delete","size","remove","add","sync","takePermits","uninterruptibleMask","restore","flatMap","ensuring","tryTake","suspend","none","make","self","args","length"],"sources":["../src/PartitionedSemaphore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/PubSub.d.ts
CHANGED
|
@@ -35,6 +35,7 @@ import type { LazyArg } from "./Function.ts";
|
|
|
35
35
|
import * as Latch from "./Latch.ts";
|
|
36
36
|
import * as MutableList from "./MutableList.ts";
|
|
37
37
|
import * as MutableRef from "./MutableRef.ts";
|
|
38
|
+
import * as Option from "./Option.ts";
|
|
38
39
|
import { type Pipeable } from "./Pipeable.ts";
|
|
39
40
|
import * as Scope from "./Scope.ts";
|
|
40
41
|
import type { Covariant, Invariant } from "./Types.ts";
|
|
@@ -1332,14 +1333,14 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
|
|
|
1332
1333
|
*
|
|
1333
1334
|
* // Unsafe synchronous check for remaining messages
|
|
1334
1335
|
* const remainingOption = PubSub.remainingUnsafe(subscription)
|
|
1335
|
-
* if (remainingOption) {
|
|
1336
|
-
* console.log("Messages available:", remainingOption)
|
|
1336
|
+
* if (remainingOption._tag === "Some") {
|
|
1337
|
+
* console.log("Messages available:", remainingOption.value)
|
|
1337
1338
|
* } else {
|
|
1338
1339
|
* console.log("Subscription is shutdown")
|
|
1339
1340
|
* }
|
|
1340
1341
|
*
|
|
1341
1342
|
* // Useful for polling or batching scenarios
|
|
1342
|
-
* if (remainingOption && remainingOption > 10) {
|
|
1343
|
+
* if (remainingOption._tag === "Some" && remainingOption.value > 10) {
|
|
1343
1344
|
* // Process messages in batch
|
|
1344
1345
|
* }
|
|
1345
1346
|
* ```
|
|
@@ -1347,7 +1348,7 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
|
|
|
1347
1348
|
* @since 4.0.0
|
|
1348
1349
|
* @category getters
|
|
1349
1350
|
*/
|
|
1350
|
-
export declare const remainingUnsafe: <A>(self: Subscription<A>) => number
|
|
1351
|
+
export declare const remainingUnsafe: <A>(self: Subscription<A>) => Option.Option<number>;
|
|
1351
1352
|
/**
|
|
1352
1353
|
* A strategy that applies back pressure to publishers when the `PubSub` is at
|
|
1353
1354
|
* capacity. This guarantees that all subscribers will receive all messages
|
package/dist/PubSub.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PubSub.d.ts","sourceRoot":"","sources":["../src/PubSub.ts"],"names":[],"mappings":"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"}
|
package/dist/PubSub.js
CHANGED
|
@@ -37,6 +37,7 @@ import * as Latch from "./Latch.js";
|
|
|
37
37
|
import * as MutableList from "./MutableList.js";
|
|
38
38
|
import * as MutableRef from "./MutableRef.js";
|
|
39
39
|
import { nextPow2 } from "./Number.js";
|
|
40
|
+
import * as Option from "./Option.js";
|
|
40
41
|
import { pipeArguments } from "./Pipeable.js";
|
|
41
42
|
import * as Scope from "./Scope.js";
|
|
42
43
|
const TypeId = "~effect/PubSub";
|
|
@@ -939,14 +940,14 @@ export const remaining = self => Effect.suspend(() => self.shutdownFlag.current
|
|
|
939
940
|
*
|
|
940
941
|
* // Unsafe synchronous check for remaining messages
|
|
941
942
|
* const remainingOption = PubSub.remainingUnsafe(subscription)
|
|
942
|
-
* if (remainingOption) {
|
|
943
|
-
* console.log("Messages available:", remainingOption)
|
|
943
|
+
* if (remainingOption._tag === "Some") {
|
|
944
|
+
* console.log("Messages available:", remainingOption.value)
|
|
944
945
|
* } else {
|
|
945
946
|
* console.log("Subscription is shutdown")
|
|
946
947
|
* }
|
|
947
948
|
*
|
|
948
949
|
* // Useful for polling or batching scenarios
|
|
949
|
-
* if (remainingOption && remainingOption > 10) {
|
|
950
|
+
* if (remainingOption._tag === "Some" && remainingOption.value > 10) {
|
|
950
951
|
* // Process messages in batch
|
|
951
952
|
* }
|
|
952
953
|
* ```
|
|
@@ -956,9 +957,9 @@ export const remaining = self => Effect.suspend(() => self.shutdownFlag.current
|
|
|
956
957
|
*/
|
|
957
958
|
export const remainingUnsafe = self => {
|
|
958
959
|
if (self.shutdownFlag.current) {
|
|
959
|
-
return
|
|
960
|
+
return Option.none();
|
|
960
961
|
}
|
|
961
|
-
return self.subscription.size() + self.replayWindow.remaining;
|
|
962
|
+
return Option.some(self.subscription.size() + self.replayWindow.remaining);
|
|
962
963
|
};
|
|
963
964
|
// -----------------------------------------------------------------------------
|
|
964
965
|
// internal
|