effect 4.0.1 → 4.0.3
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 +2 -2
- package/ai-docs/tsconfig.json +2 -1
- package/dist/Array.d.ts +339 -0
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +143 -3
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +88 -0
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +44 -0
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +68 -0
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -0
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +34 -0
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +18 -0
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +9 -0
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +6 -0
- package/dist/Brand.js.map +1 -1
- package/dist/ByteSize.d.ts +86 -0
- package/dist/ByteSize.d.ts.map +1 -1
- package/dist/ByteSize.js +51 -0
- package/dist/ByteSize.js.map +1 -1
- package/dist/Cache.d.ts +38 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +27 -7
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +82 -0
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +60 -0
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +327 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +168 -8
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +11 -0
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +6 -0
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +192 -0
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +78 -0
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +7 -0
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +5 -0
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +10 -0
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +8 -0
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +52 -12
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +55 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +28 -0
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -0
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +22 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +20 -0
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +50 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +24 -3
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +16 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +26 -1
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +38 -5
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +11 -2
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +13 -0
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +5 -0
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +180 -6
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +98 -6
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +51 -0
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +22 -0
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +2 -0
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +1 -0
- package/dist/Duration.d.ts +96 -6
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +80 -8
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +527 -0
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +240 -5
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -0
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -0
- package/dist/Effectable.js.map +1 -1
- package/dist/Equal.d.ts +8 -0
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +9 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +21 -0
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -0
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +36 -0
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +11 -0
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +49 -8
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +40 -0
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +27 -0
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +20 -0
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +11 -0
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +21 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +21 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +35 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +19 -0
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +20 -0
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +14 -0
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +59 -2
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +55 -0
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +28 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +3 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +39 -1
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +30 -0
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +20 -0
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +247 -12
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +149 -28
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +5 -0
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +14 -0
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +12 -0
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +91 -0
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +39 -0
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +17 -0
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +9 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +49 -0
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +19 -0
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +7 -0
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -0
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +127 -0
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +51 -0
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +4 -0
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +3 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +5 -0
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +5 -0
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +11 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +14 -0
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +10 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +100 -0
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +45 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -0
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -0
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +5 -0
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +3 -0
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +20 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +9 -0
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +25 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +30 -4
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +5 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +9 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +51 -0
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +39 -0
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +59 -0
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +31 -0
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +32 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +16 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +16 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +10 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +20 -0
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +31 -0
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +17 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +9 -0
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +6 -0
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +4 -0
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +2 -0
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +61 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +31 -0
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +41 -0
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +20 -0
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +134 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +61 -0
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +29 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +24 -0
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +7 -0
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +3 -0
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +24 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +47 -21
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +6 -0
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +4 -0
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +7 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +5 -0
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +8 -0
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -0
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +19 -0
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +8 -1
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +84 -0
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +48 -0
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +5 -0
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +4 -0
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +67 -5
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +60 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +20 -0
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +10 -0
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +60 -0
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +58 -8
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +13 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +9 -0
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +23 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +8 -0
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -0
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +3 -0
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +100 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +43 -0
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -0
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +4 -0
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -0
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +6 -0
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +4 -0
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +3 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +20 -0
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +16 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +21 -0
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +19 -0
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +3 -0
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +4 -0
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +32 -0
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +12 -0
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +42 -0
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +27 -6
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +6 -0
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +6 -0
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +91 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +41 -0
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +9 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -0
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +57 -0
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +32 -0
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +7 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +5 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +969 -2
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +635 -5
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +107 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +81 -1
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +69 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +63 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +33 -0
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +18 -0
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +25 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +26 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +147 -0
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +99 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +53 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +46 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +19 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +12 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +34 -0
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +26 -3
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +9 -0
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -0
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +26 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +10 -0
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +125 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +75 -1
- package/dist/Sink.js.map +1 -1
- package/dist/StandardSchema.d.ts +1 -0
- package/dist/StandardSchema.d.ts.map +1 -1
- package/dist/StandardSchema.js +1 -0
- package/dist/Stdio.d.ts +14 -1
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +6 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +569 -11
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +266 -18
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +87 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +61 -0
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +46 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +19 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +65 -0
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +25 -0
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +2 -0
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +2 -0
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +63 -0
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +24 -0
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +3 -0
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +1 -0
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +8 -0
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +4 -0
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +23 -0
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +12 -0
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +68 -0
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +28 -0
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +38 -0
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +18 -0
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +52 -0
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +23 -0
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +15 -0
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +8 -0
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +83 -0
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +52 -7
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +51 -0
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +29 -4
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +30 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +22 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +25 -0
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +19 -0
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +51 -0
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +30 -0
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +24 -0
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +32 -18
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +14 -0
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +7 -0
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +25 -0
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +29 -13
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +25 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +12 -0
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +36 -0
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +1 -0
- package/dist/UndefinedOr.d.ts +15 -0
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +9 -0
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +15 -0
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +2 -0
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +4 -0
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +1 -0
- package/dist/Utils.js.map +1 -1
- package/dist/Version.d.ts +26 -0
- package/dist/Version.d.ts.map +1 -0
- package/dist/Version.js +36 -0
- package/dist/Version.js.map +1 -0
- package/dist/ai/Chat.js +1 -1
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +22 -0
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +22 -4
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +14 -13
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +38 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +276 -190
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Telemetry.d.ts +49 -41
- package/dist/ai/Telemetry.d.ts.map +1 -1
- package/dist/ai/Telemetry.js +6 -8
- package/dist/ai/Telemetry.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
- package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
- package/dist/ai/internal/mcpProtocol.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +80 -46
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
- package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
- package/dist/cli/CliOutput.d.ts +27 -0
- package/dist/cli/CliOutput.d.ts.map +1 -1
- package/dist/cli/CliOutput.js +33 -10
- package/dist/cli/CliOutput.js.map +1 -1
- package/dist/cli/Command.d.ts.map +1 -1
- package/dist/cli/Command.js +6 -3
- package/dist/cli/Command.js.map +1 -1
- package/dist/cli/Completions.d.ts +3 -3
- package/dist/cli/Completions.d.ts.map +1 -1
- package/dist/cli/Completions.js +8 -5
- package/dist/cli/Completions.js.map +1 -1
- package/dist/cli/GlobalFlag.d.ts +5 -4
- package/dist/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/cli/GlobalFlag.js +3 -3
- package/dist/cli/GlobalFlag.js.map +1 -1
- package/dist/cli/Prompt.d.ts +17 -1
- package/dist/cli/Prompt.d.ts.map +1 -1
- package/dist/cli/Prompt.js +119 -114
- package/dist/cli/Prompt.js.map +1 -1
- package/dist/cli/internal/ansi.d.ts +0 -1
- package/dist/cli/internal/ansi.d.ts.map +1 -1
- package/dist/cli/internal/ansi.js +20 -3
- package/dist/cli/internal/ansi.js.map +1 -1
- package/dist/cli/internal/completions/powershell.d.ts +2 -0
- package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
- package/dist/cli/internal/completions/powershell.js +273 -0
- package/dist/cli/internal/completions/powershell.js.map +1 -0
- package/dist/cli/internal/completions/zsh.js +3 -2
- package/dist/cli/internal/completions/zsh.js.map +1 -1
- package/dist/cli/internal/wizard.d.ts +3 -3
- package/dist/cli/internal/wizard.d.ts.map +1 -1
- package/dist/cli/internal/wizard.js +21 -18
- package/dist/cli/internal/wizard.js.map +1 -1
- package/dist/cluster/ClusterSchema.d.ts +28 -0
- package/dist/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/cluster/ClusterSchema.js +30 -0
- package/dist/cluster/ClusterSchema.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +10 -18
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.js.map +1 -1
- package/dist/cluster/MessageStorage.d.ts +18 -3
- package/dist/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/cluster/MessageStorage.js +31 -11
- package/dist/cluster/MessageStorage.js.map +1 -1
- package/dist/cluster/Runners.d.ts.map +1 -1
- package/dist/cluster/Runners.js +8 -2
- package/dist/cluster/Runners.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +181 -62
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts +59 -19
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +84 -55
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +191 -113
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +104 -37
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/encoding/Base64.d.ts +4 -0
- package/dist/encoding/Base64.d.ts.map +1 -1
- package/dist/encoding/Base64.js +4 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +4 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +4 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/EncodingError.d.ts +4 -0
- package/dist/encoding/EncodingError.d.ts.map +1 -1
- package/dist/encoding/EncodingError.js +4 -0
- package/dist/encoding/EncodingError.js.map +1 -1
- package/dist/encoding/Hex.d.ts +5 -0
- package/dist/encoding/Hex.d.ts.map +1 -1
- package/dist/encoding/Hex.js +5 -0
- package/dist/encoding/Hex.js.map +1 -1
- package/dist/encoding/Toml.js +2 -2
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +6 -4
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/index.d.ts +4 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +4 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +8 -4
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/http/FindMyWay/internal/router.js +3 -6
- package/dist/http/FindMyWay/internal/router.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -1
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +4 -2
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +15 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +79 -23
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientResponse.js +3 -1
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +3 -0
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +5 -2
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +17 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +56 -39
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpServer.d.ts +1 -1
- package/dist/http/HttpServer.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -2
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/internal/tracing.d.ts +2 -0
- package/dist/http/internal/tracing.d.ts.map +1 -0
- package/dist/http/internal/tracing.js +37 -0
- package/dist/http/internal/tracing.js.map +1 -0
- package/dist/http-api/HttpApiBuilder.js +2 -1
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +12 -3
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +4 -3
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +7 -4
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiSecurity.d.ts +8 -8
- package/dist/http-api/HttpApiSecurity.js +8 -8
- package/dist/index.d.ts +155 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/array.js +3 -3
- package/dist/internal/arbitrary/array.js.map +1 -1
- package/dist/internal/arbitrary/model.js +26 -11
- package/dist/internal/arbitrary/model.js.map +1 -1
- package/dist/internal/arbitrary/runner.js +8 -8
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/arbitrary/schema.js +4 -5
- package/dist/internal/arbitrary/schema.js.map +1 -1
- package/dist/internal/effect.js +53 -46
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/schedule.js +7 -5
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +2 -2
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/version.d.ts +2 -0
- package/dist/internal/version.d.ts.map +1 -0
- package/dist/internal/version.js +3 -0
- package/dist/internal/version.js.map +1 -0
- package/dist/net/AddressResolver.d.ts +145 -0
- package/dist/net/AddressResolver.d.ts.map +1 -0
- package/dist/net/AddressResolver.js +114 -0
- package/dist/net/AddressResolver.js.map +1 -0
- package/dist/net/Dns.d.ts +596 -0
- package/dist/net/Dns.d.ts.map +1 -0
- package/dist/net/Dns.js +549 -0
- package/dist/net/Dns.js.map +1 -0
- package/dist/net/Host.d.ts +320 -0
- package/dist/net/Host.d.ts.map +1 -0
- package/dist/net/Host.js +342 -0
- package/dist/net/Host.js.map +1 -0
- package/dist/net/IpInterface.d.ts +76 -3
- package/dist/net/IpInterface.d.ts.map +1 -1
- package/dist/net/IpInterface.js +53 -4
- package/dist/net/IpInterface.js.map +1 -1
- package/dist/net/IpNetwork.d.ts +82 -8
- package/dist/net/IpNetwork.d.ts.map +1 -1
- package/dist/net/IpNetwork.js +60 -4
- package/dist/net/IpNetwork.js.map +1 -1
- package/dist/net/NetAddress.d.ts +388 -35
- package/dist/net/NetAddress.d.ts.map +1 -1
- package/dist/net/NetAddress.js +350 -34
- package/dist/net/NetAddress.js.map +1 -1
- package/dist/net/index.d.ts +15 -0
- package/dist/net/index.d.ts.map +1 -1
- package/dist/net/index.js +15 -0
- package/dist/net/index.js.map +1 -1
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -6
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +23 -27
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +5 -3
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +36 -115
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpResource.d.ts +4 -3
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +20 -23
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +1 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +32 -36
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/PrometheusMetrics.js +1 -0
- package/dist/observability/PrometheusMetrics.js.map +1 -1
- package/dist/observability/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/persistence/PersistedQueue.d.ts +32 -3
- package/dist/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/persistence/PersistedQueue.js +75 -16
- package/dist/persistence/PersistedQueue.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/Atom.d.ts +5 -5
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +9 -5
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +2 -2
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +8 -0
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +41 -7
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +50 -25
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts +6 -0
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +59 -40
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/internal/tracing.d.ts +2 -0
- package/dist/rpc/internal/tracing.d.ts.map +1 -0
- package/dist/rpc/internal/tracing.js +18 -0
- package/dist/rpc/internal/tracing.js.map +1 -0
- package/dist/schema/SchemaCompiler/runtime.js +9 -1
- package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
- package/dist/socket/DatagramSocket.d.ts +456 -0
- package/dist/socket/DatagramSocket.d.ts.map +1 -0
- package/dist/socket/DatagramSocket.js +535 -0
- package/dist/socket/DatagramSocket.js.map +1 -0
- package/dist/socket/Socket.d.ts +14 -1
- package/dist/socket/Socket.d.ts.map +1 -1
- package/dist/socket/Socket.js +9 -1
- package/dist/socket/Socket.js.map +1 -1
- package/dist/socket/index.d.ts +5 -0
- package/dist/socket/index.d.ts.map +1 -1
- package/dist/socket/index.js +5 -0
- package/dist/socket/index.js.map +1 -1
- package/dist/sql/Migrator.d.ts.map +1 -1
- package/dist/sql/Migrator.js +7 -2
- package/dist/sql/Migrator.js.map +1 -1
- package/dist/sql/SqlClient.d.ts +7 -1
- package/dist/sql/SqlClient.d.ts.map +1 -1
- package/dist/sql/SqlClient.js +35 -10
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/Statement.d.ts +21 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +55 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -0
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +7 -0
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +7 -0
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +6 -0
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/TestCrypto.d.ts +73 -0
- package/dist/testing/TestCrypto.d.ts.map +1 -0
- package/dist/testing/TestCrypto.js +87 -0
- package/dist/testing/TestCrypto.js.map +1 -0
- package/dist/testing/index.d.ts +8 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +8 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/DurableDeferred.d.ts +54 -0
- package/dist/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/workflow/DurableDeferred.js +78 -49
- package/dist/workflow/DurableDeferred.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +2 -1
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +3 -3
- package/src/Array.ts +351 -3
- package/src/BigDecimal.ts +88 -0
- package/src/BigInt.ts +68 -0
- package/src/Boolean.ts +34 -0
- package/src/Brand.ts +10 -0
- package/src/ByteSize.ts +87 -0
- package/src/Cache.ts +50 -8
- package/src/Cause.ts +82 -0
- package/src/Channel.ts +368 -18
- package/src/ChannelSchema.ts +13 -0
- package/src/Chunk.ts +193 -0
- package/src/Clock.ts +7 -0
- package/src/Combiner.ts +10 -0
- package/src/Config.ts +82 -8
- package/src/ConfigProvider.ts +28 -0
- package/src/Console.ts +26 -0
- package/src/Context.ts +53 -3
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +48 -9
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +180 -6
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +126 -16
- package/src/Effect.ts +539 -5
- package/src/Effectable.ts +4 -0
- package/src/Equal.ts +12 -1
- package/src/Equivalence.ts +22 -0
- package/src/ErrorReporter.ts +36 -0
- package/src/ExecutionPlan.ts +58 -14
- package/src/Exit.ts +40 -0
- package/src/Fiber.ts +20 -0
- package/src/FiberHandle.ts +29 -4
- package/src/FiberMap.ts +38 -0
- package/src/FiberSet.ts +21 -0
- package/src/FileSystem.ts +64 -2
- package/src/Filter.ts +55 -0
- package/src/Formatter.ts +42 -1
- package/src/Function.ts +30 -0
- package/src/Graph.ts +317 -36
- package/src/HKT.ts +5 -0
- package/src/Hash.ts +15 -0
- package/src/HashMap.ts +91 -0
- package/src/HashRing.ts +18 -0
- package/src/HashSet.ts +53 -0
- package/src/Inspectable.ts +8 -0
- package/src/Iterable.ts +127 -0
- package/src/JsonPatch.ts +5 -0
- package/src/JsonPointer.ts +5 -0
- package/src/JsonSchema.ts +17 -0
- package/src/Latch.ts +14 -0
- package/src/Layer.ts +101 -1
- package/src/LayerMap.ts +7 -0
- package/src/LayerRef.ts +5 -0
- package/src/LogLevel.ts +20 -0
- package/src/Logger.ts +41 -5
- package/src/ManagedRuntime.ts +12 -1
- package/src/Match.ts +52 -0
- package/src/Metric.ts +69 -0
- package/src/MutableHashMap.ts +44 -0
- package/src/MutableHashSet.ts +17 -0
- package/src/MutableList.ts +21 -0
- package/src/MutableRef.ts +32 -0
- package/src/Newtype.ts +9 -0
- package/src/NonEmptyIterable.ts +4 -0
- package/src/Number.ts +61 -0
- package/src/Optic.ts +57 -0
- package/src/Option.ts +134 -0
- package/src/Order.ts +30 -0
- package/src/Ordering.ts +7 -0
- package/src/PartitionedSemaphore.ts +61 -22
- package/src/Path.ts +6 -0
- package/src/Pipeable.ts +7 -0
- package/src/PlatformError.ts +8 -0
- package/src/Pool.ts +20 -1
- package/src/Predicate.ts +85 -0
- package/src/PrimaryKey.ts +5 -0
- package/src/PubSub.ts +90 -9
- package/src/Pull.ts +20 -0
- package/src/Queue.ts +80 -10
- package/src/Random.ts +13 -0
- package/src/RcMap.ts +23 -0
- package/src/RcRef.ts +6 -0
- package/src/Record.ts +100 -0
- package/src/Redactable.ts +6 -0
- package/src/Redacted.ts +8 -0
- package/src/Reducer.ts +4 -0
- package/src/Ref.ts +42 -0
- package/src/References.ts +21 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +32 -0
- package/src/RequestResolver.ts +59 -10
- package/src/Resource.ts +7 -0
- package/src/Result.ts +93 -0
- package/src/Runtime.ts +10 -0
- package/src/Schedule.ts +61 -0
- package/src/Scheduler.ts +7 -0
- package/src/Schema.ts +1168 -9
- package/src/SchemaAST.ts +115 -1
- package/src/SchemaGetter.ts +80 -4
- package/src/SchemaIssue.ts +34 -0
- package/src/SchemaParser.ts +26 -0
- package/src/SchemaRepresentation.ts +148 -0
- package/src/SchemaTransformation.ts +53 -0
- package/src/Scope.ts +19 -0
- package/src/ScopedCache.ts +55 -3
- package/src/ScopedRef.ts +9 -0
- package/src/Semaphore.ts +26 -0
- package/src/Sink.ts +126 -2
- package/src/StandardSchema.ts +1 -0
- package/src/Stdio.ts +16 -2
- package/src/Stream.ts +633 -26
- package/src/String.ts +87 -0
- package/src/Struct.ts +46 -0
- package/src/SubscriptionRef.ts +65 -0
- package/src/Symbol.ts +2 -0
- package/src/SynchronizedRef.ts +63 -0
- package/src/Take.ts +3 -0
- package/src/Terminal.ts +8 -0
- package/src/Tracer.ts +23 -0
- package/src/Trie.ts +68 -0
- package/src/Tuple.ts +38 -0
- package/src/TxChunk.ts +52 -0
- package/src/TxDeferred.ts +15 -0
- package/src/TxHashMap.ts +97 -6
- package/src/TxHashSet.ts +83 -3
- package/src/TxPriorityQueue.ts +34 -2
- package/src/TxPubSub.ts +26 -0
- package/src/TxQueue.ts +51 -0
- package/src/TxReentrantLock.ts +53 -36
- package/src/TxRef.ts +14 -0
- package/src/TxSemaphore.ts +47 -31
- package/src/TxSubscriptionRef.ts +25 -0
- package/src/Types.ts +36 -0
- package/src/UndefinedOr.ts +15 -0
- package/src/Unify.ts +15 -0
- package/src/Utils.ts +4 -0
- package/src/Version.ts +38 -0
- package/src/ai/Chat.ts +1 -1
- package/src/ai/DecisionModel.ts +42 -1
- package/src/ai/LanguageModel.ts +16 -19
- package/src/ai/McpServer.ts +169 -58
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
- package/src/ai/internal/mcpProtocol.ts +3 -0
- package/src/ai/internal/mcpRuntime.ts +86 -43
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cli/CliOutput.ts +33 -16
- package/src/cli/Command.ts +4 -3
- package/src/cli/Completions.ts +9 -6
- package/src/cli/GlobalFlag.ts +19 -11
- package/src/cli/Prompt.ts +159 -149
- package/src/cli/internal/ansi.ts +26 -3
- package/src/cli/internal/completions/powershell.ts +322 -0
- package/src/cli/internal/completions/zsh.ts +4 -2
- package/src/cli/internal/wizard.ts +34 -26
- package/src/cluster/ClusterSchema.ts +32 -0
- package/src/cluster/ClusterWorkflowEngine.ts +13 -24
- package/src/cluster/K8sHttpClient.ts +12 -2
- package/src/cluster/MessageStorage.ts +45 -14
- package/src/cluster/Runners.ts +8 -2
- package/src/cluster/Sharding.ts +207 -49
- package/src/cluster/SqlMessageStorage.ts +118 -84
- package/src/cluster/SqlRunnerStorage.ts +224 -128
- package/src/cluster/internal/entityManager.ts +151 -55
- package/src/encoding/Base64.ts +4 -0
- package/src/encoding/Base64Url.ts +4 -0
- package/src/encoding/EncodingError.ts +5 -0
- package/src/encoding/Hex.ts +5 -0
- package/src/encoding/Toml.ts +2 -2
- package/src/encoding/Yaml.ts +8 -4
- package/src/encoding/index.ts +4 -0
- package/src/eventlog/SqlEventJournal.ts +18 -4
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
- package/src/http/FindMyWay/internal/router.ts +4 -7
- package/src/http/Headers.ts +8 -2
- package/src/http/HttpClient.ts +100 -29
- package/src/http/HttpClientResponse.ts +3 -1
- package/src/http/HttpEffect.ts +11 -2
- package/src/http/HttpMiddleware.ts +60 -45
- package/src/http/HttpServer.ts +1 -1
- package/src/http/HttpTraceContext.ts +8 -2
- package/src/http/internal/tracing.ts +52 -0
- package/src/http-api/HttpApiBuilder.ts +5 -1
- package/src/http-api/HttpApiClient.ts +13 -4
- package/src/http-api/HttpApiError.ts +8 -4
- package/src/http-api/HttpApiSecurity.ts +8 -8
- package/src/index.ts +156 -0
- package/src/internal/arbitrary/array.ts +3 -3
- package/src/internal/arbitrary/model.ts +37 -14
- package/src/internal/arbitrary/runner.ts +7 -7
- package/src/internal/arbitrary/schema.ts +4 -3
- package/src/internal/effect.ts +62 -58
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/net/AddressResolver.ts +222 -0
- package/src/net/Dns.ts +1035 -0
- package/src/net/Host.ts +472 -0
- package/src/net/IpInterface.ts +117 -7
- package/src/net/IpNetwork.ts +116 -17
- package/src/net/NetAddress.ts +611 -76
- package/src/net/index.ts +18 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +46 -116
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/PrometheusMetrics.ts +1 -0
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- package/src/persistence/PersistedQueue.ts +146 -53
- package/src/reactivity/AsyncResult.ts +1 -1
- package/src/reactivity/Atom.ts +10 -6
- package/src/reactivity/AtomHttpApi.ts +2 -4
- package/src/reactivity/AtomRegistry.ts +7 -0
- package/src/rpc/RpcClient.ts +87 -41
- package/src/rpc/RpcServer.ts +85 -48
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/socket/DatagramSocket.ts +919 -0
- package/src/socket/Socket.ts +22 -2
- package/src/socket/index.ts +6 -0
- package/src/sql/Migrator.ts +21 -5
- package/src/sql/SqlClient.ts +43 -19
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/TestCrypto.ts +94 -0
- package/src/testing/index.ts +9 -0
- package/src/workflow/DurableDeferred.ts +123 -48
- package/src/workflow/WorkflowEngine.ts +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Runners.js","names":[],"sources":["../../src/cluster/Runners.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;AAaA,OAAO,KAAK,OAAO,MAAM,eAAe;AACxC,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,IAAI,MAAM,YAAY;AAClC,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,MAAM,MAAM,cAAc;AACtC,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,KAAK,MAAM,aAAa;AACpC,OAAO,KAAK,GAAG,MAAM,eAAe;AACpC,OAAO,KAAK,UAAU,MAAM,qBAAqB;AAEjD,OAAO,KAAK,QAAQ,MAAM,oBAAoB;AAC9C,OAAO,KAAK,SAAS,MAAM,qBAAqB;AAEhD,OAAO,KAAK,MAAM,MAAM,cAAc;AAGtC,SAAS,wBAAwB,EAAE,yBAAyB,EAAE,WAAW,EAAE,iBAAiB,QAAQ,mBAAmB;AACvH,SAAS,SAAS,QAAQ,oBAAoB;AAC9C,OAAO,KAAK,QAAQ,MAAM,eAAe;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc;AACvC,OAAO,KAAK,cAAc,MAAM,qBAAqB;AACrD,OAAO,KAAK,KAAK,MAAM,YAAY;AAEnC,SAAS,cAAc,QAAQ,qBAAqB;AACpD,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;;;;;;;AASA,OAAM,MAAO,OAAQ,sBAAQ,OAAO,CAAC,OAAO,EAsFxC,CAAC,wBAAwB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAM,IAAI,gBAQb,MAAM,CAAC,UAAU,CAAC,WAAU,OAAO;EACrC,MAAM,OAAO,GAAG,OAAO,cAAc,CAAC,cAAc;EACpD,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,KAAK;EACxC,MAAM,YAAY,GAAG,OAAO,SAAS,CAAC,SAAS;EAC/C,MAAM,MAAM,GAAG,OAAO,cAAc;EACpC,MAAM;IAAE,QAAQ;IAAE,GAAG;EAAc,CAAE,GAAG,OAAO;EAE/C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA4C;EAE7E,SAAS,UAAU,CACjB,OAA8B,EAC9B,YAA8F;IAE9F,MAAM,GAAG,GAAG,OAAO,CAAC,GAA8B;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;IACzD,IAAI,CAAC,SAAS,EAAE;MACd,OAAO,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;IACrC;IAEA,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE;MACvC,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;MACnE,MAAM,SAAS,GAAG,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS;MACzD,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;MAC5C,IAAI,SAAS,EAAE;QACb,OAAO,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC;UACrC,GAAG,OAAO;UACV,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS;SACnD,CAAC;MACJ;MACA,OAAO,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CACvC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,EAC/C,MAAM,CAAC,OAAO,CACZ,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CACtG,CACF;IACH;IAEA;IACA;IACA;IACA;IACA;IACA,OAAO,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,EAC7E,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC;MAC/B,OAAO,EAAE,MAAM,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;MAC3C,SAAS,EAAE,CAAC;QAAE,iBAAiB;QAAE;MAAU,CAAE,KAAI;QAC/C;QACA;QACA,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;UACnF,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3F;QACA,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;QAC7D,OAAO,YAAY,CACjB,IAAI,OAAO,CAAC,eAAe,CAAC;UAC1B,GAAG,OAAO;UACV,iBAAiB;UACjB,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC;YAC7B,GAAG,OAAO,CAAC,QAAQ;YACnB,SAAS,EAAE;WACZ,CAAC;UACF,OAAO,CAAC,KAAK;YACX,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;cAC7B,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YACtD;YACA,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;UACzE;SACD,CAAC,EACF,IAAI,CACL;MACH;KACD,CAAC,CACH;EACH;EAQA,MAAM,eAAe,GAAG,IAAI,GAAG,EAA4C;EAC3E,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAqD;EAC3F,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CACxC,WAAU,OAAqC;IAC7C,IAAI,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC3D,IAAI,KAAK,EAAE;MACT,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;MAC3B,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;MAC3C,OAAO,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK;IACrC,CAAC,MAAM;MACL,KAAK,GAAG;QACN,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;QAC9B,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC;OAC5B;MACD,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;IACxD;IAEA,OAAO,IAAI,EAAE;MACX;MACA,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;MACzB,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;MAC/D,YAAY,CAAC,UAAU,EAAE;MACzB,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK;MAExB;MACA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9B;QACA,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE;UAC7B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;YACpC,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;UAC/B;UACA,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE;UAC7B;QACF;QAEA,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;QACzB,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;UACpC,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/B;QACA;QACA,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK;MAC1B;MACA,KAAK,CAAC,OAAO,GAAG,EAAE;IACpB;EACF,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,KACd,MAAM,CAAC,QAAQ,CACb,MAAM,EACN,MAAM,CAAC,IAAI,CAAC,MAAK;IACf,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC7D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE;MACrC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;MAC/B;IACF;IACA,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClD,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;EAC3D,CAAC,CAAC,CACH,CACJ;EAED,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;EAC5C,IAAI,OAAO,KAAK,cAAc,CAAC,IAAI,EAAE;IACnC,OAAO,MAAM,CAAC,GAAG,CAAC,aAAS;MACzB,MAAM,aAAa,GAAG,IAAI,GAAG,EAAuB;MAEpD,OAAO,IAAI,EAAE;QACX,OAAO,YAAY,CAAC,KAAK;QACzB,YAAY,CAAC,WAAW,EAAE;QAE1B,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC7E,MAAM,CAAC,UAAU,CAAE,KAAK,IACtB,MAAM,CAAC,EAAE,CACP,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;UAC1C,OAAO,EAAE,iBAAiB;UAC1B,MAAM,EAAE,SAAS;UACjB,KAAK,EAAE;SACR,CAAC,EACF,EAAE,CACH,CACF,CACF;QAED;QACA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;UACvC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC;UACxB,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;UAClD,IAAI,CAAC,KAAK,EAAE;UACZ,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;UACzB,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;UAC9C,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1B;QAEA,aAAa,CAAC,OAAO,CAAE,KAAK,IAAK,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;QAC1D,aAAa,CAAC,KAAK,EAAE;MACvB;IACF,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAC5B;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,MAAK;MACzB,IAAI,sBAAsB,CAAC,IAAI,KAAK,CAAC,EAAE;QACrC,OAAO,YAAY,CAAC,KAAK;MAC3B;MACA,OAAO,YAAY,CAAC,IAAI;IAC1B,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAC5C,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAC5B;EACH;EAEA,OAAO,OAAO,CAAC,EAAE,CAAC;IAChB,GAAG,cAAc;IACjB,SAAS,CAAC,OAAO;MACf,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO;MAC/B,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE;QACxC,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;MACjE;MACA,OAAO,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,CAC9C,MAAM,CAAC,OAAO,CAAE,OAAO,IAAK,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,EACjF,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAC5B,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAG,KAAK,IAAI;QAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE;UACvC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1B;QACA,OAAO,OAAO,CAAC,OAAO,CACpB,IAAI,KAAK,CAAC,QAAQ,CAAC;UACjB,EAAE,EAAE,YAAY,CAAC,UAAU,EAAE;UAC7B,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;UACrC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK;SACrB,CAAC,CACH;MACH,CAAC,CAAC,CACH;IACH,CAAC;IACD,MAAM,CAAC,QAAQ;MACb,MAAM;QAAE,OAAO;QAAE;MAAO,CAAE,GAAG,QAAQ;MACrC,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,KAAI;QAChD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE;UAClD,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;QACjC,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;UACxD,OAAO,MAAM,CAAC,KAAK,CACjB,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK;YAC/B;WACD,CAAC,EACD,CAAC,IAAK,gBAAgB,CAAC,OAAO,CAAC,CACjC;QACH;QACA,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAClC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAC1C;MACH,CAAC,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,OAAO;MACjB,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,KAAI;QACxD,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE;UAC1D,OAAO,MAAM,CAAC,QAAQ,CACpB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,EAC1D,2BAA2B,EAC3B,MAAM,MAAM,CAAC,IAAI,CAClB;QACH,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,EAAE;UACrD,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACpE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,EACrD,MAAM,CAAC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAC9E;QACH;QACA,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACpE,MAAM,CAAC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,EAC/D,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAC1C;MACH,CAAC,CAAC;IACJ;GACD,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;AASA,OAAO,MAAM,QAAQ,gBAIjB,IAAI,CAAC;EACP,QAAQ,EAAE,MAAM,CAAC,WAAwC;EACzD,IAAI,EAAE,CAAC;IAAE;EAAO,CAAE,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,yBAAyB,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;EAAO,CAAE,CAAC,CAAC;EACxG,MAAM,EAAE,MAAM,MAAM,CAAC,IAAI;EACzB,IAAI,EAAE,MAAM,MAAM,CAAC,IAAI;EACvB,mBAAmB,EAAE,MAAM,MAAM,CAAC;CACnC,CAAC;AAEF;;;;;;;;AAQA,OAAO,MAAM,SAAS,gBAIlB,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,cAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;AAEnF,MAAM,SAAS,gBAIV,MAAM,CAAC,KAAK,CAAC,CAChB,yBAAyB,EACzB,WAAW,EACX,wBAAwB,CACzB,CAAC;AAEF;;;;;;;;AAQA,OAAM,MAAO,IAAK,sBAAQ,QAAQ,CAAC,IAAI,cACrC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,eAChB,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;EACjB,OAAO,EAAE;IACP,QAAQ,EAAE,QAAQ,CAAC,OAAO;IAC1B,SAAS,EAAE,MAAM,CAAC;GACnB;EACD,OAAO,EAAE,MAAM,CAAC,IAAI;EACpB,KAAK,EAAE;CACR,CAAC,eACF,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;EACjB,OAAO,EAAE;IACP,OAAO,EAAE,QAAQ,CAAC,cAAc;IAChC,SAAS,EAAE,MAAM,CAAC;GACnB;EACD,OAAO,EAAE,KAAK,CAAC,OAAO;EACtB,KAAK,EAAE;CACR,CAAC,eACF,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;EACjB,OAAO,EAAE;IACP,OAAO,EAAE,QAAQ,CAAC,cAAc;IAChC,SAAS,EAAE,MAAM,CAAC;GACnB;EACD,KAAK,EAAE,SAAS;EAChB,OAAO,EAAE,KAAK,CAAC,OAAO;EACtB,MAAM,EAAE;CACT,CAAC,eACF,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE;EACnB,OAAO,EAAE;IACP,QAAQ,eAAE,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/D,SAAS,EAAE,MAAM,CAAC;GACnB;EACD,KAAK,EAAE;CACR,CAAC,CACH;AAWD;;;;;;;;AAQA,OAAO,MAAM,aAAa,gBAItB,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;EAAE,UAAU,EAAE,SAAS;EAAE,cAAc,EAAE;AAAI,CAAE,CAAC;AAE1E;;;;;;;;;AASA,OAAO,MAAM,OAAO,gBAIhB,MAAM,CAAC,GAAG,CAAC,aAAS;EACtB,MAAM,cAAc,GAAG,OAAO,iBAAiB;EAC/C,MAAM,YAAY,GAAG,OAAO,SAAS,CAAC,SAAS;EAE/C,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,IAAI,CAAC;IAChC,MAAM,EAAG,OAAsB,IAC7B,MAAM,CAAC,OAAO,CACZ,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAC3B,QAAQ,IACP,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAClE,MAAM,KAAM;MAAE,MAAM;MAAE,QAAQ,EAAE,QAAQ,CAAC;IAAQ,CAAE,CAAC,CACtD,CACJ;IACH,cAAc,EAAE;GACjB,CAAC;EAEF,OAAO,OAAO,IAAI,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ;IACjC,IAAI,CAAC,OAAO;MACV,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CACrC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAE;MAAM,CAAE,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,EAC7C,MAAM,CAAC,UAAU,CAAC,MAChB,MAAM,CAAC,OAAO,CACZ,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAClC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;QAAE;MAAO,CAAE,CAAC,CAAC,CAChD,CACF,EACD,MAAM,CAAC,MAAM,CACd;IACH,CAAC;IACD,IAAI,CAAC;MAAE,OAAO;MAAE;IAAO,CAAE;MACvB,MAAM,GAAG,GAAG,OAAO,CAAC,GAA8B;MAClD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;MAC3D,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE;QACvC,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CACrC,MAAM,CAAC,OAAO,CAAC,CAAC;UAAE;QAAM,CAAE,KACxB,MAAM,CAAC,QAAQ,CAAC;UACd,QAAQ,EAAE,OAAO,CAAC,QAAQ;UAC1B,SAAS,EAAE;SACZ,CAAC,CACH,EACD,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;UAAE;QAAO,CAAE,CAAC,CAAC,CAAC,CACzF;MACH;MACA;MACA;MACA,MAAM,aAAa,GAAI,MAAe,IACpC,WAAW,GACP,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;QAAE;MAAO,CAAE,CAAC,CAAC,GAC/C,OAAO,CAAC,OAAO,CACf,IAAI,KAAK,CAAC,QAAQ,CAAC;QACjB,EAAE,EAAE,YAAY,CAAC,UAAU,EAAE;QAC7B,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;QACrC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM;OACtB,CAAC,CACH;MACL,MAAM,gBAAgB,GAAI,KAAuB,IAC/C,OAAO,CAAC,OAAO,CACb,IAAI,KAAK,CAAC,QAAQ,CAAC;QACjB,EAAE,EAAE,YAAY,CAAC,UAAU,EAAE;QAC7B,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;QACrC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK;OACrB,CAAC,CACH;MACH,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC;MAC5D,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CACrC,MAAM,CAAC,OAAO,CAAC,CAAC;UAAE,MAAM;UAAE;QAAQ,CAAE,KAClC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;UAC9D,SAAS,EAAG,OAAO,IACjB,MAAM,CAAC,MAAM,CAAC;YACZ,OAAO;YACP,SAAS,EAAE;WACZ,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAE,KAAK,IACnB,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CACjE,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EACtC,MAAM,CAAC,KAAK,CACb,CACF,EACD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAC/B,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;YAAE;UAAO,CAAE,CAAC,CAAC,CAAC,EACxF,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAClC;UACH,SAAS,EAAE;SACZ,CAAC,CACH,EACD,MAAM,CAAC,MAAM,CACd;MACH;MACA,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CACrC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAE,MAAM;QAAE;MAAQ,CAAE,KAClC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAC9D,SAAS,EAAG,OAAO,IACjB,MAAM,CAAC,MAAM,CAAC;UACZ,OAAO;UACP,SAAS,EAAE;SACZ,EAAE;UAAE,OAAO,EAAE;QAAI,CAAE,CAAC,CAAC,IAAI,CACxB,MAAM,CAAC,OAAO,CAAE,KAAK,IAAI;UACvB,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;UACtE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAC3B,MAAM,CAAC,OAAO,CAAE,KAAK,IAAK,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EACtD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAC/B,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EACtC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAG,CAAC,IAAK,MAAM,CAAC,IAAI,CAAC,EAC3C,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;YAAE;UAAO,CAAE,CAAC,CAAC,CAAC,EACxF,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAClC;QACH,CAAC,CAAC,CACH;QACH,SAAS,EAAE;OACZ,CAAC,CACH,EACD,MAAM,CAAC,MAAM,CACd;IACH,CAAC;IACD,MAAM,CAAC;MAAE,OAAO;MAAE;IAAO,CAAE;MACzB,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,MAAM,CAAC,IAAI;MACpB;MACA,MAAM,GAAG,GAAG,OAAO,CAAC,GAA8B;MAClD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;MAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;MACjC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CACnD,MAAM,CAAC,OAAO,CAAC,CAAC;QAAE,MAAM;QAAE;MAAQ,CAAE,KAAI;QACtC,MAAM,MAAM,GACV,OAAO,CAAC,IAAI,KAAK,iBAAiB,GAC9B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,GACzD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,EAAG,QAAQ,IACrC,MAAM,CAAC,MAAM,CAAC;UACZ,QAAQ;UACR,SAAS,EAAE;SACZ,CAAC,CAAC;MACP,CAAC,CAAC,EACF,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;MAAK,CAAE,CAAC,CAAC,CAAC,CACxG;MACD,OAAO,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM;IACrD,CAAC;IACD,mBAAmB,EAAG,OAAO,IAAK,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO;GACpE,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;AAQA,OAAO,MAAM,QAAQ,gBAIjB,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,cACrC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CACxC;AAED;;;;;;;;AAQA,OAAM,MAAO,iBAAkB,sBAAQ,OAAO,CAAC,OAAO,EAMnD,CAAC,0CAA0C,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Runners.js","names":[],"sources":["../../src/cluster/Runners.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../src/cluster/Sharding.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../src/cluster/Sharding.ts"],"names":[],"mappings":"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"}
|
package/dist/cluster/Sharding.js
CHANGED
|
@@ -118,6 +118,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
118
118
|
// the active shards are the ones that we have acquired the lock for
|
|
119
119
|
const acquiredShards = MutableHashSet.empty();
|
|
120
120
|
const activeShardsLatch = yield* Latch.make(false);
|
|
121
|
+
// open once shutdown starts handing every shard off
|
|
122
|
+
const handoffLatch = Latch.makeUnsafe(false);
|
|
123
|
+
// open once the handoff has released every shard lock
|
|
124
|
+
const handedOffLatch = Latch.makeUnsafe(false);
|
|
125
|
+
// serializes runner registration with unregistration, so a registration
|
|
126
|
+
// in flight cannot re-advertise a runner that is shutting down
|
|
127
|
+
const withRegistrationLock = Semaphore.makeUnsafe(1).withPermits(1);
|
|
121
128
|
const events = yield* PubSub.unbounded();
|
|
122
129
|
const getRegistrationEvents = Stream.fromPubSub(events);
|
|
123
130
|
const isLocalRunner = address => {
|
|
@@ -131,6 +138,23 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
131
138
|
function isEntityOnLocalShards(address) {
|
|
132
139
|
return MutableHashSet.has(acquiredShards, address.shardId);
|
|
133
140
|
}
|
|
141
|
+
function isAwaitingShardLock(shardId) {
|
|
142
|
+
return !MutableRef.get(isShutdown) && MutableHashSet.has(selfShards, shardId) && !MutableHashSet.has(acquiredShards, shardId);
|
|
143
|
+
}
|
|
144
|
+
// Requests for a shard assigned to this runner wait for its lock, for at most
|
|
145
|
+
// `shardLockExpiration`, instead of bouncing while the previous owner drains.
|
|
146
|
+
// Each notification opens the current latch and replaces it, so a waiter that
|
|
147
|
+
// checked its shard before a notification cannot miss it.
|
|
148
|
+
let shardLocksChanged = Latch.makeUnsafe(false);
|
|
149
|
+
const notifyShardLockWaiters = Effect.suspend(() => {
|
|
150
|
+
const latch = shardLocksChanged;
|
|
151
|
+
shardLocksChanged = Latch.makeUnsafe(false);
|
|
152
|
+
return latch.open;
|
|
153
|
+
});
|
|
154
|
+
const awaitShardLock = shardId => {
|
|
155
|
+
const loop = Effect.suspend(() => isAwaitingShardLock(shardId) ? Effect.andThen(shardLocksChanged.await, loop) : Effect.void);
|
|
156
|
+
return Effect.suspend(() => isAwaitingShardLock(shardId) ? Effect.asVoid(Effect.timeoutOption(loop, config.shardLockExpiration)) : Effect.void);
|
|
157
|
+
};
|
|
134
158
|
yield* Scope.addFinalizer(shardingScope, Effect.logDebug("Shutdown complete").pipe(Effect.annotateLogs({
|
|
135
159
|
module: "effect/cluster/Sharding"
|
|
136
160
|
})));
|
|
@@ -141,6 +165,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
141
165
|
// This should be shutdown last, when all entities have been shutdown, to
|
|
142
166
|
// allow them to move to another runner.
|
|
143
167
|
const releasingShards = MutableHashSet.empty();
|
|
168
|
+
// Hands every held shard off on shutdown, set when this is a runner
|
|
169
|
+
let handoff = Effect.void;
|
|
144
170
|
// Shards whose entities must be force interrupted and locks fully released
|
|
145
171
|
// before normal reacquisition.
|
|
146
172
|
const forceReleasingShards = MutableHashSet.empty();
|
|
@@ -151,21 +177,40 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
151
177
|
// the locks expire over time, so if this fails we ignore it
|
|
152
178
|
return Effect.ignore(runnerStorage.releaseAll(selfAddress));
|
|
153
179
|
});
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
//
|
|
158
|
-
const
|
|
180
|
+
// Shard releases fork into a child scope that closes after the shutdown
|
|
181
|
+
// handoff, as forks into the closing sharding scope never run.
|
|
182
|
+
const releaseScope = yield* Scope.fork(shardingScope);
|
|
183
|
+
// Interrupt the shards' entities on every entity manager that is open
|
|
184
|
+
const forkInterruptShards = Effect.fnUntraced(function* (shardIds, force) {
|
|
159
185
|
const fibers = Arr.empty();
|
|
160
186
|
for (const shardId of shardIds) {
|
|
161
187
|
for (const state of entityManagers.values()) {
|
|
162
188
|
if (state.status === "closed") continue;
|
|
163
|
-
fibers.push(yield* Effect.
|
|
189
|
+
fibers.push(yield* Effect.forkIn(state.manager.interruptShard(shardId, {
|
|
164
190
|
force
|
|
165
|
-
})
|
|
191
|
+
}), releaseScope, {
|
|
192
|
+
startImmediately: true
|
|
193
|
+
}));
|
|
166
194
|
}
|
|
167
195
|
}
|
|
168
|
-
|
|
196
|
+
return fibers;
|
|
197
|
+
});
|
|
198
|
+
const releaseShardsMap = yield* FiberMap.make();
|
|
199
|
+
let forcedShardReleaseRunning = false;
|
|
200
|
+
// Called from the acquisition loop only, so no `acquire` is in flight
|
|
201
|
+
const checkHandedOff = () => {
|
|
202
|
+
if (handoffLatch.isOpen() && MutableHashSet.size(acquiredShards) === 0 && MutableHashSet.size(releasingShards) === 0 && !forcedShardReleasePending()) {
|
|
203
|
+
handedOffLatch.openUnsafe();
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
// Interrupt the shards' entities, wait for lock health, run the storage
|
|
207
|
+
// release, then clear the shards' bookkeeping.
|
|
208
|
+
const runShardRelease = Effect.fnUntraced(function* (shardIds, force, release) {
|
|
209
|
+
yield* Fiber.joinAll(yield* forkInterruptShards(shardIds, force));
|
|
210
|
+
// stop the singletons of shards that are no longer acquired, and wait
|
|
211
|
+
// for those on the released shards
|
|
212
|
+
yield* startSyncSingletons;
|
|
213
|
+
yield* awaitStoppingSingletons(shardIds);
|
|
169
214
|
yield* shardLocksHealthyLatch.await;
|
|
170
215
|
yield* release;
|
|
171
216
|
for (const shardId of shardIds) {
|
|
@@ -179,6 +224,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
179
224
|
interrupt: MutableRef.get(isShutdown)
|
|
180
225
|
});
|
|
181
226
|
}
|
|
227
|
+
// let the acquisition loop check whether the handoff has finished
|
|
228
|
+
if (handoffLatch.isOpen()) activeShardsLatch.openUnsafe();
|
|
182
229
|
});
|
|
183
230
|
const retryShardRelease = annotations => effect => effect.pipe(Effect.sandbox, Effect.tapError(cause => Effect.logDebug(`Could not release shards, retrying`, cause).pipe(Effect.annotateLogs({
|
|
184
231
|
module: "effect/cluster/Sharding",
|
|
@@ -212,7 +259,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
212
259
|
}), Effect.ensuring(Effect.sync(() => {
|
|
213
260
|
forcedShardReleaseRunning = false;
|
|
214
261
|
activeShardsLatch.openUnsafe();
|
|
215
|
-
})), Effect.forkIn(
|
|
262
|
+
})), Effect.forkIn(releaseScope), Effect.asVoid);
|
|
216
263
|
});
|
|
217
264
|
const releaseShards = Effect.gen(function* () {
|
|
218
265
|
yield* releaseForcedShards;
|
|
@@ -227,9 +274,11 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
227
274
|
while (true) {
|
|
228
275
|
yield* activeShardsLatch.await;
|
|
229
276
|
activeShardsLatch.closeUnsafe();
|
|
230
|
-
// if a shard is no longer assigned to this runner,
|
|
277
|
+
// if a shard is no longer assigned to this runner, or the runner is
|
|
278
|
+
// handing every shard off, we release it
|
|
279
|
+
const handingOff = handoffLatch.isOpen();
|
|
231
280
|
for (const shardId of acquiredShards) {
|
|
232
|
-
if (MutableHashSet.has(selfShards, shardId)) continue;
|
|
281
|
+
if (!handingOff && MutableHashSet.has(selfShards, shardId)) continue;
|
|
233
282
|
MutableHashSet.remove(acquiredShards, shardId);
|
|
234
283
|
MutableHashSet.add(releasingShards, shardId);
|
|
235
284
|
}
|
|
@@ -237,6 +286,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
237
286
|
yield* Effect.forkIn(syncSingletons, shardingScope);
|
|
238
287
|
yield* releaseShards;
|
|
239
288
|
}
|
|
289
|
+
checkHandedOff();
|
|
240
290
|
if (!shardLocksHealthyLatch.isOpen()) {
|
|
241
291
|
continue;
|
|
242
292
|
}
|
|
@@ -245,6 +295,10 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
245
295
|
if (forcedShardReleasePending()) {
|
|
246
296
|
continue;
|
|
247
297
|
}
|
|
298
|
+
// a runner that is shutting down takes no new shards
|
|
299
|
+
if (isShutdown.current) {
|
|
300
|
+
continue;
|
|
301
|
+
}
|
|
248
302
|
// if a shard has been assigned to this runner, we acquire it
|
|
249
303
|
const unacquiredShards = MutableHashSet.empty();
|
|
250
304
|
for (const shardId of selfShards) {
|
|
@@ -272,12 +326,14 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
272
326
|
MutableHashSet.add(acquiredShards, shardId);
|
|
273
327
|
}
|
|
274
328
|
if (acquired.length > 0) {
|
|
329
|
+
yield* notifyShardLockWaiters;
|
|
275
330
|
yield* storageReadLatch.open;
|
|
276
331
|
yield* Effect.forkIn(syncSingletons, shardingScope);
|
|
277
332
|
// update metrics
|
|
278
333
|
ClusterMetrics.shards.updateUnsafe(BigInt(MutableHashSet.size(acquiredShards)), Context.empty());
|
|
279
334
|
}
|
|
280
|
-
|
|
335
|
+
// the shutdown handoff releases the shards acquired here without waiting
|
|
336
|
+
yield* Effect.raceFirst(Effect.sleep(1000), handoffLatch.await);
|
|
281
337
|
activeShardsLatch.openUnsafe();
|
|
282
338
|
}
|
|
283
339
|
}).pipe(Effect.catchCause(cause => Effect.logWarning("Could not acquire/release shards", cause)), Effect.repeat(Schedule.spaced(config.entityMessagePollInterval)), Effect.annotateLogs({
|
|
@@ -297,20 +353,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
297
353
|
ClusterMetrics.shards.updateUnsafe(BigInt(0), Context.empty());
|
|
298
354
|
activeShardsLatch.openUnsafe();
|
|
299
355
|
return Effect.gen(function* () {
|
|
356
|
+
yield* notifyShardLockWaiters;
|
|
300
357
|
yield* Effect.logError("Shard lock storage is unhealthy", cause);
|
|
301
358
|
yield* Effect.forkIn(syncSingletons, shardingScope, {
|
|
302
359
|
startImmediately: true
|
|
303
360
|
});
|
|
304
|
-
|
|
305
|
-
for (const state of entityManagers.values()) {
|
|
306
|
-
if (state.status === "closed") continue;
|
|
307
|
-
yield* Effect.forkIn(state.manager.interruptShard(shardId, {
|
|
308
|
-
force: true
|
|
309
|
-
}), shardingScope, {
|
|
310
|
-
startImmediately: true
|
|
311
|
-
});
|
|
312
|
-
}
|
|
313
|
-
}
|
|
361
|
+
yield* forkInterruptShards(affectedShards, true);
|
|
314
362
|
activeShardsLatch.openUnsafe();
|
|
315
363
|
});
|
|
316
364
|
});
|
|
@@ -355,6 +403,14 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
355
403
|
yield* Effect.suspend(() => shardLocksHealthyLatch.isOpen() ? refreshShardLocks : probeShardLocks).pipe(Effect.repeat(Schedule.fixed(shardLockInterval)), Effect.forever, Effect.forkIn(shardingScope));
|
|
356
404
|
// open the shard latch every poll interval
|
|
357
405
|
yield* activeShardsLatch.open.pipe(Effect.delay(config.entityMessagePollInterval), Effect.forever, Effect.forkIn(shardingScope));
|
|
406
|
+
// Release every held shard through the per-shard path. Their entities are
|
|
407
|
+
// forced to stop, so the handoff does not wait out graceful termination.
|
|
408
|
+
// This is best effort: the wait is bounded, and if it times out, the final
|
|
409
|
+
// `releaseAll` attempts to release the remaining locks.
|
|
410
|
+
handoff = Effect.suspend(() => {
|
|
411
|
+
if (handoffLatch.openUnsafe()) activeShardsLatch.openUnsafe();
|
|
412
|
+
return forkInterruptShards([...acquiredShards, ...releasingShards], true);
|
|
413
|
+
}).pipe(Effect.andThen(Effect.timeoutOption(handedOffLatch.await, shardLockInterval)), Effect.asVoid);
|
|
358
414
|
}
|
|
359
415
|
// --- Storage inbox ---
|
|
360
416
|
//
|
|
@@ -717,28 +773,34 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
717
773
|
}), (effect, address) => Effect.ensuring(effect, Effect.sync(() => MutableHashMap.remove(entityResumptionState, address))), Effect.forkIn(shardingScope));
|
|
718
774
|
}
|
|
719
775
|
// --- Sending messages ---
|
|
720
|
-
const sendLocal = message =>
|
|
776
|
+
const sendLocal = message => {
|
|
721
777
|
const address = message.envelope.address;
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
address
|
|
734
|
-
})
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
778
|
+
const isRequest = message._tag === "IncomingRequest" || message._tag === "OutgoingRequest";
|
|
779
|
+
const send = Effect.suspend(function loop() {
|
|
780
|
+
if (!isEntityOnLocalShards(address) && (
|
|
781
|
+
// Entities draining from a released shard still accept interrupts and acks
|
|
782
|
+
isRequest || !MutableHashSet.has(releasingShards, address.shardId))) {
|
|
783
|
+
return Effect.fail(new EntityNotAssignedToRunner({
|
|
784
|
+
address
|
|
785
|
+
}));
|
|
786
|
+
}
|
|
787
|
+
const state = entityManagers.get(address.entityType);
|
|
788
|
+
if (!state) {
|
|
789
|
+
return Effect.flatMap(waitForEntityManager(address.entityType), loop);
|
|
790
|
+
} else if (state.status === "closed" || state.status === "closing" && message._tag === "IncomingRequest") {
|
|
791
|
+
// if we are shutting down, we don't accept new requests
|
|
792
|
+
return Effect.fail(new EntityNotAssignedToRunner({
|
|
793
|
+
address
|
|
794
|
+
}));
|
|
795
|
+
}
|
|
796
|
+
return message._tag === "IncomingRequest" || message._tag === "IncomingEnvelope" ? state.manager.send(message) : runnersService.sendLocal({
|
|
797
|
+
message,
|
|
798
|
+
send: state.manager.sendLocal,
|
|
799
|
+
simulateRemoteSerialization: config.simulateRemoteSerialization
|
|
800
|
+
});
|
|
740
801
|
});
|
|
741
|
-
|
|
802
|
+
return isRequest ? Effect.andThen(awaitShardLock(address.shardId), send) : send;
|
|
803
|
+
};
|
|
742
804
|
const pendingNotifications = new Map();
|
|
743
805
|
const notifyLocal = (message, discard, options) => Effect.suspend(function loop() {
|
|
744
806
|
const address = message.envelope.address;
|
|
@@ -793,7 +855,10 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
793
855
|
storageOnly: !isLocal
|
|
794
856
|
});
|
|
795
857
|
});
|
|
796
|
-
function sendOutgoing(message, discard, retries
|
|
858
|
+
function sendOutgoing(message, discard, retries,
|
|
859
|
+
// The runner serving the request, for its interrupts and acks. Later
|
|
860
|
+
// attempts fall back to the current shard assignment.
|
|
861
|
+
runner) {
|
|
797
862
|
const isPersisted = Context.get(message._tag === "OutgoingRequest" ? message.annotations : message.rpc.annotations, Persisted);
|
|
798
863
|
const shouldFail = !discard && (message._tag === "OutgoingRequest" || message.envelope._tag === "AckChunk");
|
|
799
864
|
const abandon = error => {
|
|
@@ -818,7 +883,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
818
883
|
address
|
|
819
884
|
}));
|
|
820
885
|
}
|
|
821
|
-
const maybeRunner = MutableHashMap.get(shardAssignments, address.shardId);
|
|
886
|
+
const maybeRunner = runner !== undefined ? Option.some(runner) : MutableHashMap.get(shardAssignments, address.shardId);
|
|
822
887
|
const runnerIsLocal = Option.isSome(maybeRunner) && isLocalRunner(maybeRunner.value);
|
|
823
888
|
if (isPersisted) {
|
|
824
889
|
return runnerIsLocal ? notifyLocal(message, discard) : runnersService.notify({
|
|
@@ -830,6 +895,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
830
895
|
return Effect.fail(new EntityNotAssignedToRunner({
|
|
831
896
|
address
|
|
832
897
|
}));
|
|
898
|
+
} else if (message._tag === "OutgoingRequest") {
|
|
899
|
+
const entry = clientRequests.get(message.envelope.requestId);
|
|
900
|
+
if (entry) entry.runner = maybeRunner.value;
|
|
833
901
|
}
|
|
834
902
|
return runnerIsLocal ? sendLocal(message) : discard ? runnersService.notify({
|
|
835
903
|
address: maybeRunner,
|
|
@@ -886,9 +954,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
886
954
|
while (true) {
|
|
887
955
|
// Ensure the current runner is registered
|
|
888
956
|
if (selfRunner && !isShutdown.current && !MutableHashMap.has(allRunners, selfRunner)) {
|
|
889
|
-
yield* Effect.
|
|
890
|
-
|
|
891
|
-
|
|
957
|
+
yield* withRegistrationLock(Effect.gen(function* () {
|
|
958
|
+
if (isShutdown.current) return;
|
|
959
|
+
yield* Effect.logDebug("Registering runner", selfRunner);
|
|
960
|
+
const machineId = yield* withTimeout(runnerStorage.register(selfRunner, true));
|
|
961
|
+
yield* snowflakeGen.setMachineId(machineId);
|
|
962
|
+
}));
|
|
892
963
|
}
|
|
893
964
|
const runners = yield* withTimeout(runnerStorage.getRunners);
|
|
894
965
|
let changed = false;
|
|
@@ -957,6 +1028,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
957
1028
|
});
|
|
958
1029
|
yield* Effect.logDebug("New shard assignments", selfShards);
|
|
959
1030
|
activeShardsLatch.openUnsafe();
|
|
1031
|
+
yield* notifyShardLockWaiters;
|
|
960
1032
|
// update metrics
|
|
961
1033
|
if (selfRunner) {
|
|
962
1034
|
ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(MutableHashSet.has(healthyRunners, selfRunner) ? 1 : 0), Context.empty());
|
|
@@ -1040,7 +1112,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1040
1112
|
replyId: entry.lastChunkId
|
|
1041
1113
|
}),
|
|
1042
1114
|
rpc: entry.rpc
|
|
1043
|
-
}), false);
|
|
1115
|
+
}), false, undefined, entry.runner);
|
|
1044
1116
|
}
|
|
1045
1117
|
case "Interrupt":
|
|
1046
1118
|
{
|
|
@@ -1066,7 +1138,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1066
1138
|
requestId
|
|
1067
1139
|
}),
|
|
1068
1140
|
rpc: entry.rpc
|
|
1069
|
-
}), false, 3));
|
|
1141
|
+
}), false, 3, entry.runner));
|
|
1070
1142
|
}
|
|
1071
1143
|
}
|
|
1072
1144
|
return Effect.void;
|
|
@@ -1139,6 +1211,41 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1139
1211
|
const singletons = new Map();
|
|
1140
1212
|
const singletonFibers = yield* FiberMap.make();
|
|
1141
1213
|
const withSingletonLock = Semaphore.makeUnsafe(1).withPermits(1);
|
|
1214
|
+
// Singletons that are stopping. They count as running, so they are not
|
|
1215
|
+
// restarted, and shard releases wait for them. Their teardown is awaited
|
|
1216
|
+
// without the singleton lock, as it can register or stop other singletons.
|
|
1217
|
+
const stoppingSingletons = MutableHashMap.empty();
|
|
1218
|
+
const isSingletonRegistered = address => {
|
|
1219
|
+
const map = singletons.get(address.shardId);
|
|
1220
|
+
return map !== undefined && MutableHashMap.has(map, address);
|
|
1221
|
+
};
|
|
1222
|
+
// Called with the singleton lock held. Starts stopping the singleton and
|
|
1223
|
+
// returns the wait for its teardown, to run without the lock.
|
|
1224
|
+
const stopSingletonUnsafe = (address, activeTeardown) => {
|
|
1225
|
+
const stopping = MutableHashMap.get(stoppingSingletons, address);
|
|
1226
|
+
if (Option.isSome(stopping)) return Fiber.join(stopping.value);
|
|
1227
|
+
const fiber = FiberMap.getUnsafe(singletonFibers, address);
|
|
1228
|
+
if (Option.isNone(fiber)) return Effect.void;
|
|
1229
|
+
const interrupt = Fiber.interrupt(fiber.value);
|
|
1230
|
+
const stop = Effect.runForkWith(services)(activeTeardown ? ActiveTeardown.aroundShard(address.shardId, interrupt) : interrupt);
|
|
1231
|
+
MutableHashMap.set(stoppingSingletons, address, stop);
|
|
1232
|
+
stop.addObserver(() => {
|
|
1233
|
+
MutableHashMap.remove(stoppingSingletons, address);
|
|
1234
|
+
// a registration made while the previous singleton was stopping
|
|
1235
|
+
if (isSingletonRegistered(address)) runFork(syncSingletons);
|
|
1236
|
+
});
|
|
1237
|
+
return Fiber.join(stop);
|
|
1238
|
+
};
|
|
1239
|
+
// Waits for the singletons of the given shards that are still stopping
|
|
1240
|
+
const awaitStoppingSingletons = shardIds => Effect.suspend(() => {
|
|
1241
|
+
const stops = Arr.empty();
|
|
1242
|
+
MutableHashMap.forEach(stoppingSingletons, (stop, address) => {
|
|
1243
|
+
if (shardIds.some(shardId => Equal.equals(shardId, address.shardId))) {
|
|
1244
|
+
stops.push(stop);
|
|
1245
|
+
}
|
|
1246
|
+
});
|
|
1247
|
+
return Fiber.joinAll(stops);
|
|
1248
|
+
});
|
|
1142
1249
|
const registerSingleton = Effect.fnUntraced(function* (name, run, options) {
|
|
1143
1250
|
const shardGroup = options?.shardGroup ?? "default";
|
|
1144
1251
|
const address = new SingletonAddress({
|
|
@@ -1159,25 +1266,29 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1159
1266
|
yield* PubSub.publish(events, SingletonRegistered({
|
|
1160
1267
|
address
|
|
1161
1268
|
}));
|
|
1162
|
-
// start if we are on the right shard
|
|
1163
|
-
|
|
1269
|
+
// start if we are on the right shard, unless a previous registration of
|
|
1270
|
+
// this singleton is still stopping
|
|
1271
|
+
if (MutableHashSet.has(acquiredShards, address.shardId) && !MutableHashMap.has(stoppingSingletons, address)) {
|
|
1164
1272
|
yield* Effect.logDebug("Starting singleton", address);
|
|
1165
1273
|
yield* FiberMap.run(singletonFibers, address, wrappedRun);
|
|
1166
1274
|
}
|
|
1167
|
-
yield* Effect.addFinalizer(() => {
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
});
|
|
1275
|
+
yield* Effect.addFinalizer(() => withSingletonLock(Effect.sync(() => {
|
|
1276
|
+
MutableHashMap.remove(singletons.get(address.shardId), address);
|
|
1277
|
+
return stopSingletonUnsafe(address, false);
|
|
1278
|
+
})).pipe(Effect.flatten));
|
|
1172
1279
|
}, withSingletonLock);
|
|
1173
|
-
|
|
1280
|
+
// Starts and stops singletons to match the acquired shards, returning the
|
|
1281
|
+
// waits for the stopped singletons
|
|
1282
|
+
const startSyncSingletons = withSingletonLock(Effect.gen(function* () {
|
|
1283
|
+
const stops = Arr.empty();
|
|
1174
1284
|
for (const [shardId, map] of singletons) {
|
|
1175
1285
|
for (const [address, run] of map) {
|
|
1176
|
-
const
|
|
1286
|
+
const stopping = MutableHashMap.has(stoppingSingletons, address);
|
|
1287
|
+
const running = stopping || FiberMap.hasUnsafe(singletonFibers, address);
|
|
1177
1288
|
const shouldBeRunning = MutableHashSet.has(acquiredShards, shardId);
|
|
1178
1289
|
if (running && !shouldBeRunning) {
|
|
1179
|
-
yield* Effect.logDebug("Stopping singleton", address);
|
|
1180
|
-
|
|
1290
|
+
if (!stopping) yield* Effect.logDebug("Stopping singleton", address);
|
|
1291
|
+
stops.push(stopSingletonUnsafe(address, true));
|
|
1181
1292
|
} else if (!running && shouldBeRunning) {
|
|
1182
1293
|
yield* Effect.logDebug("Starting singleton", address);
|
|
1183
1294
|
yield* FiberMap.run(singletonFibers, address, run);
|
|
@@ -1185,6 +1296,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1185
1296
|
}
|
|
1186
1297
|
}
|
|
1187
1298
|
ClusterMetrics.singletons.updateUnsafe(BigInt(yield* FiberMap.size(singletonFibers)), Context.empty());
|
|
1299
|
+
return stops;
|
|
1300
|
+
}));
|
|
1301
|
+
const syncSingletons = Effect.flatMap(startSyncSingletons,
|
|
1302
|
+
// wait for the stopped singletons without the lock
|
|
1303
|
+
stops => Effect.all(stops, {
|
|
1304
|
+
discard: true
|
|
1188
1305
|
}));
|
|
1189
1306
|
// --- Entities ---
|
|
1190
1307
|
const reaper = yield* EntityReaper;
|
|
@@ -1283,11 +1400,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
1283
1400
|
}
|
|
1284
1401
|
if (isShutdown.current) return;
|
|
1285
1402
|
MutableRef.set(isShutdown, true);
|
|
1403
|
+
yield* notifyShardLockWaiters;
|
|
1286
1404
|
if (selfRunner) {
|
|
1287
|
-
yield* Effect.ignore(runnerStorage.unregister(selfRunner.address));
|
|
1405
|
+
yield* Effect.ignore(withRegistrationLock(runnerStorage.unregister(selfRunner.address)));
|
|
1288
1406
|
}
|
|
1289
1407
|
});
|
|
1290
|
-
|
|
1408
|
+
// hand the shards off before the loops stop
|
|
1409
|
+
yield* Scope.addFinalizerExit(shardingScope, exit => Effect.andThen(shutdown(exit), handoff));
|
|
1291
1410
|
const activeEntityCount = Effect.gen(function* () {
|
|
1292
1411
|
let count = 0;
|
|
1293
1412
|
for (const state of entityManagers.values()) {
|