effect 4.0.0-beta.6 → 4.0.0-beta.60
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 +213 -385
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +149 -102
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +82 -45
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +105 -52
- 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 +36 -33
- package/dist/BigInt.js.map +1 -1
- package/dist/Brand.d.ts +3 -5
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +1 -1
- package/dist/Brand.js.map +1 -1
- package/dist/Cache.d.ts +14 -45
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +21 -47
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +53 -22
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +108 -10
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +166 -48
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +176 -87
- package/dist/Channel.js.map +1 -1
- package/dist/Chunk.d.ts +112 -304
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +56 -88
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +2 -2
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +280 -13
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +198 -7
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +189 -29
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +85 -35
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +6 -6
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +5 -5
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +2 -2
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +1150 -0
- package/dist/Context.d.ts.map +1 -0
- package/dist/{ServiceMap.js → Context.js} +181 -165
- package/dist/Context.js.map +1 -0
- package/dist/Cron.d.ts +11 -7
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +120 -63
- package/dist/Cron.js.map +1 -1
- package/dist/Data.d.ts +533 -365
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +125 -73
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +74 -255
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +17 -62
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +12 -5
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +13 -5
- package/dist/Deferred.js.map +1 -1
- package/dist/Duration.d.ts +74 -40
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +126 -87
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +1391 -927
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +472 -328
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +29 -0
- package/dist/Effectable.d.ts.map +1 -0
- package/dist/Effectable.js +31 -0
- package/dist/Effectable.js.map +1 -0
- package/dist/Encoding.d.ts +1 -1
- package/dist/Equal.d.ts +276 -109
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +140 -48
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +60 -3
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +70 -13
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +374 -0
- package/dist/ErrorReporter.d.ts.map +1 -0
- package/dist/ErrorReporter.js +245 -0
- package/dist/ErrorReporter.js.map +1 -0
- package/dist/ExecutionPlan.d.ts +6 -6
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +4 -4
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +24 -12
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +8 -4
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +10 -8
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +11 -10
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +12 -11
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +22 -21
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +10 -10
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +2 -2
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +4 -4
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +20 -19
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +15 -11
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +4 -37
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +0 -13
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +131 -47
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +243 -55
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +1 -9
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +2 -10
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +65 -65
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +58 -60
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.js +1 -1
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +26 -19
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +7 -5
- package/dist/HashMap.js.map +1 -1
- package/dist/Inspectable.d.ts +0 -4
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +4 -13
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +50 -50
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +106 -34
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonSchema.d.ts +299 -10
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +323 -4
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +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 +599 -379
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +249 -180
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +27 -26
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +21 -18
- package/dist/LayerMap.js.map +1 -1
- package/dist/LogLevel.d.ts +32 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +28 -100
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +31 -97
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +2 -3
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +8 -8
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +34 -25
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Metric.d.ts +23 -25
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +24 -26
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +7 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +8 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +7 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +8 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +3 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/Newtype.d.ts +291 -0
- package/dist/Newtype.d.ts.map +1 -0
- package/dist/Newtype.js +161 -0
- package/dist/Newtype.js.map +1 -0
- package/dist/Number.d.ts +74 -18
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +46 -18
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +947 -18
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +454 -5
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +25 -16
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +15 -9
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +6 -1
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +19 -14
- package/dist/Order.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/Path.d.ts +2 -2
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +2 -2
- package/dist/Path.js.map +1 -1
- package/dist/PlatformError.d.ts +2 -2
- package/dist/Pool.d.ts +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +5 -5
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +1 -1
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/PubSub.d.ts +5 -4
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +15 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +1 -1
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +9 -6
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +7 -5
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +36 -2
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +46 -35
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +4 -4
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +13 -13
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +1 -1
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/Record.d.ts +63 -160
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +37 -56
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +139 -62
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +59 -55
- package/dist/Redactable.js.map +1 -1
- package/dist/Reducer.d.ts +166 -7
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +135 -1
- package/dist/Reducer.js.map +1 -1
- package/dist/References.d.ts +257 -229
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +240 -259
- package/dist/References.js.map +1 -1
- package/dist/Request.d.ts +5 -5
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +25 -25
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +15 -16
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +0 -3
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +5 -4
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +1 -2
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +66 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +79 -6
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +174 -291
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +132 -120
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +36 -125
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +37 -126
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +3213 -392
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +2058 -252
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +13 -2
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +340 -257
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +55 -13
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +73 -11
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +29 -11
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +44 -54
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +69 -4
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +2 -2
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +63 -39
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +245 -3
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +297 -33
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +2 -2
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +2 -2
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +5 -5
- package/dist/ScopedCache.js.map +1 -1
- package/dist/Semaphore.d.ts +148 -52
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +135 -117
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +22 -19
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +54 -7
- package/dist/Sink.js.map +1 -1
- package/dist/Stdio.d.ts +18 -6
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +20 -2
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +465 -542
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +329 -145
- 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/Struct.d.ts +7 -7
- package/dist/Struct.d.ts.map +1 -1
- package/dist/SubscriptionRef.d.ts +1 -2
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +83 -116
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Terminal.d.ts +5 -4
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +2 -2
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +21 -20
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +13 -9
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +44 -31
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +13 -9
- package/dist/Trie.js.map +1 -1
- package/dist/TxChunk.d.ts +4 -4
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +4 -4
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +328 -0
- package/dist/TxDeferred.d.ts.map +1 -0
- package/dist/TxDeferred.js +197 -0
- package/dist/TxDeferred.js.map +1 -0
- package/dist/TxHashMap.d.ts +105 -86
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +51 -44
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +2 -2
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +16 -15
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +609 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -0
- package/dist/TxPriorityQueue.js +416 -0
- package/dist/TxPriorityQueue.js.map +1 -0
- package/dist/TxPubSub.d.ts +585 -0
- package/dist/TxPubSub.d.ts.map +1 -0
- package/dist/TxPubSub.js +521 -0
- package/dist/TxPubSub.js.map +1 -0
- package/dist/TxQueue.d.ts +1 -1
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +42 -57
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +500 -0
- package/dist/TxReentrantLock.d.ts.map +1 -0
- package/dist/TxReentrantLock.js +481 -0
- package/dist/TxReentrantLock.js.map +1 -0
- package/dist/TxRef.d.ts +14 -20
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +8 -10
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +162 -2
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +25 -10
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +508 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -0
- package/dist/TxSubscriptionRef.js +293 -0
- package/dist/TxSubscriptionRef.js.map +1 -0
- package/dist/Types.d.ts +80 -22
- package/dist/Types.d.ts.map +1 -1
- package/dist/Unify.d.ts +8 -2
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +137 -65
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +38 -66
- package/dist/Utils.js.map +1 -1
- package/dist/index.d.ts +886 -71
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +886 -71
- package/dist/index.js.map +1 -1
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +77 -71
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +488 -326
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/hashMap.js +7 -5
- package/dist/internal/hashMap.js.map +1 -1
- package/dist/internal/layer.js +3 -3
- package/dist/internal/layer.js.map +1 -1
- package/dist/internal/option.js +6 -0
- package/dist/internal/option.js.map +1 -1
- package/dist/internal/random.d.ts +2 -0
- package/dist/internal/random.d.ts.map +1 -0
- package/dist/internal/random.js +13 -0
- package/dist/internal/random.js.map +1 -0
- package/dist/internal/rcRef.js +9 -9
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/references.d.ts +2 -0
- package/dist/internal/references.d.ts.map +1 -0
- package/dist/internal/references.js +51 -0
- package/dist/internal/references.js.map +1 -0
- package/dist/internal/request.js +6 -6
- package/dist/internal/request.js.map +1 -1
- package/dist/internal/schedule.js +1 -1
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/annotations.js +2 -0
- package/dist/internal/schema/annotations.js.map +1 -1
- package/dist/internal/schema/representation.js +87 -109
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.d.ts +10 -1
- package/dist/internal/schema/schema.d.ts.map +1 -1
- package/dist/internal/schema/schema.js +59 -1
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/internal/trie.js +8 -7
- package/dist/internal/trie.js.map +1 -1
- package/dist/testing/TestClock.d.ts +5 -5
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +2 -2
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestSchema.d.ts +267 -33
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/testing/TestSchema.js +296 -23
- package/dist/testing/TestSchema.js.map +1 -1
- package/dist/testing/index.d.ts +64 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +64 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +127 -45
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.js +29 -23
- package/dist/unstable/ai/AiError.js.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
- package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +39 -11
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.js +40 -47
- package/dist/unstable/ai/Chat.js.map +1 -1
- package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
- package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
- package/dist/unstable/ai/EmbeddingModel.js +127 -0
- package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
- package/dist/unstable/ai/IdGenerator.d.ts +2 -2
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.js +2 -2
- package/dist/unstable/ai/IdGenerator.js.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts +119 -49
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.js +260 -61
- package/dist/unstable/ai/LanguageModel.js.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +207 -112
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.js +71 -19
- package/dist/unstable/ai/McpSchema.js.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts +68 -15
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.js +225 -73
- package/dist/unstable/ai/McpServer.js.map +1 -1
- package/dist/unstable/ai/Model.d.ts +27 -9
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Model.js +25 -9
- package/dist/unstable/ai/Model.js.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
- package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts +17 -17
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.js +6 -9
- package/dist/unstable/ai/Prompt.js.map +1 -1
- package/dist/unstable/ai/Response.d.ts +24 -24
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Response.js +7 -8
- package/dist/unstable/ai/Response.js.map +1 -1
- package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
- package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
- package/dist/unstable/ai/ResponseIdTracker.js +68 -0
- package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
- package/dist/unstable/ai/Telemetry.d.ts +35 -2
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.js +2 -2
- package/dist/unstable/ai/Telemetry.js.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts +2 -2
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.js +2 -2
- package/dist/unstable/ai/Tokenizer.js.map +1 -1
- package/dist/unstable/ai/Tool.d.ts +46 -16
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.js +68 -22
- package/dist/unstable/ai/Tool.js.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts +4 -4
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.js +14 -21
- package/dist/unstable/ai/Toolkit.js.map +1 -1
- package/dist/unstable/ai/index.d.ts +22 -1
- package/dist/unstable/ai/index.d.ts.map +1 -1
- package/dist/unstable/ai/index.js +22 -1
- package/dist/unstable/ai/index.js.map +1 -1
- package/dist/unstable/ai/internal/codec-transformer.js +5 -7
- package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
- package/dist/unstable/cli/Argument.d.ts +4 -7
- 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/CliError.d.ts +51 -63
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +32 -57
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts +5 -4
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/CliOutput.js +67 -12
- package/dist/unstable/cli/CliOutput.js.map +1 -1
- package/dist/unstable/cli/Command.d.ts +372 -59
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +328 -66
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts +97 -0
- package/dist/unstable/cli/Completions.d.ts.map +1 -0
- package/dist/unstable/cli/Completions.js +25 -0
- package/dist/unstable/cli/Completions.js.map +1 -0
- package/dist/unstable/cli/Flag.d.ts +4 -5
- 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 +125 -0
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
- package/dist/unstable/cli/GlobalFlag.js +118 -0
- package/dist/unstable/cli/GlobalFlag.js.map +1 -0
- package/dist/unstable/cli/HelpDoc.d.ts +81 -11
- package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
- package/dist/unstable/cli/Param.d.ts +34 -6
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Param.js +24 -14
- package/dist/unstable/cli/Param.js.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts +2 -2
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.js +1 -1
- package/dist/unstable/cli/Primitive.js.map +1 -1
- package/dist/unstable/cli/Prompt.js +266 -86
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/index.d.ts +10 -0
- package/dist/unstable/cli/index.d.ts.map +1 -1
- package/dist/unstable/cli/index.js +10 -0
- package/dist/unstable/cli/index.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts +41 -15
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/command.js +84 -47
- package/dist/unstable/cli/internal/command.js.map +1 -1
- package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
- package/dist/unstable/cli/internal/completions/descriptor.d.ts +2 -0
- package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
- package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
- package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
- package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
- package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
- package/dist/unstable/cli/internal/config.js +42 -0
- package/dist/unstable/cli/internal/config.js.map +1 -1
- package/dist/unstable/cli/internal/help.d.ts +33 -0
- package/dist/unstable/cli/internal/help.d.ts.map +1 -0
- package/dist/unstable/cli/internal/help.js +125 -0
- package/dist/unstable/cli/internal/help.js.map +1 -0
- package/dist/unstable/cli/internal/parser.js +155 -58
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts +7 -7
- package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.js +28 -8
- package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +96 -63
- 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 +17 -16
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.js +31 -25
- package/dist/unstable/cluster/Entity.js.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.js +1 -1
- package/dist/unstable/cluster/EntityAddress.js.map +1 -1
- package/dist/unstable/cluster/EntityProxy.js +3 -3
- package/dist/unstable/cluster/EntityProxy.js.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +6 -6
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityResource.d.ts +4 -4
- package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityResource.js +2 -2
- package/dist/unstable/cluster/EntityResource.js.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts +3 -3
- package/dist/unstable/cluster/HttpRunner.js +2 -2
- package/dist/unstable/cluster/HttpRunner.js.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.d.ts +4 -4
- package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/unstable/cluster/K8sHttpClient.js +6 -6
- package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
- package/dist/unstable/cluster/Message.d.ts +16 -10
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.js +16 -8
- package/dist/unstable/cluster/Message.js.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.js +40 -25
- package/dist/unstable/cluster/MessageStorage.js.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts +7 -6
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.js +8 -7
- package/dist/unstable/cluster/Reply.js.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts +1 -1
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.js +1 -1
- package/dist/unstable/cluster/Runner.js.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.js +1 -1
- package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.js +2 -2
- package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.js +10 -9
- package/dist/unstable/cluster/RunnerServer.js.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerStorage.js +3 -3
- package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +5 -4
- package/dist/unstable/cluster/Runners.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.js +16 -14
- package/dist/unstable/cluster/Runners.js.map +1 -1
- package/dist/unstable/cluster/ShardId.d.ts +35 -49
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardId.js +65 -67
- package/dist/unstable/cluster/ShardId.js.map +1 -1
- package/dist/unstable/cluster/Sharding.d.ts +4 -4
- package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +59 -49
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.js +27 -27
- package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts +2 -2
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +2 -2
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
- package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.js +7 -7
- package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +30 -24
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/cluster/internal/entityReaper.js +2 -2
- package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
- package/dist/unstable/cluster/internal/resourceMap.js +3 -3
- package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
- package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsClient.js +9 -8
- package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.d.ts +4 -4
- package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
- package/dist/unstable/devtools/DevToolsSchema.js +9 -2
- package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts +9 -9
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.js.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts +3 -3
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.js +1 -1
- package/dist/unstable/encoding/Sse.js.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts +0 -6
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.js +0 -5
- package/dist/unstable/eventlog/Event.js.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.js +0 -2
- package/dist/unstable/eventlog/EventGroup.js.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts +27 -10
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js +130 -71
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts +94 -37
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +225 -151
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
- package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogMessage.js +214 -0
- package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
- package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
- package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.js +168 -322
- package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServer.js +128 -199
- package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
- package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
- package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
- package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
- package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
- package/dist/unstable/eventlog/index.d.ts +22 -2
- package/dist/unstable/eventlog/index.d.ts.map +1 -1
- package/dist/unstable/eventlog/index.js +22 -2
- package/dist/unstable/eventlog/index.js.map +1 -1
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
- package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
- package/dist/unstable/http/Cookies.d.ts +51 -6
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.js +27 -6
- package/dist/unstable/http/Cookies.js.map +1 -1
- package/dist/unstable/http/Etag.d.ts +2 -2
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Etag.js +7 -3
- package/dist/unstable/http/Etag.js.map +1 -1
- package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
- package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/unstable/http/FetchHttpClient.js +5 -5
- package/dist/unstable/http/FetchHttpClient.js.map +1 -1
- package/dist/unstable/http/Headers.d.ts +24 -4
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/Headers.js +42 -13
- package/dist/unstable/http/Headers.js.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts +1 -1
- package/dist/unstable/http/HttpClient.d.ts +125 -21
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.js +197 -19
- package/dist/unstable/http/HttpClient.js.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +8 -8
- package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.js +131 -21
- package/dist/unstable/http/HttpClientRequest.js.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.js +18 -3
- package/dist/unstable/http/HttpClientResponse.js.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts +13 -11
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.js +51 -51
- package/dist/unstable/http/HttpEffect.js.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.js +6 -10
- package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts +4 -4
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.js +3 -3
- package/dist/unstable/http/HttpMethod.js.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.js +47 -43
- package/dist/unstable/http/HttpMiddleware.js.map +1 -1
- package/dist/unstable/http/HttpPlatform.d.ts +2 -2
- package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
- package/dist/unstable/http/HttpPlatform.js +5 -4
- package/dist/unstable/http/HttpPlatform.js.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts +9 -8
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.js +36 -36
- package/dist/unstable/http/HttpRouter.js.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts +2 -2
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.js +4 -4
- package/dist/unstable/http/HttpServer.js.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +22 -34
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.js +39 -45
- package/dist/unstable/http/HttpServerError.js.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.js +307 -13
- package/dist/unstable/http/HttpServerRequest.js.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.js +5 -5
- package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.js +240 -5
- package/dist/unstable/http/HttpServerResponse.js.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
- package/dist/unstable/http/HttpStaticServer.js +353 -0
- package/dist/unstable/http/HttpStaticServer.js.map +1 -0
- package/dist/unstable/http/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/Multipart.d.ts +7 -7
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.js +7 -7
- package/dist/unstable/http/Multipart.js.map +1 -1
- package/dist/unstable/http/Url.d.ts +604 -0
- package/dist/unstable/http/Url.d.ts.map +1 -0
- package/dist/unstable/http/Url.js +256 -0
- package/dist/unstable/http/Url.js.map +1 -0
- package/dist/unstable/http/UrlParams.d.ts +18 -9
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.js +6 -7
- package/dist/unstable/http/UrlParams.js.map +1 -1
- package/dist/unstable/http/index.d.ts +8 -0
- package/dist/unstable/http/index.d.ts.map +1 -1
- package/dist/unstable/http/index.js +8 -0
- package/dist/unstable/http/index.js.map +1 -1
- package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
- package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
- package/dist/unstable/http/internal/preResponseHandler.js +10 -0
- package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
- package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +8 -8
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +59 -40
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +82 -7
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +79 -11
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +210 -105
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +52 -47
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +66 -29
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +138 -32
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -17
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +88 -9
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
- package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +59 -60
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/observability/Otlp.d.ts +12 -12
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
- package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +8 -8
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpLogger.js +7 -4
- package/dist/unstable/observability/OtlpLogger.js.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.js +2 -2
- package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
- package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpSerialization.js +2 -2
- package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.js +7 -3
- package/dist/unstable/observability/OtlpTracer.js.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.js +4 -33
- package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
- package/dist/unstable/observability/internal/protobuf.js +4 -4
- package/dist/unstable/observability/internal/protobuf.js.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js +144 -2
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts +2 -2
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistable.js +1 -1
- package/dist/unstable/persistence/Persistable.js.map +1 -1
- package/dist/unstable/persistence/PersistedCache.d.ts +1 -2
- package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedCache.js +10 -11
- package/dist/unstable/persistence/PersistedCache.js.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +9 -9
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts +5 -5
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/Persistence.js +5 -5
- package/dist/unstable/persistence/Persistence.js.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.js +4 -4
- package/dist/unstable/persistence/RateLimiter.js.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts +3 -3
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.js +2 -2
- package/dist/unstable/persistence/Redis.js.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts +5 -128
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js +1 -65
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts +83 -8
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.js +22 -2
- package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +37 -17
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.js +9 -0
- package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts +108 -47
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +105 -25
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +25 -20
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +57 -14
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.js +59 -31
- package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.js +6 -6
- package/dist/unstable/reactivity/Reactivity.js.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts +137 -19
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.js +99 -7
- package/dist/unstable/rpc/Rpc.js.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +26 -47
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +117 -75
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
- package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcGroup.js +30 -20
- package/dist/unstable/rpc/RpcGroup.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.js +5 -5
- package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
- package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.js +17 -2
- package/dist/unstable/rpc/RpcSchema.js.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +60 -27
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +8 -12
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +73 -43
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcWorker.js +4 -4
- package/dist/unstable/rpc/RpcWorker.js.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts +6 -3
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.js +46 -5
- package/dist/unstable/rpc/Utils.js.map +1 -1
- package/dist/unstable/schema/Model.d.ts +24 -3
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/Model.js +17 -4
- package/dist/unstable/schema/Model.js.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +7 -7
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.js +7 -18
- package/dist/unstable/schema/VariantSchema.js.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +35 -15
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.js +34 -27
- package/dist/unstable/socket/Socket.js.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts +8 -5
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.js +2 -2
- package/dist/unstable/socket/SocketServer.js.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts +1 -1
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.js +2 -2
- package/dist/unstable/sql/Migrator.js.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts +24 -6
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.js +37 -32
- package/dist/unstable/sql/SqlClient.js.map +1 -1
- package/dist/unstable/sql/SqlConnection.d.ts +2 -2
- package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
- package/dist/unstable/sql/SqlConnection.js +5 -2
- package/dist/unstable/sql/SqlConnection.js.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +237 -17
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js +260 -4
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts +8 -9
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlModel.js +12 -38
- package/dist/unstable/sql/SqlModel.js.map +1 -1
- package/dist/unstable/sql/SqlResolver.js +24 -17
- package/dist/unstable/sql/SqlResolver.js.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts +17 -6
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.js +17 -7
- package/dist/unstable/sql/SqlSchema.js.map +1 -1
- package/dist/unstable/sql/Statement.d.ts +3 -5
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.js +14 -13
- package/dist/unstable/sql/Statement.js.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts +4 -4
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.js +7 -7
- package/dist/unstable/workers/Transferable.js.map +1 -1
- package/dist/unstable/workers/Worker.d.ts +3 -3
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.js +6 -3
- package/dist/unstable/workers/Worker.js.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts +5 -5
- package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
- package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerRunner.js +5 -2
- package/dist/unstable/workers/WorkerRunner.js.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +8 -3
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +25 -11
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts +3 -6
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableClock.js +6 -6
- package/dist/unstable/workflow/DurableClock.js.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts +2 -5
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +33 -15
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts +12 -14
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/Workflow.js +30 -26
- package/dist/unstable/workflow/Workflow.js.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts +24 -7
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +165 -16
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/package.json +11 -10
- package/src/Array.ts +304 -447
- package/src/BigDecimal.ts +137 -82
- package/src/BigInt.ts +53 -45
- package/src/Brand.ts +3 -5
- package/src/Cache.ts +27 -54
- package/src/Cause.ts +57 -22
- package/src/Channel.ts +687 -220
- package/src/Chunk.ts +149 -331
- package/src/Clock.ts +2 -2
- package/src/Combiner.ts +280 -13
- package/src/Config.ts +214 -52
- package/src/ConfigProvider.ts +5 -5
- package/src/Console.ts +2 -2
- package/src/Context.ts +1454 -0
- package/src/Cron.ts +155 -63
- package/src/Data.ts +530 -368
- package/src/DateTime.ts +77 -258
- package/src/Deferred.ts +15 -6
- package/src/Duration.ts +151 -81
- package/src/Effect.ts +1581 -1050
- package/src/Effectable.ts +47 -0
- package/src/Equal.ts +293 -109
- package/src/Equivalence.ts +114 -52
- package/src/ErrorReporter.ts +458 -0
- package/src/ExecutionPlan.ts +8 -9
- package/src/Exit.ts +24 -12
- package/src/Fiber.ts +17 -8
- package/src/FiberHandle.ts +15 -14
- package/src/FiberMap.ts +27 -27
- package/src/FiberSet.ts +5 -5
- package/src/FileSystem.ts +30 -26
- package/src/Filter.ts +4 -62
- package/src/Formatter.ts +268 -60
- package/src/Function.ts +2 -10
- package/src/Graph.ts +123 -112
- package/src/Hash.ts +2 -2
- package/src/HashMap.ts +26 -19
- package/src/Inspectable.ts +2 -22
- package/src/Iterable.ts +117 -63
- package/src/JsonSchema.ts +383 -10
- package/src/Latch.ts +85 -3
- package/src/Layer.ts +728 -441
- package/src/LayerMap.ts +38 -35
- package/src/LogLevel.ts +37 -0
- package/src/Logger.ts +35 -102
- package/src/ManagedRuntime.ts +61 -48
- package/src/Metric.ts +64 -66
- package/src/MutableHashMap.ts +9 -0
- package/src/MutableHashSet.ts +9 -0
- package/src/MutableList.ts +3 -0
- package/src/Newtype.ts +308 -0
- package/src/Number.ts +98 -29
- package/src/Optic.ts +948 -19
- package/src/Option.ts +34 -24
- package/src/Order.ts +39 -32
- package/src/PartitionedSemaphore.ts +414 -0
- package/src/Path.ts +2 -2
- package/src/Pool.ts +9 -9
- package/src/Predicate.ts +1 -1
- package/src/PubSub.ts +20 -11
- package/src/Pull.ts +1 -1
- package/src/Queue.ts +11 -9
- package/src/Random.ts +51 -14
- package/src/RcMap.ts +19 -19
- package/src/RcRef.ts +1 -1
- package/src/Record.ts +94 -199
- package/src/Redactable.ts +146 -72
- package/src/Reducer.ts +166 -7
- package/src/References.ts +283 -287
- package/src/Request.ts +5 -5
- package/src/RequestResolver.ts +34 -35
- package/src/Resource.ts +6 -5
- package/src/Result.ts +2 -4
- package/src/Runtime.ts +102 -6
- package/src/Schedule.ts +243 -336
- package/src/Scheduler.ts +52 -129
- package/src/Schema.ts +3769 -597
- package/src/SchemaAST.ts +480 -302
- package/src/SchemaGetter.ts +80 -24
- package/src/SchemaIssue.ts +28 -15
- package/src/SchemaParser.ts +100 -29
- package/src/SchemaRepresentation.ts +57 -33
- package/src/SchemaTransformation.ts +321 -32
- package/src/Scope.ts +2 -2
- package/src/ScopedCache.ts +8 -8
- package/src/Semaphore.ts +268 -182
- package/src/Sink.ts +89 -34
- package/src/Stdio.ts +29 -6
- package/src/Stream.ts +908 -752
- package/src/String.ts +122 -69
- package/src/Struct.ts +7 -7
- package/src/SubscriptionRef.ts +98 -118
- package/src/Terminal.ts +5 -4
- package/src/Tracer.ts +23 -22
- package/src/Trie.ts +44 -31
- package/src/TxChunk.ts +26 -16
- package/src/TxDeferred.ts +391 -0
- package/src/TxHashMap.ts +347 -291
- package/src/TxHashSet.ts +54 -61
- package/src/TxPriorityQueue.ts +762 -0
- package/src/TxPubSub.ts +787 -0
- package/src/TxQueue.ts +221 -245
- package/src/TxReentrantLock.ts +729 -0
- package/src/TxRef.ts +31 -31
- package/src/TxSemaphore.ts +203 -31
- package/src/TxSubscriptionRef.ts +637 -0
- package/src/Types.ts +75 -23
- package/src/Unify.ts +26 -2
- package/src/Utils.ts +137 -111
- package/src/index.ts +896 -73
- package/src/internal/core.ts +9 -10
- package/src/internal/dateTime.ts +91 -96
- package/src/internal/effect.ts +1168 -621
- package/src/internal/hashMap.ts +12 -10
- package/src/internal/layer.ts +7 -7
- package/src/internal/option.ts +7 -0
- package/src/internal/random.ts +20 -0
- package/src/internal/rcRef.ts +12 -12
- package/src/internal/references.ts +72 -0
- package/src/internal/request.ts +8 -8
- package/src/internal/schedule.ts +3 -1
- package/src/internal/schema/annotations.ts +2 -0
- package/src/internal/schema/representation.ts +82 -97
- package/src/internal/schema/schema.ts +68 -1
- package/src/internal/trie.ts +21 -15
- package/src/testing/TestClock.ts +6 -6
- package/src/testing/TestSchema.ts +333 -36
- package/src/testing/index.ts +64 -1
- package/src/unstable/ai/AiError.ts +111 -53
- package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
- package/src/unstable/ai/Chat.ts +136 -88
- package/src/unstable/ai/EmbeddingModel.ts +209 -0
- package/src/unstable/ai/IdGenerator.ts +2 -2
- package/src/unstable/ai/LanguageModel.ts +685 -255
- package/src/unstable/ai/McpSchema.ts +84 -22
- package/src/unstable/ai/McpServer.ts +307 -87
- package/src/unstable/ai/Model.ts +44 -13
- package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
- package/src/unstable/ai/Prompt.ts +23 -29
- package/src/unstable/ai/Response.ts +29 -31
- package/src/unstable/ai/ResponseIdTracker.ts +95 -0
- package/src/unstable/ai/Telemetry.ts +2 -2
- package/src/unstable/ai/Tokenizer.ts +2 -2
- package/src/unstable/ai/Tool.ts +62 -36
- package/src/unstable/ai/Toolkit.ts +17 -26
- package/src/unstable/ai/index.ts +24 -1
- package/src/unstable/ai/internal/codec-transformer.ts +3 -9
- package/src/unstable/cli/Argument.ts +5 -8
- package/src/unstable/cli/CliError.ts +67 -66
- package/src/unstable/cli/CliOutput.ts +87 -15
- package/src/unstable/cli/Command.ts +808 -193
- package/src/unstable/cli/Completions.ts +107 -0
- package/src/unstable/cli/Flag.ts +5 -6
- package/src/unstable/cli/GlobalFlag.ts +242 -0
- package/src/unstable/cli/HelpDoc.ts +91 -11
- package/src/unstable/cli/Param.ts +54 -27
- package/src/unstable/cli/Primitive.ts +2 -2
- package/src/unstable/cli/Prompt.ts +275 -104
- package/src/unstable/cli/index.ts +12 -0
- package/src/unstable/cli/internal/command.ts +125 -64
- package/src/unstable/cli/internal/completions/bash.ts +7 -7
- package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
- package/src/unstable/cli/internal/completions/fish.ts +7 -7
- package/src/unstable/cli/internal/completions/zsh.ts +8 -14
- package/src/unstable/cli/internal/config.ts +49 -0
- package/src/unstable/cli/internal/help.ts +171 -0
- package/src/unstable/cli/internal/parser.ts +201 -84
- package/src/unstable/cluster/ClusterCron.ts +2 -2
- package/src/unstable/cluster/ClusterSchema.ts +38 -10
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +142 -80
- package/src/unstable/cluster/DeliverAt.ts +1 -1
- package/src/unstable/cluster/Entity.ts +58 -45
- package/src/unstable/cluster/EntityAddress.ts +1 -1
- package/src/unstable/cluster/EntityProxy.ts +3 -3
- package/src/unstable/cluster/EntityProxyServer.ts +6 -6
- package/src/unstable/cluster/EntityResource.ts +6 -6
- package/src/unstable/cluster/HttpRunner.ts +2 -2
- package/src/unstable/cluster/K8sHttpClient.ts +7 -7
- package/src/unstable/cluster/Message.ts +30 -17
- package/src/unstable/cluster/MessageStorage.ts +74 -45
- package/src/unstable/cluster/Reply.ts +13 -10
- package/src/unstable/cluster/Runner.ts +1 -1
- package/src/unstable/cluster/RunnerAddress.ts +1 -1
- package/src/unstable/cluster/RunnerHealth.ts +2 -2
- package/src/unstable/cluster/RunnerServer.ts +11 -14
- package/src/unstable/cluster/RunnerStorage.ts +9 -9
- package/src/unstable/cluster/Runners.ts +22 -18
- package/src/unstable/cluster/ShardId.ts +84 -74
- package/src/unstable/cluster/Sharding.ts +75 -60
- package/src/unstable/cluster/ShardingConfig.ts +39 -40
- package/src/unstable/cluster/Snowflake.ts +2 -2
- package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
- package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
- package/src/unstable/cluster/internal/entityManager.ts +60 -41
- package/src/unstable/cluster/internal/entityReaper.ts +2 -2
- package/src/unstable/cluster/internal/resourceMap.ts +3 -3
- package/src/unstable/devtools/DevToolsClient.ts +26 -21
- package/src/unstable/devtools/DevToolsSchema.ts +16 -3
- package/src/unstable/encoding/Ndjson.ts +17 -17
- package/src/unstable/encoding/Sse.ts +3 -5
- package/src/unstable/eventlog/Event.ts +0 -8
- package/src/unstable/eventlog/EventGroup.ts +0 -4
- package/src/unstable/eventlog/EventJournal.ts +148 -80
- package/src/unstable/eventlog/EventLog.ts +360 -234
- package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
- package/src/unstable/eventlog/EventLogMessage.ts +277 -0
- package/src/unstable/eventlog/EventLogRemote.ts +264 -410
- package/src/unstable/eventlog/EventLogServer.ts +183 -275
- package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
- package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
- package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
- package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
- package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
- package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
- package/src/unstable/eventlog/index.ts +27 -2
- package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
- package/src/unstable/http/Cookies.ts +94 -11
- package/src/unstable/http/Etag.ts +7 -5
- package/src/unstable/http/FetchHttpClient.ts +5 -5
- package/src/unstable/http/Headers.ts +70 -20
- package/src/unstable/http/HttpClient.ts +385 -42
- package/src/unstable/http/HttpClientRequest.ts +151 -39
- package/src/unstable/http/HttpClientResponse.ts +24 -8
- package/src/unstable/http/HttpEffect.ts +71 -77
- package/src/unstable/http/HttpIncomingMessage.ts +9 -8
- package/src/unstable/http/HttpMethod.ts +16 -4
- package/src/unstable/http/HttpMiddleware.ts +50 -50
- package/src/unstable/http/HttpPlatform.ts +5 -4
- package/src/unstable/http/HttpRouter.ts +46 -46
- package/src/unstable/http/HttpServer.ts +5 -11
- package/src/unstable/http/HttpServerError.ts +45 -47
- package/src/unstable/http/HttpServerRequest.ts +414 -23
- package/src/unstable/http/HttpServerRespondable.ts +6 -6
- package/src/unstable/http/HttpServerResponse.ts +351 -13
- package/src/unstable/http/HttpStaticServer.ts +456 -0
- package/src/unstable/http/HttpTraceContext.ts +31 -17
- package/src/unstable/http/Multipart.ts +8 -8
- package/src/unstable/http/Url.ts +650 -0
- package/src/unstable/http/UrlParams.ts +30 -18
- package/src/unstable/http/index.ts +10 -0
- package/src/unstable/http/internal/preResponseHandler.ts +15 -0
- package/src/unstable/httpapi/HttpApi.ts +22 -22
- package/src/unstable/httpapi/HttpApiBuilder.ts +134 -54
- package/src/unstable/httpapi/HttpApiClient.ts +185 -34
- package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -114
- package/src/unstable/httpapi/HttpApiError.ts +129 -30
- package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
- package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -32
- package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
- package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
- package/src/unstable/httpapi/OpenApi.ts +74 -73
- package/src/unstable/observability/Otlp.ts +12 -12
- package/src/unstable/observability/OtlpExporter.ts +14 -10
- package/src/unstable/observability/OtlpLogger.ts +13 -9
- package/src/unstable/observability/OtlpMetrics.ts +6 -6
- package/src/unstable/observability/OtlpSerialization.ts +2 -2
- package/src/unstable/observability/OtlpTracer.ts +14 -10
- package/src/unstable/observability/PrometheusMetrics.ts +5 -5
- package/src/unstable/observability/internal/protobuf.ts +4 -4
- package/src/unstable/persistence/KeyValueStore.ts +226 -3
- package/src/unstable/persistence/Persistable.ts +3 -3
- package/src/unstable/persistence/PersistedCache.ts +20 -17
- package/src/unstable/persistence/PersistedQueue.ts +21 -21
- package/src/unstable/persistence/Persistence.ts +7 -7
- package/src/unstable/persistence/RateLimiter.ts +7 -7
- package/src/unstable/persistence/Redis.ts +2 -2
- package/src/unstable/process/ChildProcess.ts +6 -208
- package/src/unstable/process/ChildProcessSpawner.ts +114 -15
- package/src/unstable/reactivity/AsyncResult.ts +59 -17
- package/src/unstable/reactivity/Atom.ts +280 -124
- package/src/unstable/reactivity/AtomHttpApi.ts +127 -61
- package/src/unstable/reactivity/AtomRegistry.ts +70 -16
- package/src/unstable/reactivity/AtomRpc.ts +82 -37
- package/src/unstable/reactivity/Reactivity.ts +6 -6
- package/src/unstable/rpc/Rpc.ts +212 -32
- package/src/unstable/rpc/RpcClient.ts +161 -142
- package/src/unstable/rpc/RpcGroup.ts +51 -34
- package/src/unstable/rpc/RpcMiddleware.ts +28 -22
- package/src/unstable/rpc/RpcSchema.ts +24 -6
- package/src/unstable/rpc/RpcSerialization.ts +97 -54
- package/src/unstable/rpc/RpcServer.ts +91 -65
- package/src/unstable/rpc/RpcWorker.ts +5 -5
- package/src/unstable/rpc/Utils.ts +63 -4
- package/src/unstable/schema/Model.ts +35 -6
- package/src/unstable/schema/VariantSchema.ts +14 -27
- package/src/unstable/socket/Socket.ts +102 -62
- package/src/unstable/socket/SocketServer.ts +2 -2
- package/src/unstable/sql/Migrator.ts +7 -5
- package/src/unstable/sql/SqlClient.ts +48 -19
- package/src/unstable/sql/SqlConnection.ts +2 -2
- package/src/unstable/sql/SqlError.ts +365 -11
- package/src/unstable/sql/SqlModel.ts +57 -85
- package/src/unstable/sql/SqlResolver.ts +28 -20
- package/src/unstable/sql/SqlSchema.ts +42 -26
- package/src/unstable/sql/Statement.ts +21 -25
- package/src/unstable/workers/Transferable.ts +17 -19
- package/src/unstable/workers/Worker.ts +4 -4
- package/src/unstable/workers/WorkerRunner.ts +2 -2
- package/src/unstable/workflow/Activity.ts +36 -13
- package/src/unstable/workflow/DurableClock.ts +11 -11
- package/src/unstable/workflow/DurableDeferred.ts +36 -18
- package/src/unstable/workflow/Workflow.ts +46 -35
- package/src/unstable/workflow/WorkflowEngine.ts +236 -23
- package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
- 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/ServiceMap.d.ts +0 -1126
- package/dist/ServiceMap.d.ts.map +0 -1
- package/dist/ServiceMap.js.map +0 -1
- package/dist/internal/schema/to-codec.d.ts +0 -2
- package/dist/internal/schema/to-codec.d.ts.map +0 -1
- package/dist/internal/schema/to-codec.js +0 -129
- package/dist/internal/schema/to-codec.js.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
- package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
- package/dist/unstable/cli/internal/builtInFlags.js +0 -44
- package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
- package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
- package/dist/unstable/cli/internal/completions/CommandDescriptor.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/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
- package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
- package/src/NullOr.ts +0 -204
- package/src/ServiceMap.ts +0 -1410
- package/src/internal/schema/to-codec.ts +0 -148
- package/src/unstable/cli/internal/builtInFlags.ts +0 -78
- package/src/unstable/cli/internal/completions/Completions.ts +0 -31
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import * as Arr from "../../Array.js";
|
|
5
5
|
import * as Cause from "../../Cause.js";
|
|
6
6
|
import { Clock } from "../../Clock.js";
|
|
7
|
+
import * as Context from "../../Context.js";
|
|
7
8
|
import * as Duration from "../../Duration.js";
|
|
8
9
|
import * as Effect from "../../Effect.js";
|
|
9
10
|
import * as Equal from "../../Equal.js";
|
|
@@ -23,7 +24,6 @@ import * as Result from "../../Result.js";
|
|
|
23
24
|
import * as Schedule from "../../Schedule.js";
|
|
24
25
|
import * as Scope from "../../Scope.js";
|
|
25
26
|
import * as Semaphore from "../../Semaphore.js";
|
|
26
|
-
import * as ServiceMap from "../../ServiceMap.js";
|
|
27
27
|
import * as Stream from "../../Stream.js";
|
|
28
28
|
import * as RpcClient from "../rpc/RpcClient.js";
|
|
29
29
|
import { RequestId } from "../rpc/RpcMessage.js";
|
|
@@ -55,16 +55,17 @@ import * as Snowflake from "./Snowflake.js";
|
|
|
55
55
|
* @since 4.0.0
|
|
56
56
|
* @category models
|
|
57
57
|
*/
|
|
58
|
-
export class Sharding extends /*#__PURE__*/
|
|
58
|
+
export class Sharding extends /*#__PURE__*/Context.Service()("effect/cluster/Sharding") {}
|
|
59
59
|
const make = /*#__PURE__*/Effect.gen(function* () {
|
|
60
60
|
const config = yield* ShardingConfig;
|
|
61
|
+
const getRunnerAddress = () => Option.getOrUndefined(config.runnerAddress);
|
|
61
62
|
const clock = yield* Clock;
|
|
62
63
|
const runnersService = yield* Runners;
|
|
63
64
|
const runnerHealth = yield* RunnerHealth.RunnerHealth;
|
|
64
65
|
const snowflakeGen = yield* Snowflake.Generator;
|
|
65
66
|
const shardingScope = yield* Effect.scope;
|
|
66
67
|
const isShutdown = MutableRef.make(false);
|
|
67
|
-
const services =
|
|
68
|
+
const services = Context.omit(Scope.Scope)(yield* Effect.context());
|
|
68
69
|
const runFork = flow(Effect.runForkWith(services), Fiber.runIn(shardingScope));
|
|
69
70
|
const storage = yield* MessageStorage.MessageStorage;
|
|
70
71
|
const storageEnabled = storage !== MessageStorage.noop;
|
|
@@ -77,7 +78,10 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
77
78
|
const activeShardsLatch = yield* Latch.make(false);
|
|
78
79
|
const events = yield* PubSub.unbounded();
|
|
79
80
|
const getRegistrationEvents = Stream.fromPubSub(events);
|
|
80
|
-
const isLocalRunner = address =>
|
|
81
|
+
const isLocalRunner = address => {
|
|
82
|
+
const runnerAddress = getRunnerAddress();
|
|
83
|
+
return runnerAddress !== undefined && Equal.equals(address, runnerAddress);
|
|
84
|
+
};
|
|
81
85
|
function getShardId(entityId, group) {
|
|
82
86
|
const id = Math.abs(hashString(entityId) % config.shardsPerGroup) + 1;
|
|
83
87
|
return makeShardId(group, id);
|
|
@@ -95,8 +99,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
95
99
|
// This should be shutdown last, when all entities have been shutdown, to
|
|
96
100
|
// allow them to move to another runner.
|
|
97
101
|
const releasingShards = MutableHashSet.empty();
|
|
98
|
-
|
|
99
|
-
|
|
102
|
+
const initialRunnerAddress = getRunnerAddress();
|
|
103
|
+
if (initialRunnerAddress) {
|
|
104
|
+
const selfAddress = initialRunnerAddress;
|
|
100
105
|
yield* Scope.addFinalizerExit(shardingScope, () => {
|
|
101
106
|
// the locks expire over time, so if this fails we ignore it
|
|
102
107
|
return Effect.ignore(runnerStorage.releaseAll(selfAddress));
|
|
@@ -167,7 +172,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
167
172
|
yield* storageReadLatch.open;
|
|
168
173
|
yield* Effect.forkIn(syncSingletons, shardingScope);
|
|
169
174
|
// update metrics
|
|
170
|
-
ClusterMetrics.shards.updateUnsafe(BigInt(MutableHashSet.size(acquiredShards)),
|
|
175
|
+
ClusterMetrics.shards.updateUnsafe(BigInt(MutableHashSet.size(acquiredShards)), Context.empty());
|
|
171
176
|
}
|
|
172
177
|
yield* Effect.sleep(1000);
|
|
173
178
|
activeShardsLatch.openUnsafe();
|
|
@@ -218,9 +223,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
218
223
|
const openStorageReadLatch = constant(Effect.asVoid(storageReadLatch.open));
|
|
219
224
|
const storageReadLock = Semaphore.makeUnsafe(1);
|
|
220
225
|
const withStorageReadLock = storageReadLock.withPermits(1);
|
|
221
|
-
if (storageEnabled &&
|
|
222
|
-
const selfAddress =
|
|
223
|
-
const entityRegistrationTimeoutMillis = Duration.toMillis(Duration.
|
|
226
|
+
if (storageEnabled && initialRunnerAddress) {
|
|
227
|
+
const selfAddress = initialRunnerAddress;
|
|
228
|
+
const entityRegistrationTimeoutMillis = Duration.toMillis(Duration.fromInputUnsafe(config.entityRegistrationTimeout));
|
|
224
229
|
const storageStartMillis = clock.currentTimeMillisUnsafe();
|
|
225
230
|
yield* Effect.gen(function* () {
|
|
226
231
|
yield* Effect.logDebug("Starting");
|
|
@@ -510,9 +515,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
510
515
|
});
|
|
511
516
|
});
|
|
512
517
|
function sendOutgoing(message, discard, retries) {
|
|
513
|
-
return Effect.
|
|
518
|
+
return Effect.catchFilter(Effect.suspend(() => {
|
|
514
519
|
const address = message.envelope.address;
|
|
515
|
-
const isPersisted =
|
|
520
|
+
const isPersisted = Context.get(message._tag === "OutgoingRequest" ? message.annotations : message.rpc.annotations, Persisted);
|
|
516
521
|
if (isPersisted && !storageEnabled) {
|
|
517
522
|
return Effect.die("Sharding.sendOutgoing: Persisted messages require MessageStorage");
|
|
518
523
|
}
|
|
@@ -520,7 +525,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
520
525
|
const runnerIsLocal = Option.isSome(maybeRunner) && isLocalRunner(maybeRunner.value);
|
|
521
526
|
if (isPersisted) {
|
|
522
527
|
return runnerIsLocal ? notifyLocal(message, discard) : runnersService.notify({
|
|
523
|
-
address:
|
|
528
|
+
address: maybeRunner,
|
|
524
529
|
message,
|
|
525
530
|
discard
|
|
526
531
|
});
|
|
@@ -552,8 +557,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
552
557
|
// It should be shutdown after the clients, so that they can still get correct
|
|
553
558
|
// shard assignments for outgoing messages (they could still be in use by
|
|
554
559
|
// entities that are shutting down).
|
|
555
|
-
const selfRunner =
|
|
556
|
-
address:
|
|
560
|
+
const selfRunner = initialRunnerAddress ? new Runner({
|
|
561
|
+
address: initialRunnerAddress,
|
|
557
562
|
groups: config.shardGroups,
|
|
558
563
|
weight: config.runnerShardWeight
|
|
559
564
|
}) : undefined;
|
|
@@ -561,8 +566,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
561
566
|
let healthyRunnerCount = 0;
|
|
562
567
|
// update metrics
|
|
563
568
|
if (selfRunner) {
|
|
564
|
-
ClusterMetrics.runners.updateUnsafe(BigInt(1),
|
|
565
|
-
ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(1),
|
|
569
|
+
ClusterMetrics.runners.updateUnsafe(BigInt(1), Context.empty());
|
|
570
|
+
ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(1), Context.empty());
|
|
566
571
|
}
|
|
567
572
|
yield* Effect.gen(function* () {
|
|
568
573
|
const hashRings = new Map();
|
|
@@ -645,7 +650,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
645
650
|
activeShardsLatch.openUnsafe();
|
|
646
651
|
// update metrics
|
|
647
652
|
if (selfRunner) {
|
|
648
|
-
ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(MutableHashSet.has(healthyRunners, selfRunner) ? 1 : 0),
|
|
653
|
+
ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(MutableHashSet.has(healthyRunners, selfRunner) ? 1 : 0), Context.empty());
|
|
649
654
|
}
|
|
650
655
|
}
|
|
651
656
|
if (selfRunner && MutableHashSet.size(healthyRunners) === 0) {
|
|
@@ -659,18 +664,18 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
659
664
|
}).pipe(Effect.catchCause(cause => Effect.logDebug(cause)), Effect.repeat(Schedule.spaced(1000)), Effect.annotateLogs({
|
|
660
665
|
module: "effect/cluster/Sharding",
|
|
661
666
|
fiber: "RunnerStorage sync",
|
|
662
|
-
runner:
|
|
667
|
+
runner: initialRunnerAddress
|
|
663
668
|
}), Effect.forkIn(shardingScope));
|
|
664
669
|
const clientRequests = new Map();
|
|
665
670
|
const clients = yield* ResourceMap.make(Effect.fnUntraced(function* (entity) {
|
|
666
671
|
const client = yield* RpcClient.makeNoSerialization(entity.protocol, {
|
|
667
672
|
spanPrefix: `${entity.type}.client`,
|
|
668
|
-
disableTracing: !
|
|
673
|
+
disableTracing: !Context.get(entity.protocol.annotations, ClusterSchema.ClientTracingEnabled),
|
|
669
674
|
supportsAck: true,
|
|
670
675
|
generateRequestId: () => RequestId(snowflakeGen.nextUnsafe()),
|
|
671
676
|
flatten: true,
|
|
672
677
|
onFromClient(options) {
|
|
673
|
-
const address =
|
|
678
|
+
const address = Context.getUnsafe(options.context, ClientAddressTag);
|
|
674
679
|
switch (options.message._tag) {
|
|
675
680
|
case "Request":
|
|
676
681
|
{
|
|
@@ -678,32 +683,36 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
678
683
|
const id = Snowflake.Snowflake(options.message.id);
|
|
679
684
|
const rpc = entity.protocol.requests.get(options.message.tag);
|
|
680
685
|
let respond;
|
|
686
|
+
const envelope = Envelope.makeRequest({
|
|
687
|
+
requestId: id,
|
|
688
|
+
address,
|
|
689
|
+
tag: options.message.tag,
|
|
690
|
+
payload: options.message.payload,
|
|
691
|
+
headers: options.message.headers,
|
|
692
|
+
traceId: options.message.traceId,
|
|
693
|
+
spanId: options.message.spanId,
|
|
694
|
+
sampled: options.message.sampled
|
|
695
|
+
});
|
|
696
|
+
const message = new Message.OutgoingRequest({
|
|
697
|
+
envelope,
|
|
698
|
+
lastReceivedReply: Option.none(),
|
|
699
|
+
rpc,
|
|
700
|
+
context: fiber.context,
|
|
701
|
+
respond: reply => respond(reply),
|
|
702
|
+
annotations: Context.get(rpc.annotations, ClusterSchema.Dynamic)(rpc.annotations, envelope)
|
|
703
|
+
});
|
|
681
704
|
if (!options.discard) {
|
|
682
705
|
const entry = {
|
|
683
706
|
rpc: rpc,
|
|
684
|
-
|
|
707
|
+
context: fiber.currentContext,
|
|
708
|
+
message
|
|
685
709
|
};
|
|
686
710
|
clientRequests.set(id, entry);
|
|
687
711
|
respond = makeClientRespond(entry, client.write);
|
|
688
712
|
} else {
|
|
689
713
|
respond = clientRespondDiscard;
|
|
690
714
|
}
|
|
691
|
-
return sendOutgoing(
|
|
692
|
-
envelope: Envelope.makeRequest({
|
|
693
|
-
requestId: id,
|
|
694
|
-
address,
|
|
695
|
-
tag: options.message.tag,
|
|
696
|
-
payload: options.message.payload,
|
|
697
|
-
headers: options.message.headers,
|
|
698
|
-
traceId: options.message.traceId,
|
|
699
|
-
spanId: options.message.spanId,
|
|
700
|
-
sampled: options.message.sampled
|
|
701
|
-
}),
|
|
702
|
-
lastReceivedReply: undefined,
|
|
703
|
-
rpc,
|
|
704
|
-
services: fiber.services,
|
|
705
|
-
respond
|
|
706
|
-
}), options.discard);
|
|
715
|
+
return sendOutgoing(message, options.discard);
|
|
707
716
|
}
|
|
708
717
|
case "Ack":
|
|
709
718
|
{
|
|
@@ -726,13 +735,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
726
735
|
const entry = clientRequests.get(requestId);
|
|
727
736
|
if (!entry) return Effect.void;
|
|
728
737
|
clientRequests.delete(requestId);
|
|
729
|
-
if (ClusterSchema.isUninterruptibleForClient(entry.
|
|
738
|
+
if (ClusterSchema.isUninterruptibleForClient(entry.message.annotations)) {
|
|
730
739
|
return Effect.void;
|
|
731
740
|
}
|
|
732
741
|
// for durable messages, we ignore interrupts on shutdown or as a
|
|
733
742
|
// result of a shard being resassigned
|
|
734
743
|
const isTransientInterrupt = MutableRef.get(isShutdown) || options.message.interruptors.some(id => internalInterruptors.has(id));
|
|
735
|
-
if (isTransientInterrupt &&
|
|
744
|
+
if (isTransientInterrupt && Context.get(entry.message.annotations, Persisted)) {
|
|
736
745
|
return Effect.void;
|
|
737
746
|
}
|
|
738
747
|
return Effect.ignore(sendOutgoing(new Message.OutgoingEnvelope({
|
|
@@ -754,13 +763,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
754
763
|
}));
|
|
755
764
|
return entityId => {
|
|
756
765
|
const id = makeEntityId(entityId);
|
|
757
|
-
const address = ClientAddressTag.
|
|
766
|
+
const address = ClientAddressTag.context(makeEntityAddress({
|
|
758
767
|
shardId: getShardId(id, entity.getShardGroup(entityId)),
|
|
759
768
|
entityId: id,
|
|
760
769
|
entityType: entity.type
|
|
761
770
|
}));
|
|
762
771
|
const clientFn = function (tag, payload, options) {
|
|
763
|
-
const context = options?.context ?
|
|
772
|
+
const context = options?.context ? Context.merge(options.context, address) : address;
|
|
764
773
|
return client.client(tag, payload, {
|
|
765
774
|
...options,
|
|
766
775
|
context
|
|
@@ -826,8 +835,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
826
835
|
if (MutableHashMap.has(map, address)) {
|
|
827
836
|
return yield* Effect.die(`Singleton '${name}' is already registered`);
|
|
828
837
|
}
|
|
829
|
-
const services = yield* Effect.
|
|
830
|
-
const wrappedRun = run.pipe(Effect.andThen(Effect.never), Effect.scoped, Effect.provideService(CurrentLogAnnotations, {}), Effect.
|
|
838
|
+
const services = yield* Effect.context();
|
|
839
|
+
const wrappedRun = run.pipe(Effect.andThen(Effect.never), Effect.scoped, Effect.provideService(CurrentLogAnnotations, {}), Effect.provideContext(services), Effect.orDie, Effect.interruptible);
|
|
831
840
|
MutableHashMap.set(map, address, wrappedRun);
|
|
832
841
|
yield* PubSub.publish(events, SingletonRegistered({
|
|
833
842
|
address
|
|
@@ -858,13 +867,14 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
858
867
|
}
|
|
859
868
|
}
|
|
860
869
|
}
|
|
861
|
-
ClusterMetrics.singletons.updateUnsafe(BigInt(yield* FiberMap.size(singletonFibers)),
|
|
870
|
+
ClusterMetrics.singletons.updateUnsafe(BigInt(yield* FiberMap.size(singletonFibers)), Context.empty());
|
|
862
871
|
}));
|
|
863
872
|
// --- Entities ---
|
|
864
873
|
const reaper = yield* EntityReaper;
|
|
865
874
|
const entityManagerLatches = new Map();
|
|
866
875
|
const registerEntity = Effect.fnUntraced(function* (entity, build, options) {
|
|
867
|
-
|
|
876
|
+
const runnerAddress = getRunnerAddress();
|
|
877
|
+
if (!runnerAddress || entityManagers.has(entity.type)) return;
|
|
868
878
|
const scope = yield* Effect.scope;
|
|
869
879
|
yield* Scope.addFinalizer(scope, Effect.sync(() => {
|
|
870
880
|
state.status = "closed";
|
|
@@ -872,9 +882,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
872
882
|
const manager = yield* EntityManager.make(entity, build, {
|
|
873
883
|
...options,
|
|
874
884
|
storage,
|
|
875
|
-
runnerAddress
|
|
885
|
+
runnerAddress,
|
|
876
886
|
sharding
|
|
877
|
-
}).pipe(Effect.
|
|
887
|
+
}).pipe(Effect.provideContext(Context.mutate(services, services => services.pipe(Context.add(EntityReaper, reaper), Context.add(Scope.Scope, scope), Context.add(Snowflake.Generator, snowflakeGen)))));
|
|
878
888
|
const state = {
|
|
879
889
|
entity,
|
|
880
890
|
status: "alive",
|
|
@@ -988,5 +998,5 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
988
998
|
*/
|
|
989
999
|
export const layer = /*#__PURE__*/Layer.effect(Sharding)(make).pipe(/*#__PURE__*/Layer.provide([Snowflake.layerGenerator, EntityReaper.layer]));
|
|
990
1000
|
// Utilities
|
|
991
|
-
const ClientAddressTag = /*#__PURE__*/
|
|
1001
|
+
const ClientAddressTag = /*#__PURE__*/Context.Service("effect/cluster/Sharding/ClientAddress");
|
|
992
1002
|
//# sourceMappingURL=Sharding.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Latch","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","Semaphore","ServiceMap","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","equals","runnerAddress","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromDurationInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchIf","isPersisted","rpc","annotations","maybeRunner","runnerIsLocal","getOrUndefined","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","undefined","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","context","ClientAddressTag","getCurrent","requests","tag","respond","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","serviceMap","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideServices","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","preemptiveShutdown","shutdown","latch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Context","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Latch","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","Semaphore","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","getRunnerAddress","getOrUndefined","runnerAddress","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","context","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","undefined","equals","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","initialRunnerAddress","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchFilter","isPersisted","annotations","rpc","maybeRunner","runnerIsLocal","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","ClientAddressTag","getCurrent","requests","tag","respond","makeRequest","payload","headers","traceId","spanId","sampled","OutgoingRequest","lastReceivedReply","none","reply","Dynamic","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideContext","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","mutate","preemptiveShutdown","shutdown","latch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|