actor-ts 0.9.1 → 0.10.0
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/CHANGELOG.md +382 -0
- package/README.md +285 -269
- package/dist/ActorSystem.d.ts +3 -38
- package/dist/ActorSystem.d.ts.map +1 -1
- package/dist/ActorSystem.js +2 -2
- package/dist/ActorSystem.js.map +1 -1
- package/dist/ActorSystemOptions.d.ts +91 -0
- package/dist/ActorSystemOptions.d.ts.map +1 -0
- package/dist/ActorSystemOptions.js +45 -0
- package/dist/ActorSystemOptions.js.map +1 -0
- package/dist/Logger.d.ts +63 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +146 -0
- package/dist/Logger.js.map +1 -1
- package/dist/cache/MemcachedCache.d.ts +2 -12
- package/dist/cache/MemcachedCache.d.ts.map +1 -1
- package/dist/cache/MemcachedCache.js +2 -1
- package/dist/cache/MemcachedCache.js.map +1 -1
- package/dist/cache/MemcachedCacheOptions.d.ts +40 -0
- package/dist/cache/MemcachedCacheOptions.d.ts.map +1 -0
- package/dist/cache/MemcachedCacheOptions.js +32 -0
- package/dist/cache/MemcachedCacheOptions.js.map +1 -0
- package/dist/cache/RedisCache.d.ts +2 -22
- package/dist/cache/RedisCache.d.ts.map +1 -1
- package/dist/cache/RedisCache.js +2 -1
- package/dist/cache/RedisCache.js.map +1 -1
- package/dist/cache/RedisCacheOptions.d.ts +56 -0
- package/dist/cache/RedisCacheOptions.d.ts.map +1 -0
- package/dist/cache/RedisCacheOptions.js +43 -0
- package/dist/cache/RedisCacheOptions.js.map +1 -0
- package/dist/cache/index.d.ts +6 -2
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +2 -0
- package/dist/cache/index.js.map +1 -1
- package/dist/cluster/Cluster.d.ts +4 -63
- package/dist/cluster/Cluster.d.ts.map +1 -1
- package/dist/cluster/Cluster.js +10 -5
- package/dist/cluster/Cluster.js.map +1 -1
- package/dist/cluster/ClusterBootstrap.d.ts +6 -84
- package/dist/cluster/ClusterBootstrap.d.ts.map +1 -1
- package/dist/cluster/ClusterBootstrap.js +33 -21
- package/dist/cluster/ClusterBootstrap.js.map +1 -1
- package/dist/cluster/ClusterBootstrapOptions.d.ts +152 -0
- package/dist/cluster/ClusterBootstrapOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterBootstrapOptions.js +103 -0
- package/dist/cluster/ClusterBootstrapOptions.js.map +1 -0
- package/dist/cluster/ClusterClient.d.ts +21 -31
- package/dist/cluster/ClusterClient.d.ts.map +1 -1
- package/dist/cluster/ClusterClient.js +21 -6
- package/dist/cluster/ClusterClient.js.map +1 -1
- package/dist/cluster/ClusterClientOptions.d.ts +65 -0
- package/dist/cluster/ClusterClientOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientOptions.js +43 -0
- package/dist/cluster/ClusterClientOptions.js.map +1 -0
- package/dist/cluster/ClusterClientReceptionist.d.ts +2 -8
- package/dist/cluster/ClusterClientReceptionist.d.ts.map +1 -1
- package/dist/cluster/ClusterClientReceptionist.js +3 -1
- package/dist/cluster/ClusterClientReceptionist.js.map +1 -1
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts +32 -0
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js +22 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js.map +1 -0
- package/dist/cluster/ClusterOptions.d.ts +116 -0
- package/dist/cluster/ClusterOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterOptions.js +77 -0
- package/dist/cluster/ClusterOptions.js.map +1 -0
- package/dist/cluster/FailureDetector.d.ts +4 -11
- package/dist/cluster/FailureDetector.d.ts.map +1 -1
- package/dist/cluster/FailureDetector.js +4 -3
- package/dist/cluster/FailureDetector.js.map +1 -1
- package/dist/cluster/FailureDetectorOptions.d.ts +38 -0
- package/dist/cluster/FailureDetectorOptions.d.ts.map +1 -0
- package/dist/cluster/FailureDetectorOptions.js +31 -0
- package/dist/cluster/FailureDetectorOptions.js.map +1 -0
- package/dist/cluster/PhiAccrualFailureDetector.d.ts +3 -19
- package/dist/cluster/PhiAccrualFailureDetector.d.ts.map +1 -1
- package/dist/cluster/PhiAccrualFailureDetector.js +2 -2
- package/dist/cluster/PhiAccrualFailureDetector.js.map +1 -1
- package/dist/cluster/PhiAccrualOptions.d.ts +53 -0
- package/dist/cluster/PhiAccrualOptions.d.ts.map +1 -0
- package/dist/cluster/PhiAccrualOptions.js +43 -0
- package/dist/cluster/PhiAccrualOptions.js.map +1 -0
- package/dist/cluster/downing/KeepOldest.d.ts +2 -11
- package/dist/cluster/downing/KeepOldest.d.ts.map +1 -1
- package/dist/cluster/downing/KeepOldest.js +2 -2
- package/dist/cluster/downing/KeepOldest.js.map +1 -1
- package/dist/cluster/downing/KeepOldestOptions.d.ts +34 -0
- package/dist/cluster/downing/KeepOldestOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepOldestOptions.js +23 -0
- package/dist/cluster/downing/KeepOldestOptions.js.map +1 -0
- package/dist/cluster/downing/KeepReferee.d.ts +2 -10
- package/dist/cluster/downing/KeepReferee.d.ts.map +1 -1
- package/dist/cluster/downing/KeepReferee.js +3 -3
- package/dist/cluster/downing/KeepReferee.js.map +1 -1
- package/dist/cluster/downing/KeepRefereeOptions.d.ts +35 -0
- package/dist/cluster/downing/KeepRefereeOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepRefereeOptions.js +25 -0
- package/dist/cluster/downing/KeepRefereeOptions.js.map +1 -0
- package/dist/cluster/downing/LeaseMajority.d.ts +63 -21
- package/dist/cluster/downing/LeaseMajority.d.ts.map +1 -1
- package/dist/cluster/downing/LeaseMajority.js +132 -9
- package/dist/cluster/downing/LeaseMajority.js.map +1 -1
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts +49 -0
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts.map +1 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js +31 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js.map +1 -0
- package/dist/cluster/downing/StaticQuorum.d.ts +2 -7
- package/dist/cluster/downing/StaticQuorum.d.ts.map +1 -1
- package/dist/cluster/downing/StaticQuorum.js +3 -3
- package/dist/cluster/downing/StaticQuorum.js.map +1 -1
- package/dist/cluster/downing/StaticQuorumOptions.d.ts +30 -0
- package/dist/cluster/downing/StaticQuorumOptions.d.ts.map +1 -0
- package/dist/cluster/downing/StaticQuorumOptions.js +23 -0
- package/dist/cluster/downing/StaticQuorumOptions.js.map +1 -0
- package/dist/cluster/downing/index.d.ts +8 -4
- package/dist/cluster/downing/index.d.ts.map +1 -1
- package/dist/cluster/downing/index.js +4 -0
- package/dist/cluster/downing/index.js.map +1 -1
- package/dist/cluster/index.d.ts +34 -19
- package/dist/cluster/index.d.ts.map +1 -1
- package/dist/cluster/index.js +15 -4
- package/dist/cluster/index.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts +2 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.js +5 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts +3 -7
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.js +3 -3
- package/dist/cluster/pubsub/DistributedPubSubMediator.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts +29 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts.map +1 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js +23 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js.map +1 -0
- package/dist/cluster/pubsub/index.d.ts +2 -1
- package/dist/cluster/pubsub/index.d.ts.map +1 -1
- package/dist/cluster/pubsub/index.js +1 -0
- package/dist/cluster/pubsub/index.js.map +1 -1
- package/dist/cluster/router/ClusterRouter.d.ts +12 -32
- package/dist/cluster/router/ClusterRouter.d.ts.map +1 -1
- package/dist/cluster/router/ClusterRouter.js +4 -2
- package/dist/cluster/router/ClusterRouter.js.map +1 -1
- package/dist/cluster/router/ClusterRouterOptions.d.ts +60 -0
- package/dist/cluster/router/ClusterRouterOptions.d.ts.map +1 -0
- package/dist/cluster/router/ClusterRouterOptions.js +41 -0
- package/dist/cluster/router/ClusterRouterOptions.js.map +1 -0
- package/dist/cluster/router/index.d.ts +3 -1
- package/dist/cluster/router/index.d.ts.map +1 -1
- package/dist/cluster/router/index.js +1 -0
- package/dist/cluster/router/index.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts +1 -15
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js +35 -2
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js.map +1 -0
- package/dist/cluster/sharding/ClusterSharding.d.ts +18 -64
- package/dist/cluster/sharding/ClusterSharding.d.ts.map +1 -1
- package/dist/cluster/sharding/ClusterSharding.js +44 -20
- package/dist/cluster/sharding/ClusterSharding.js.map +1 -1
- package/dist/cluster/sharding/CoordinatorState.d.ts +1 -1
- package/dist/cluster/sharding/CoordinatorState.js +1 -1
- package/dist/cluster/sharding/ShardCoordinator.d.ts +3 -63
- package/dist/cluster/sharding/ShardCoordinator.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardCoordinator.js +3 -3
- package/dist/cluster/sharding/ShardCoordinator.js.map +1 -1
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts +111 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js +69 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardRegion.d.ts +2 -33
- package/dist/cluster/sharding/ShardRegion.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardRegion.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts +2 -22
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.js +14 -11
- package/dist/cluster/sharding/ShardedDaemonProcess.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts +51 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js +35 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts +84 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.js +62 -0
- package/dist/cluster/sharding/ShardingOptions.js.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts +98 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.js +52 -0
- package/dist/cluster/sharding/StartShardingOptions.js.map +1 -0
- package/dist/cluster/singleton/ClusterSingleton.d.ts +2 -30
- package/dist/cluster/singleton/ClusterSingleton.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingleton.js +15 -9
- package/dist/cluster/singleton/ClusterSingleton.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts +3 -18
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.js +3 -3
- package/dist/cluster/singleton/ClusterSingletonManager.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts +49 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js +40 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts +64 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.js +40 -0
- package/dist/cluster/singleton/StartSingletonOptions.js.map +1 -0
- package/dist/cluster/singleton/index.d.ts +6 -2
- package/dist/cluster/singleton/index.d.ts.map +1 -1
- package/dist/cluster/singleton/index.js +2 -0
- package/dist/cluster/singleton/index.js.map +1 -1
- package/dist/config/ConfigKeys.d.ts +5 -0
- package/dist/config/ConfigKeys.d.ts.map +1 -1
- package/dist/config/ConfigKeys.js +5 -0
- package/dist/config/ConfigKeys.js.map +1 -1
- package/dist/coordination/Lease.d.ts +32 -14
- package/dist/coordination/Lease.d.ts.map +1 -1
- package/dist/coordination/LeaseOptions.d.ts +61 -0
- package/dist/coordination/LeaseOptions.d.ts.map +1 -0
- package/dist/coordination/LeaseOptions.js +50 -0
- package/dist/coordination/LeaseOptions.js.map +1 -0
- package/dist/coordination/index.d.ts +5 -2
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +2 -0
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/leases/InMemoryLease.d.ts +18 -5
- package/dist/coordination/leases/InMemoryLease.d.ts.map +1 -1
- package/dist/coordination/leases/InMemoryLease.js +23 -11
- package/dist/coordination/leases/InMemoryLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLease.d.ts +19 -24
- package/dist/coordination/leases/KubernetesLease.d.ts.map +1 -1
- package/dist/coordination/leases/KubernetesLease.js +28 -9
- package/dist/coordination/leases/KubernetesLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts +58 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts.map +1 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js +42 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js.map +1 -0
- package/dist/crdt/DistributedData.d.ts +2 -22
- package/dist/crdt/DistributedData.d.ts.map +1 -1
- package/dist/crdt/DistributedData.js +3 -2
- package/dist/crdt/DistributedData.js.map +1 -1
- package/dist/crdt/DistributedDataOptions.d.ts +50 -0
- package/dist/crdt/DistributedDataOptions.d.ts.map +1 -0
- package/dist/crdt/DistributedDataOptions.js +28 -0
- package/dist/crdt/DistributedDataOptions.js.map +1 -0
- package/dist/crdt/index.d.ts +3 -1
- package/dist/crdt/index.d.ts.map +1 -1
- package/dist/crdt/index.js +1 -0
- package/dist/crdt/index.js.map +1 -1
- package/dist/delivery/ProducerController.d.ts +4 -19
- package/dist/delivery/ProducerController.d.ts.map +1 -1
- package/dist/delivery/ProducerController.js +4 -3
- package/dist/delivery/ProducerController.js.map +1 -1
- package/dist/delivery/ProducerControllerOptions.d.ts +50 -0
- package/dist/delivery/ProducerControllerOptions.d.ts.map +1 -0
- package/dist/delivery/ProducerControllerOptions.js +36 -0
- package/dist/delivery/ProducerControllerOptions.js.map +1 -0
- package/dist/delivery/ReliableDelivery.d.ts +3 -2
- package/dist/delivery/ReliableDelivery.d.ts.map +1 -1
- package/dist/delivery/ReliableDelivery.js +2 -2
- package/dist/delivery/ReliableDelivery.js.map +1 -1
- package/dist/delivery/index.d.ts +3 -1
- package/dist/delivery/index.d.ts.map +1 -1
- package/dist/delivery/index.js +1 -0
- package/dist/delivery/index.js.map +1 -1
- package/dist/discovery/AutoDiscoveryOptions.d.ts +72 -0
- package/dist/discovery/AutoDiscoveryOptions.d.ts.map +1 -0
- package/dist/discovery/AutoDiscoveryOptions.js +34 -0
- package/dist/discovery/AutoDiscoveryOptions.js.map +1 -0
- package/dist/discovery/ConfigSeedProvider.d.ts +2 -7
- package/dist/discovery/ConfigSeedProvider.d.ts.map +1 -1
- package/dist/discovery/ConfigSeedProvider.js +4 -3
- package/dist/discovery/ConfigSeedProvider.js.map +1 -1
- package/dist/discovery/ConfigSeedProviderOptions.d.ts +34 -0
- package/dist/discovery/ConfigSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/ConfigSeedProviderOptions.js +27 -0
- package/dist/discovery/ConfigSeedProviderOptions.js.map +1 -0
- package/dist/discovery/DnsSeedProvider.d.ts +3 -27
- package/dist/discovery/DnsSeedProvider.d.ts.map +1 -1
- package/dist/discovery/DnsSeedProvider.js +4 -4
- package/dist/discovery/DnsSeedProvider.js.map +1 -1
- package/dist/discovery/DnsSeedProviderOptions.d.ts +67 -0
- package/dist/discovery/DnsSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/DnsSeedProviderOptions.js +48 -0
- package/dist/discovery/DnsSeedProviderOptions.js.map +1 -0
- package/dist/discovery/KubernetesApiSeedProvider.d.ts +2 -13
- package/dist/discovery/KubernetesApiSeedProvider.d.ts.map +1 -1
- package/dist/discovery/KubernetesApiSeedProvider.js +2 -2
- package/dist/discovery/KubernetesApiSeedProvider.js.map +1 -1
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts +46 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js +39 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js.map +1 -0
- package/dist/discovery/Receptionist.d.ts +3 -6
- package/dist/discovery/Receptionist.d.ts.map +1 -1
- package/dist/discovery/Receptionist.js +10 -3
- package/dist/discovery/Receptionist.js.map +1 -1
- package/dist/discovery/ReceptionistOptions.d.ts +30 -0
- package/dist/discovery/ReceptionistOptions.d.ts.map +1 -0
- package/dist/discovery/ReceptionistOptions.js +24 -0
- package/dist/discovery/ReceptionistOptions.js.map +1 -0
- package/dist/discovery/autoDiscovery.d.ts +3 -44
- package/dist/discovery/autoDiscovery.d.ts.map +1 -1
- package/dist/discovery/autoDiscovery.js +31 -32
- package/dist/discovery/autoDiscovery.js.map +1 -1
- package/dist/discovery/index.d.ts +10 -5
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +5 -0
- package/dist/discovery/index.js.map +1 -1
- package/dist/http/HttpExtension.d.ts.map +1 -1
- package/dist/http/HttpExtension.js +69 -8
- package/dist/http/HttpExtension.js.map +1 -1
- package/dist/http/Route.d.ts +76 -4
- package/dist/http/Route.d.ts.map +1 -1
- package/dist/http/Route.js +74 -1
- package/dist/http/Route.js.map +1 -1
- package/dist/http/backend/ExpressBackend.d.ts +18 -12
- package/dist/http/backend/ExpressBackend.d.ts.map +1 -1
- package/dist/http/backend/ExpressBackend.js +134 -8
- package/dist/http/backend/ExpressBackend.js.map +1 -1
- package/dist/http/backend/ExpressBackendOptions.d.ts +47 -0
- package/dist/http/backend/ExpressBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/ExpressBackendOptions.js +35 -0
- package/dist/http/backend/ExpressBackendOptions.js.map +1 -0
- package/dist/http/backend/FastifyBackend.d.ts +4 -1
- package/dist/http/backend/FastifyBackend.d.ts.map +1 -1
- package/dist/http/backend/FastifyBackend.js +71 -1
- package/dist/http/backend/FastifyBackend.js.map +1 -1
- package/dist/http/backend/HonoBackend.d.ts +19 -13
- package/dist/http/backend/HonoBackend.d.ts.map +1 -1
- package/dist/http/backend/HonoBackend.js +152 -5
- package/dist/http/backend/HonoBackend.js.map +1 -1
- package/dist/http/backend/HonoBackendOptions.d.ts +47 -0
- package/dist/http/backend/HonoBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/HonoBackendOptions.js +35 -0
- package/dist/http/backend/HonoBackendOptions.js.map +1 -0
- package/dist/http/backend/HttpServerBackend.d.ts +24 -0
- package/dist/http/backend/HttpServerBackend.d.ts.map +1 -1
- package/dist/http/index.d.ts +11 -5
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/index.js +8 -1
- package/dist/http/index.js.map +1 -1
- package/dist/http/middleware/BearerToken.d.ts +44 -0
- package/dist/http/middleware/BearerToken.d.ts.map +1 -0
- package/dist/http/middleware/BearerToken.js +72 -0
- package/dist/http/middleware/BearerToken.js.map +1 -0
- package/dist/http/middleware/IpAllowlist.d.ts +45 -0
- package/dist/http/middleware/IpAllowlist.d.ts.map +1 -0
- package/dist/http/middleware/IpAllowlist.js +148 -0
- package/dist/http/middleware/IpAllowlist.js.map +1 -0
- package/dist/http/middleware/index.d.ts +5 -0
- package/dist/http/middleware/index.d.ts.map +1 -0
- package/dist/http/middleware/index.js +3 -0
- package/dist/http/middleware/index.js.map +1 -0
- package/dist/http/types.d.ts +9 -0
- package/dist/http/types.d.ts.map +1 -1
- package/dist/http/types.js.map +1 -1
- package/dist/http/ws/ConnectionWiring.d.ts +59 -0
- package/dist/http/ws/ConnectionWiring.d.ts.map +1 -0
- package/dist/http/ws/ConnectionWiring.js +112 -0
- package/dist/http/ws/ConnectionWiring.js.map +1 -0
- package/dist/http/ws/SocketAdapter.d.ts +72 -0
- package/dist/http/ws/SocketAdapter.d.ts.map +1 -0
- package/dist/http/ws/SocketAdapter.js +97 -0
- package/dist/http/ws/SocketAdapter.js.map +1 -0
- package/dist/http/ws/WebSocketClientActor.d.ts +66 -0
- package/dist/http/ws/WebSocketClientActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientActor.js +194 -0
- package/dist/http/ws/WebSocketClientActor.js.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts +77 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.js +69 -0
- package/dist/http/ws/WebSocketClientOptions.js.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts +51 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.js +170 -0
- package/dist/http/ws/WebSocketConnectionActor.js.map +1 -0
- package/dist/http/ws/WebSocketRoute.d.ts +20 -0
- package/dist/http/ws/WebSocketRoute.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRoute.js +44 -0
- package/dist/http/ws/WebSocketRoute.js.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts +54 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.js +55 -0
- package/dist/http/ws/WebSocketRouteOptions.js.map +1 -0
- package/dist/http/ws/WebSocketServerActor.d.ts +65 -0
- package/dist/http/ws/WebSocketServerActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketServerActor.js +133 -0
- package/dist/http/ws/WebSocketServerActor.js.map +1 -0
- package/dist/http/ws/WsCodec.d.ts +65 -0
- package/dist/http/ws/WsCodec.d.ts.map +1 -0
- package/dist/http/ws/WsCodec.js +82 -0
- package/dist/http/ws/WsCodec.js.map +1 -0
- package/dist/http/ws/WsConnection.d.ts +59 -0
- package/dist/http/ws/WsConnection.d.ts.map +1 -0
- package/dist/http/ws/WsConnection.js +45 -0
- package/dist/http/ws/WsConnection.js.map +1 -0
- package/dist/http/ws/WsMessages.d.ts +91 -0
- package/dist/http/ws/WsMessages.d.ts.map +1 -0
- package/dist/http/ws/WsMessages.js +90 -0
- package/dist/http/ws/WsMessages.js.map +1 -0
- package/dist/http/ws/WsPolicy.d.ts +32 -0
- package/dist/http/ws/WsPolicy.d.ts.map +1 -0
- package/dist/http/ws/WsPolicy.js +43 -0
- package/dist/http/ws/WsPolicy.js.map +1 -0
- package/dist/http/ws/index.d.ts +22 -0
- package/dist/http/ws/index.d.ts.map +1 -0
- package/dist/http/ws/index.js +15 -0
- package/dist/http/ws/index.js.map +1 -0
- package/dist/http/ws/matchPattern.d.ts +12 -0
- package/dist/http/ws/matchPattern.d.ts.map +1 -0
- package/dist/http/ws/matchPattern.js +29 -0
- package/dist/http/ws/matchPattern.js.map +1 -0
- package/dist/http/ws/rawResponse.d.ts +15 -0
- package/dist/http/ws/rawResponse.d.ts.map +1 -0
- package/dist/http/ws/rawResponse.js +54 -0
- package/dist/http/ws/rawResponse.js.map +1 -0
- package/dist/http/ws/types.d.ts +70 -0
- package/dist/http/ws/types.d.ts.map +1 -0
- package/dist/http/ws/types.js +81 -0
- package/dist/http/ws/types.js.map +1 -0
- package/dist/http/ws/wsCtor.d.ts +34 -0
- package/dist/http/ws/wsCtor.d.ts.map +1 -0
- package/dist/http/ws/wsCtor.js +38 -0
- package/dist/http/ws/wsCtor.js.map +1 -0
- package/dist/index.d.ts +25 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -11
- package/dist/index.js.map +1 -1
- package/dist/internal/ActorCell.d.ts +16 -1
- package/dist/internal/ActorCell.d.ts.map +1 -1
- package/dist/internal/ActorCell.js +32 -2
- package/dist/internal/ActorCell.js.map +1 -1
- package/dist/io/broker/AmqpActor.d.ts +19 -16
- package/dist/io/broker/AmqpActor.d.ts.map +1 -1
- package/dist/io/broker/AmqpActor.js +13 -5
- package/dist/io/broker/AmqpActor.js.map +1 -1
- package/dist/io/broker/AmqpOptions.d.ts +41 -0
- package/dist/io/broker/AmqpOptions.d.ts.map +1 -0
- package/dist/io/broker/AmqpOptions.js +34 -0
- package/dist/io/broker/AmqpOptions.js.map +1 -0
- package/dist/io/broker/BrokerActor.d.ts +4 -3
- package/dist/io/broker/BrokerActor.d.ts.map +1 -1
- package/dist/io/broker/BrokerActor.js +4 -2
- package/dist/io/broker/BrokerActor.js.map +1 -1
- package/dist/io/broker/BrokerOptions.d.ts +24 -0
- package/dist/io/broker/BrokerOptions.d.ts.map +1 -0
- package/dist/io/broker/BrokerOptions.js +29 -0
- package/dist/io/broker/BrokerOptions.js.map +1 -0
- package/dist/io/broker/BrokerSettings.d.ts +2 -2
- package/dist/io/broker/BrokerSettings.d.ts.map +1 -1
- package/dist/io/broker/BrokerSettings.js.map +1 -1
- package/dist/io/broker/GrpcClientActor.d.ts +6 -19
- package/dist/io/broker/GrpcClientActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcClientActor.js +1 -1
- package/dist/io/broker/GrpcClientActor.js.map +1 -1
- package/dist/io/broker/GrpcClientOptions.d.ts +48 -0
- package/dist/io/broker/GrpcClientOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcClientOptions.js +42 -0
- package/dist/io/broker/GrpcClientOptions.js.map +1 -0
- package/dist/io/broker/GrpcServerActor.d.ts +3 -24
- package/dist/io/broker/GrpcServerActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcServerActor.js +3 -3
- package/dist/io/broker/GrpcServerActor.js.map +1 -1
- package/dist/io/broker/GrpcServerOptions.d.ts +58 -0
- package/dist/io/broker/GrpcServerOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcServerOptions.js +44 -0
- package/dist/io/broker/GrpcServerOptions.js.map +1 -0
- package/dist/io/broker/JetStreamActor.d.ts +13 -35
- package/dist/io/broker/JetStreamActor.d.ts.map +1 -1
- package/dist/io/broker/JetStreamActor.js +2 -2
- package/dist/io/broker/JetStreamActor.js.map +1 -1
- package/dist/io/broker/JetStreamOptions.d.ts +64 -0
- package/dist/io/broker/JetStreamOptions.d.ts.map +1 -0
- package/dist/io/broker/JetStreamOptions.js +54 -0
- package/dist/io/broker/JetStreamOptions.js.map +1 -0
- package/dist/io/broker/KafkaActor.d.ts +13 -54
- package/dist/io/broker/KafkaActor.d.ts.map +1 -1
- package/dist/io/broker/KafkaActor.js +20 -8
- package/dist/io/broker/KafkaActor.js.map +1 -1
- package/dist/io/broker/KafkaOptions.d.ts +82 -0
- package/dist/io/broker/KafkaOptions.d.ts.map +1 -0
- package/dist/io/broker/KafkaOptions.js +50 -0
- package/dist/io/broker/KafkaOptions.js.map +1 -0
- package/dist/io/broker/MqttActor.d.ts +174 -114
- package/dist/io/broker/MqttActor.d.ts.map +1 -1
- package/dist/io/broker/MqttActor.js +328 -103
- package/dist/io/broker/MqttActor.js.map +1 -1
- package/dist/io/broker/MqttCodec.d.ts +70 -0
- package/dist/io/broker/MqttCodec.d.ts.map +1 -0
- package/dist/io/broker/MqttCodec.js +98 -0
- package/dist/io/broker/MqttCodec.js.map +1 -0
- package/dist/io/broker/MqttMessages.d.ts +145 -0
- package/dist/io/broker/MqttMessages.d.ts.map +1 -0
- package/dist/io/broker/MqttMessages.js +102 -0
- package/dist/io/broker/MqttMessages.js.map +1 -0
- package/dist/io/broker/MqttOptions.d.ts +100 -0
- package/dist/io/broker/MqttOptions.d.ts.map +1 -0
- package/dist/io/broker/MqttOptions.js +73 -0
- package/dist/io/broker/MqttOptions.js.map +1 -0
- package/dist/io/broker/NatsActor.d.ts +6 -21
- package/dist/io/broker/NatsActor.d.ts.map +1 -1
- package/dist/io/broker/NatsActor.js +1 -1
- package/dist/io/broker/NatsActor.js.map +1 -1
- package/dist/io/broker/NatsOptions.d.ts +51 -0
- package/dist/io/broker/NatsOptions.d.ts.map +1 -0
- package/dist/io/broker/NatsOptions.js +42 -0
- package/dist/io/broker/NatsOptions.js.map +1 -0
- package/dist/io/broker/RedisStreamsActor.d.ts +6 -24
- package/dist/io/broker/RedisStreamsActor.d.ts.map +1 -1
- package/dist/io/broker/RedisStreamsActor.js +1 -1
- package/dist/io/broker/RedisStreamsActor.js.map +1 -1
- package/dist/io/broker/RedisStreamsOptions.d.ts +51 -0
- package/dist/io/broker/RedisStreamsOptions.d.ts.map +1 -0
- package/dist/io/broker/RedisStreamsOptions.js +38 -0
- package/dist/io/broker/RedisStreamsOptions.js.map +1 -0
- package/dist/io/broker/SseActor.d.ts +6 -15
- package/dist/io/broker/SseActor.d.ts.map +1 -1
- package/dist/io/broker/SseActor.js +1 -1
- package/dist/io/broker/SseActor.js.map +1 -1
- package/dist/io/broker/SseOptions.d.ts +38 -0
- package/dist/io/broker/SseOptions.d.ts.map +1 -0
- package/dist/io/broker/SseOptions.js +30 -0
- package/dist/io/broker/SseOptions.js.map +1 -0
- package/dist/io/broker/TcpSocketActor.d.ts +6 -21
- package/dist/io/broker/TcpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/TcpSocketActor.js +1 -1
- package/dist/io/broker/TcpSocketActor.js.map +1 -1
- package/dist/io/broker/TcpSocketOptions.d.ts +46 -0
- package/dist/io/broker/TcpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/TcpSocketOptions.js +34 -0
- package/dist/io/broker/TcpSocketOptions.js.map +1 -0
- package/dist/io/broker/UdpSocketActor.d.ts +6 -17
- package/dist/io/broker/UdpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/UdpSocketActor.js +1 -1
- package/dist/io/broker/UdpSocketActor.js.map +1 -1
- package/dist/io/broker/UdpSocketOptions.d.ts +42 -0
- package/dist/io/broker/UdpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/UdpSocketOptions.js +34 -0
- package/dist/io/broker/UdpSocketOptions.js.map +1 -0
- package/dist/io/broker/index.d.ts +39 -19
- package/dist/io/broker/index.d.ts.map +1 -1
- package/dist/io/broker/index.js +21 -4
- package/dist/io/broker/index.js.map +1 -1
- package/dist/mailbox/BoundedMailbox.d.ts +12 -0
- package/dist/mailbox/BoundedMailbox.d.ts.map +1 -1
- package/dist/mailbox/BoundedMailbox.js +7 -1
- package/dist/mailbox/BoundedMailbox.js.map +1 -1
- package/dist/management/HttpManagement.d.ts +34 -1
- package/dist/management/HttpManagement.d.ts.map +1 -1
- package/dist/management/HttpManagement.js +30 -4
- package/dist/management/HttpManagement.js.map +1 -1
- package/dist/metrics/PromClientAdapter.d.ts +2 -12
- package/dist/metrics/PromClientAdapter.d.ts.map +1 -1
- package/dist/metrics/PromClientAdapter.js +2 -2
- package/dist/metrics/PromClientAdapter.js.map +1 -1
- package/dist/metrics/PromClientAdapterOptions.d.ts +46 -0
- package/dist/metrics/PromClientAdapterOptions.d.ts.map +1 -0
- package/dist/metrics/PromClientAdapterOptions.js +35 -0
- package/dist/metrics/PromClientAdapterOptions.js.map +1 -0
- package/dist/metrics/index.d.ts +3 -1
- package/dist/metrics/index.d.ts.map +1 -1
- package/dist/metrics/index.js +1 -0
- package/dist/metrics/index.js.map +1 -1
- package/dist/persistence/DurableStateActor.d.ts +4 -9
- package/dist/persistence/DurableStateActor.d.ts.map +1 -1
- package/dist/persistence/DurableStateActor.js +3 -3
- package/dist/persistence/DurableStateActor.js.map +1 -1
- package/dist/persistence/DurableStateOptions.d.ts +40 -0
- package/dist/persistence/DurableStateOptions.d.ts.map +1 -0
- package/dist/persistence/DurableStateOptions.js +36 -0
- package/dist/persistence/DurableStateOptions.js.map +1 -0
- package/dist/persistence/PersistenceOptions.d.ts +45 -0
- package/dist/persistence/PersistenceOptions.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.js +2 -2
- package/dist/persistence/ReplicatedEventSourcedActor.js.map +1 -1
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts +32 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js +120 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts +4 -9
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js +49 -7
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts +61 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js +42 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js +121 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/index.d.ts +59 -16
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +33 -2
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/journals/CassandraJournal.d.ts +1 -48
- package/dist/persistence/journals/CassandraJournal.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraJournal.js +2 -2
- package/dist/persistence/journals/CassandraJournal.js.map +1 -1
- package/dist/persistence/journals/CassandraJournalOptions.d.ts +107 -0
- package/dist/persistence/journals/CassandraJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraJournalOptions.js +90 -0
- package/dist/persistence/journals/CassandraJournalOptions.js.map +1 -0
- package/dist/persistence/journals/CassandraPlugin.d.ts +1 -16
- package/dist/persistence/journals/CassandraPlugin.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraPlugin.js +9 -4
- package/dist/persistence/journals/CassandraPlugin.js.map +1 -1
- package/dist/persistence/journals/CassandraPluginOptions.d.ts +51 -0
- package/dist/persistence/journals/CassandraPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraPluginOptions.js +37 -0
- package/dist/persistence/journals/CassandraPluginOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbClient.d.ts +54 -0
- package/dist/persistence/journals/MariaDbClient.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbClient.js +40 -0
- package/dist/persistence/journals/MariaDbClient.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts +29 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.js +161 -0
- package/dist/persistence/journals/MariaDbJournal.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts +27 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.js +30 -0
- package/dist/persistence/journals/MariaDbPlugin.js.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts +52 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js +38 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresClient.d.ts +56 -0
- package/dist/persistence/journals/PostgresClient.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresClient.js +35 -0
- package/dist/persistence/journals/PostgresClient.js.map +1 -0
- package/dist/persistence/journals/PostgresJournal.d.ts +41 -0
- package/dist/persistence/journals/PostgresJournal.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournal.js +176 -0
- package/dist/persistence/journals/PostgresJournal.js.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.js +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts +32 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.js +35 -0
- package/dist/persistence/journals/PostgresPlugin.js.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts +54 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.js +39 -0
- package/dist/persistence/journals/PostgresPluginOptions.js.map +1 -0
- package/dist/persistence/journals/SqliteJournal.d.ts +5 -19
- package/dist/persistence/journals/SqliteJournal.d.ts.map +1 -1
- package/dist/persistence/journals/SqliteJournal.js +10 -9
- package/dist/persistence/journals/SqliteJournal.js.map +1 -1
- package/dist/persistence/journals/SqliteJournalOptions.d.ts +41 -0
- package/dist/persistence/journals/SqliteJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/SqliteJournalOptions.js +31 -0
- package/dist/persistence/journals/SqliteJournalOptions.js.map +1 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts +43 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts.map +1 -1
- package/dist/persistence/object-storage/BodyCodec.js +78 -20
- package/dist/persistence/object-storage/BodyCodec.js.map +1 -1
- package/dist/persistence/object-storage/Compression.d.ts +21 -7
- package/dist/persistence/object-storage/Compression.d.ts.map +1 -1
- package/dist/persistence/object-storage/Compression.js +79 -29
- package/dist/persistence/object-storage/Compression.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts +2 -61
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js +56 -11
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts +45 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js +30 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/Integrity.d.ts +43 -0
- package/dist/persistence/object-storage/Integrity.d.ts.map +1 -0
- package/dist/persistence/object-storage/Integrity.js +66 -0
- package/dist/persistence/object-storage/Integrity.js.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts +6 -22
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePlugin.js +36 -28
- package/dist/persistence/object-storage/ObjectStoragePlugin.js.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts +60 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js +52 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js.map +1 -0
- package/dist/persistence/object-storage/PluginConfig.d.ts +5 -2
- package/dist/persistence/object-storage/PluginConfig.d.ts.map +1 -1
- package/dist/persistence/object-storage/PluginConfig.js +8 -0
- package/dist/persistence/object-storage/PluginConfig.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts +1 -30
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js +12 -7
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts +64 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js +42 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts +72 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts.map +1 -1
- package/dist/persistence/object-storage/reEncryptionSweep.js +82 -2
- package/dist/persistence/object-storage/reEncryptionSweep.js.map +1 -1
- package/dist/persistence/projection/ProjectionActor.d.ts +4 -24
- package/dist/persistence/projection/ProjectionActor.d.ts.map +1 -1
- package/dist/persistence/projection/ProjectionActor.js +36 -2
- package/dist/persistence/projection/ProjectionActor.js.map +1 -1
- package/dist/persistence/projection/ProjectionOptions.d.ts +109 -0
- package/dist/persistence/projection/ProjectionOptions.d.ts.map +1 -0
- package/dist/persistence/projection/ProjectionOptions.js +108 -0
- package/dist/persistence/projection/ProjectionOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts +2 -10
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js +12 -6
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts +37 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts +1 -11
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js +3 -3
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts +61 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js +73 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts +30 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js +102 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js +10 -6
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts +45 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js +38 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts +31 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js +101 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js +7 -6
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts +40 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js.map +1 -0
- package/dist/runtime/http/BunHonoRunner.d.ts +7 -1
- package/dist/runtime/http/BunHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/BunHonoRunner.js +22 -0
- package/dist/runtime/http/BunHonoRunner.js.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.d.ts +5 -2
- package/dist/runtime/http/DenoHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.js +19 -2
- package/dist/runtime/http/DenoHonoRunner.js.map +1 -1
- package/dist/runtime/http/HonoServerRunner.d.ts +39 -0
- package/dist/runtime/http/HonoServerRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts +3 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.js +22 -0
- package/dist/runtime/http/NodeHonoRunner.js.map +1 -1
- package/dist/runtime/http/index.d.ts +1 -1
- package/dist/runtime/http/index.d.ts.map +1 -1
- package/dist/runtime/http/index.js.map +1 -1
- package/dist/testkit/ManualScheduler.d.ts +2 -1
- package/dist/testkit/ManualScheduler.d.ts.map +1 -1
- package/dist/testkit/ManualScheduler.js +2 -1
- package/dist/testkit/ManualScheduler.js.map +1 -1
- package/dist/testkit/MockCluster.d.ts +74 -0
- package/dist/testkit/MockCluster.d.ts.map +1 -0
- package/dist/testkit/MockCluster.js +163 -0
- package/dist/testkit/MockCluster.js.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts +62 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.js +43 -0
- package/dist/testkit/MultiNodeClusterFixture.js.map +1 -0
- package/dist/testkit/MultiNodeSpec.d.ts +45 -3
- package/dist/testkit/MultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/MultiNodeSpec.js +108 -14
- package/dist/testkit/MultiNodeSpec.js.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.d.ts +12 -2
- package/dist/testkit/ParallelMultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.js +49 -4
- package/dist/testkit/ParallelMultiNodeSpec.js.map +1 -1
- package/dist/testkit/SnapshotMigrationTest.d.ts +86 -0
- package/dist/testkit/SnapshotMigrationTest.d.ts.map +1 -0
- package/dist/testkit/SnapshotMigrationTest.js +77 -0
- package/dist/testkit/SnapshotMigrationTest.js.map +1 -0
- package/dist/testkit/TestKit.d.ts +6 -8
- package/dist/testkit/TestKit.d.ts.map +1 -1
- package/dist/testkit/TestKit.js +10 -6
- package/dist/testkit/TestKit.js.map +1 -1
- package/dist/testkit/TestKitOptions.d.ts +26 -0
- package/dist/testkit/TestKitOptions.d.ts.map +1 -0
- package/dist/testkit/TestKitOptions.js +19 -0
- package/dist/testkit/TestKitOptions.js.map +1 -0
- package/dist/testkit/TestProbe.d.ts +2 -7
- package/dist/testkit/TestProbe.d.ts.map +1 -1
- package/dist/testkit/TestProbe.js +2 -1
- package/dist/testkit/TestProbe.js.map +1 -1
- package/dist/testkit/TestProbeOptions.d.ts +26 -0
- package/dist/testkit/TestProbeOptions.d.ts.map +1 -0
- package/dist/testkit/TestProbeOptions.js +19 -0
- package/dist/testkit/TestProbeOptions.js.map +1 -0
- package/dist/testkit/index.d.ts +10 -2
- package/dist/testkit/index.d.ts.map +1 -1
- package/dist/testkit/index.js +5 -0
- package/dist/testkit/index.js.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js +16 -12
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js.map +1 -1
- package/dist/tracing/OtelAdapter.d.ts +4 -12
- package/dist/tracing/OtelAdapter.d.ts.map +1 -1
- package/dist/tracing/OtelAdapter.js +4 -2
- package/dist/tracing/OtelAdapter.js.map +1 -1
- package/dist/tracing/OtelAdapterOptions.d.ts +42 -0
- package/dist/tracing/OtelAdapterOptions.d.ts.map +1 -0
- package/dist/tracing/OtelAdapterOptions.js +34 -0
- package/dist/tracing/OtelAdapterOptions.js.map +1 -0
- package/dist/tracing/OtelLogsAdapter.d.ts +100 -0
- package/dist/tracing/OtelLogsAdapter.d.ts.map +1 -0
- package/dist/tracing/OtelLogsAdapter.js +130 -0
- package/dist/tracing/OtelLogsAdapter.js.map +1 -0
- package/dist/tracing/index.d.ts +5 -1
- package/dist/tracing/index.d.ts.map +1 -1
- package/dist/tracing/index.js +2 -0
- package/dist/tracing/index.js.map +1 -1
- package/dist/util/Constants.d.ts +23 -0
- package/dist/util/Constants.d.ts.map +1 -1
- package/dist/util/Constants.js +23 -0
- package/dist/util/Constants.js.map +1 -1
- package/dist/util/Lazy.d.ts +31 -0
- package/dist/util/Lazy.d.ts.map +1 -1
- package/dist/util/Lazy.js +70 -0
- package/dist/util/Lazy.js.map +1 -1
- package/dist/util/OptionsBuilder.d.ts +48 -0
- package/dist/util/OptionsBuilder.d.ts.map +1 -0
- package/dist/util/OptionsBuilder.js +53 -0
- package/dist/util/OptionsBuilder.js.map +1 -0
- package/dist/worker/WorkerCluster.d.ts +2 -11
- package/dist/worker/WorkerCluster.d.ts.map +1 -1
- package/dist/worker/WorkerCluster.js +2 -1
- package/dist/worker/WorkerCluster.js.map +1 -1
- package/dist/worker/WorkerClusterOptions.d.ts +55 -0
- package/dist/worker/WorkerClusterOptions.d.ts.map +1 -0
- package/dist/worker/WorkerClusterOptions.js +55 -0
- package/dist/worker/WorkerClusterOptions.js.map +1 -0
- package/dist/worker/index.d.ts +3 -1
- package/dist/worker/index.d.ts.map +1 -1
- package/dist/worker/index.js +1 -0
- package/dist/worker/index.js.map +1 -1
- package/package.json +56 -13
- package/dist/io/broker/ServerWebSocketActor.d.ts +0 -109
- package/dist/io/broker/ServerWebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/ServerWebSocketActor.js +0 -128
- package/dist/io/broker/ServerWebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketActor.d.ts +0 -77
- package/dist/io/broker/WebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/WebSocketActor.js +0 -217
- package/dist/io/broker/WebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.d.ts +0 -140
- package/dist/io/broker/WebSocketServerAdapters.d.ts.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.js +0 -155
- package/dist/io/broker/WebSocketServerAdapters.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,388 @@ breaking. See `ROADMAP.md` for what's coming, and `README.md` →
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [0.10.0] — 2026-07-08
|
|
13
|
+
|
|
14
|
+
### Added — Typed WebSocket & MQTT
|
|
15
|
+
|
|
16
|
+
- **Typed WebSocket routing** (#1) — a `websocket(path, actorRef)` directive
|
|
17
|
+
in the HTTP routing DSL binds a `WebSocketServerActor<TOut, TIn>`. The
|
|
18
|
+
hub receives codec-decoded messages (JSON by default; `rawCodec()` for
|
|
19
|
+
binary), replies to the sending connection with `this.reply(...)` or
|
|
20
|
+
fans out with `this.broadcast(...)`, and gets `onClientConnected` /
|
|
21
|
+
`onClientDisconnected` / `onInvalidMessage` hooks. The framework spawns
|
|
22
|
+
an internal session actor per connection and solves the first-frame
|
|
23
|
+
race by construction (listeners attach synchronously at upgrade; the
|
|
24
|
+
mailbox is the buffer). Works on all three HTTP backends — Fastify
|
|
25
|
+
(`@fastify/websocket`), Express (`ws` upgrade handling), and Hono
|
|
26
|
+
(per-runtime: Bun/Node/Deno). `withMiddleware(...)` runs at upgrade
|
|
27
|
+
time, so `BearerTokenAuth` / `IpAllowlist` gate the handshake.
|
|
28
|
+
- **`WebSocketClientActor<TOut, TIn>`** (#1) — the typed client half, built
|
|
29
|
+
on `BrokerActor`: reconnect-with-backoff, outbound buffering across
|
|
30
|
+
reconnects, circuit breaker, and HOCON settings. Other actors push a
|
|
31
|
+
typed send with `ref.tell(wsSend(msg))`.
|
|
32
|
+
- **`actor-ts.http.websocket` HOCON block** — server-side WebSocket
|
|
33
|
+
defaults (`maxFrameBytes`, `onOversizeFrame`, `onInvalidMessage`,
|
|
34
|
+
`maxBufferedBytes`, `onBackpressure`); route options override HOCON,
|
|
35
|
+
which overrides built-in defaults.
|
|
36
|
+
- **Subclass-first, typed `MqttActor<T, TSelf>`** (#345) — the MQTT
|
|
37
|
+
counterpart to `WebSocketClientActor`. Extend it, declare
|
|
38
|
+
subscriptions in the constructor with `this.subscribe(topic, { qos })`,
|
|
39
|
+
handle inbound traffic in `onMessage(msg)`, and publish with
|
|
40
|
+
`this.publish(topic, payload)`. Lifecycle events (inbound / connected /
|
|
41
|
+
disconnected) run on the actor thread via the mailbox. Hooks:
|
|
42
|
+
`onMessage`, `onConnected`, `onDisconnected`, `onDecodeError`,
|
|
43
|
+
`onSelfMessage`. Still externally controllable via
|
|
44
|
+
`ref.tell({ kind: 'publish' | 'subscribe' | 'unsubscribe', … })`.
|
|
45
|
+
- **`MqttOptions` fluent builder** (#345) — `MqttOptions.create()
|
|
46
|
+
.withBrokerUrl(…).withClientId(…).withQos(…)…`; feeds the same
|
|
47
|
+
three-layer settings merge (constructor > HOCON
|
|
48
|
+
`actor-ts.io.broker.mqtt` > built-in defaults). (As of #346/#348 this is
|
|
49
|
+
the primary way to construct; a plain `MqttOptionsType` object works too —
|
|
50
|
+
see the options note under *Changed*.)
|
|
51
|
+
- **Typed MQTT payloads** (#345) — inbound `MqttMessage<T>` carries a
|
|
52
|
+
lazily-decoding `MqttPayload<T>` (`.bytes` / `.text()` / `.entity<U=T>()`,
|
|
53
|
+
successes cached). A pluggable `MqttCodec<T>` seam (default
|
|
54
|
+
`mqttJsonCodec()`) decodes `entity()` and encodes non-string publishes;
|
|
55
|
+
`publish(topic, { … })` encodes an entity, `publish(topic, string |
|
|
56
|
+
Uint8Array)` sends raw bytes. Decode failures surface via
|
|
57
|
+
`onDecodeError`. `MqttClientLike` / `MqttModuleLike` are exported as
|
|
58
|
+
test seams for the `mqttModule()` override.
|
|
59
|
+
|
|
60
|
+
### Changed — Options overhaul & MQTT
|
|
61
|
+
|
|
62
|
+
- **Fluent options, framework-wide** (#346, #348) — every configurable
|
|
63
|
+
constructor and factory takes a fluent options builder **or** a plain
|
|
64
|
+
settings object, interchangeably: `new MqttActor(MqttOptions.create()
|
|
65
|
+
.withClientId('x'))` behaves identically to `new MqttActor({ clientId:
|
|
66
|
+
'x' })`. A builder *is* its settings — `OptionsBuilder` stores each field
|
|
67
|
+
as an own property, so a builder instance reads and spreads exactly like a
|
|
68
|
+
plain settings object (no separate resolve step; consumers just read the
|
|
69
|
+
argument). Each configurable type exposes **three names from one
|
|
70
|
+
`XOptions.ts` file**: `XOptionsType` (the plain object), `XOptionsBuilder`
|
|
71
|
+
(the fluent builder, `XOptions.create().withField(…)`), and `XOptions` — the
|
|
72
|
+
**union** of the two that every consumer signature accepts (`options:
|
|
73
|
+
XOptions`), plus a value alias so `XOptions.create()` keeps working. There
|
|
74
|
+
is no separate "Settings" concept (the former `XSettings` interface is now
|
|
75
|
+
`XOptionsType`, co-located in `XOptions.ts`). HOCON resolution is
|
|
76
|
+
unchanged — the builder / plain object only supplies the
|
|
77
|
+
highest-precedence explicit layer, and unset fields still fall through
|
|
78
|
+
to config then defaults. Naming lockstep with no divergence: builder
|
|
79
|
+
method `withX` ⇔ settings field `x` ⇔ HOCON leaf `x`. Affected
|
|
80
|
+
(non-exhaustive): `ActorSystem.create(name, ActorSystemOptions
|
|
81
|
+
.create()…)`; `TestKit.create` / `new TestProbe` (`TestKitOptions` /
|
|
82
|
+
`TestProbeOptions`); every broker actor (`MqttOptions`, `KafkaOptions`,
|
|
83
|
+
`AmqpOptions`, `NatsOptions`, `JetStreamOptions`, `RedisStreamsOptions`,
|
|
84
|
+
`SseOptions`, `TcpSocketOptions`, `UdpSocketOptions`, `GrpcClientOptions`,
|
|
85
|
+
`GrpcServerOptions`); HTTP/WS (`WebSocketClientOptions`,
|
|
86
|
+
`WebSocketRouteOptions`, `ExpressBackendOptions`, `HonoBackendOptions`);
|
|
87
|
+
cache (`RedisCacheOptions`, `MemcachedCacheOptions`); persistence
|
|
88
|
+
journals / snapshot stores / durable-state stores / object-storage
|
|
89
|
+
backends / projections / plugin registrations; cluster / sharding /
|
|
90
|
+
singleton / client / pub-sub / router / downing / failure detectors;
|
|
91
|
+
leases, seed providers + discovery, observability adapters
|
|
92
|
+
(`OtelAdapterOptions`, `PromClientAdapterOptions`), `WorkerClusterOptions`,
|
|
93
|
+
`DistributedDataOptions`, and `ProducerControllerOptions`. Migration:
|
|
94
|
+
`new X({ a, b })` still works, or use `new X(XOptions.create()
|
|
95
|
+
.withA(a).withB(b))`; the positional "context" args that were never
|
|
96
|
+
settings (a system name, a `Cluster`, a sharding entity + type name)
|
|
97
|
+
stay positional. **BREAKING** (pre-1.0 hard cut): the builder class
|
|
98
|
+
`XOptions` is renamed `XOptionsBuilder` and the settings interface
|
|
99
|
+
`XSettings` is renamed `XOptionsType`; `XOptions` is now the accepted-input
|
|
100
|
+
union. Everyday call sites — `XOptions.create()…` and plain objects — are
|
|
101
|
+
unaffected; only code that referenced the old `XSettings` type name or the
|
|
102
|
+
builder *class* by name needs updating.
|
|
103
|
+
- **BREAKING: renamed settings fields + HOCON keys** (#348) — to keep the
|
|
104
|
+
builder-method ⇔ settings-field ⇔ HOCON-leaf names in lockstep, six
|
|
105
|
+
fields were renamed: MQTT `defaultQos` → `qos` (`withQos`) and
|
|
106
|
+
`keepAliveSec` → `keepAlive` (`withKeepAlive`); JetStream `ackTimeoutMs`
|
|
107
|
+
→ `ackTimeout`; ClusterClient `log` → `logger`; DistributedData
|
|
108
|
+
`gossipIntervalMs` → `gossipInterval`; ProducerController
|
|
109
|
+
`resendTimeoutMs` → `resendTimeout`. Update any plain settings objects
|
|
110
|
+
and HOCON keys using the old names.
|
|
111
|
+
- **BREAKING: `MqttActor` is now abstract** (#345) — you subclass it and
|
|
112
|
+
override `onMessage` instead of spawning it directly and driving it only
|
|
113
|
+
with `tell`. Migration: `class MyClient extends MqttActor<T> { … }` and
|
|
114
|
+
spawn the subclass. A pure external-router setup needs a trivial
|
|
115
|
+
subclass with an empty `onMessage`.
|
|
116
|
+
- **BREAKING: `MqttMessage.payload` is a `MqttPayload<T>` wrapper**, no
|
|
117
|
+
longer a raw `Uint8Array` (#345). Migration: `msg.payload` →
|
|
118
|
+
`msg.payload.bytes`; `new TextDecoder().decode(msg.payload)` →
|
|
119
|
+
`msg.payload.text()`; JSON reads → `msg.payload.entity()`.
|
|
120
|
+
- **BREAKING: `MqttOptionsType.subscriptions` and the `MqttSubscription`
|
|
121
|
+
type are removed** (#345) — they were never HOCON-expressible (targets
|
|
122
|
+
are actor refs). Migration: move `subscriptions: [{ topic, target }]`
|
|
123
|
+
into the subclass constructor as `this.subscribe(topic, { target })`, or
|
|
124
|
+
send `ref.tell({ kind: 'subscribe', topic, target })`.
|
|
125
|
+
- **BREAKING: `subscribe`/`unsubscribe` command `target` semantics**
|
|
126
|
+
(#345) — a `subscribe` command with no `target` now delivers to the
|
|
127
|
+
actor's own `onMessage` (previously `target` was required). An
|
|
128
|
+
`unsubscribe` command with no `target` now removes only the *foreign*
|
|
129
|
+
targets and leaves the actor's own subscription intact (previously it
|
|
130
|
+
dropped the whole topic).
|
|
131
|
+
|
|
132
|
+
### Fixed — MQTT
|
|
133
|
+
|
|
134
|
+
- **MQTT runtime subscriptions are re-applied after a reconnect** (#345) —
|
|
135
|
+
previously only the (now-removed) `settings.subscriptions` were
|
|
136
|
+
re-subscribed on reconnect, so subscriptions added at runtime silently
|
|
137
|
+
stopped receiving after a drop. The unified registry is now re-applied
|
|
138
|
+
on every (re)connect.
|
|
139
|
+
- **MQTT `subscribe` while disconnected reaches the broker on connect**
|
|
140
|
+
(#345) — previously it updated only the local routing map and never
|
|
141
|
+
issued the broker SUBSCRIBE.
|
|
142
|
+
- **MQTT terminated fan-out targets are cleaned up** (#345) — subscriber
|
|
143
|
+
refs are deathwatched; when one stops it is pruned from the registry and
|
|
144
|
+
a broker UNSUBSCRIBE fires once the pattern has no consumers left.
|
|
145
|
+
|
|
146
|
+
### Removed — legacy frame-level WebSocket API
|
|
147
|
+
|
|
148
|
+
- **BREAKING: the legacy frame-level WebSocket API** — `WebSocketActor`
|
|
149
|
+
(client), `ServerWebSocketActor` (server bridge), and the
|
|
150
|
+
`serverWebSocketActorOf` / `bunWebSocketHandlers` adapters are gone.
|
|
151
|
+
They worked at the raw text/binary frame level and needed ~150 lines of
|
|
152
|
+
backend-specific boilerplate to stand up a server. Replace a
|
|
153
|
+
`WebSocketActor` with `WebSocketClientActor`, and a hand-rolled server
|
|
154
|
+
plugin with a `websocket(path, ref)` route + `WebSocketServerActor`.
|
|
155
|
+
The client HOCON key `actor-ts.io.broker.websocket` is unchanged.
|
|
156
|
+
|
|
157
|
+
### Security
|
|
158
|
+
|
|
159
|
+
- **WebSocket DoS hardening carried into the new stack** (#1) — inbound
|
|
160
|
+
frames are size-capped (`maxFrameBytes`, default 1 MiB) *before* the
|
|
161
|
+
codec decodes them; oversize frames close 1009 (or drop) and
|
|
162
|
+
undecodable frames close 1003 (or drop / hook) per policy. Slow-consumer
|
|
163
|
+
backpressure closes/drops past `maxBufferedBytes`.
|
|
164
|
+
|
|
165
|
+
- **DurableState revision tampering** (#116) — `ObjectStorageDurableStateStore.load()`
|
|
166
|
+
previously trusted the `revision` value inside the body JSON, so an
|
|
167
|
+
attacker with write access to the underlying bucket could roll back
|
|
168
|
+
state past CAS checks. Two-track integrity fix: encrypted bodies use
|
|
169
|
+
AES-GCM with `revision` as AAD (already wired); unencrypted bodies
|
|
170
|
+
gain an opt-in HMAC-SHA256 over `{ revision, etag }` with per-pid
|
|
171
|
+
HKDF-derived subkeys. Set `integrity: { mode: 'hmac-sha256', integrityKey }`
|
|
172
|
+
on the store + `requireIntegrity: true` to refuse legacy un-tagged
|
|
173
|
+
bodies on the read path.
|
|
174
|
+
- **ClusterClient ask-ID predictability** (#120) — `nextAskId()` used
|
|
175
|
+
`Date.now() + counter`, predictable enough that a MitM on the
|
|
176
|
+
TCP socket could pre-compute likely IDs and inject forged
|
|
177
|
+
`cluster-client-reply` frames. Switched to `crypto.randomUUID()`
|
|
178
|
+
(122 bits of entropy per call).
|
|
179
|
+
- **Master-key rotation sweep race** (#109) — `reEncryptObjectStorage()`
|
|
180
|
+
had no durable progress token, so a crash forced the resumed run
|
|
181
|
+
to re-list and re-GET every object from scratch (a 24-hour sweep =
|
|
182
|
+
a 24-hour wasted re-walk). Worse: if the operator dropped a
|
|
183
|
+
retired key from the keyring too soon, the sweep would only
|
|
184
|
+
notice mid-corpus, leaving the bucket half-rewritten. Added two
|
|
185
|
+
opt-in options: `progress: ReEncryptProgressStore` for durable
|
|
186
|
+
resume tokens (file/Redis/object-storage-backed) and
|
|
187
|
+
`verifyKeyringCompleteness: boolean` (default `true`) for a
|
|
188
|
+
pre-sweep sample that refuses to start when a body's key version
|
|
189
|
+
is absent from `active`/`retired`.
|
|
190
|
+
- **LeaseMajority split-brain** (#142) — a slow `lease.acquire()`
|
|
191
|
+
that the local defence-in-depth timeout had given up on could
|
|
192
|
+
later resolve `true` and write `decision=surviveSet`, letting
|
|
193
|
+
both sides of an equal partition claim victory. Three layered
|
|
194
|
+
fixes: (1) monotonic `acquireEpoch` so a late result with a
|
|
195
|
+
stale epoch is dropped; (2) fire-and-forget `lease.release()`
|
|
196
|
+
on abandon to undo any wire-side success after the local
|
|
197
|
+
give-up, with fail-safe-on-rejection (refuse to claim majority
|
|
198
|
+
on the same view); (3) optional fencing tokens — `Lease.acquireWithToken?():
|
|
199
|
+
Promise<{ token: string } | null>` with `KubernetesLease`
|
|
200
|
+
returning `<resourceVersion>/<leaseTransitions>` and
|
|
201
|
+
`InMemoryLease` a monotonic per-name version stamp.
|
|
202
|
+
|
|
203
|
+
### Added — Persistence, HTTP & observability
|
|
204
|
+
|
|
205
|
+
- **PostgreSQL persistence backend** (#323) — `PostgresJournal`,
|
|
206
|
+
`PostgresSnapshotStore`, and `PostgresDurableStateStore` (the first
|
|
207
|
+
SQL-backed durable-state store) on top of the `pg` driver, registered
|
|
208
|
+
via `registerPostgresPlugins(ext, …)` which selects the journal +
|
|
209
|
+
snapshot store by config plugin ID and returns the durable-state-store
|
|
210
|
+
handle (the object-storage-plugin pattern — `PersistenceExtension` has
|
|
211
|
+
no durable-state registry). Optimistic concurrency (per-pid
|
|
212
|
+
`SELECT MAX(seq)` inside a transaction plus a primary-key
|
|
213
|
+
unique-violation `23505` backstop; revision CAS via
|
|
214
|
+
`ON CONFLICT`/`UPDATE … WHERE revision`), an indexed tags join table,
|
|
215
|
+
and auto-created schema (`autoCreateTables`, default on). `pg` is an
|
|
216
|
+
optional peer-dependency, lazy-imported; the backend defines its own
|
|
217
|
+
minimal client shapes so the framework stays dependency-free. Ships
|
|
218
|
+
with an in-process fake-pool unit suite and a live `postgres:latest`
|
|
219
|
+
Docker suite wired into the integration-brokers CI matrix.
|
|
220
|
+
- **MariaDB persistence backend** (#324) — sibling of #323 for
|
|
221
|
+
MariaDB / MySQL via the official `mariadb` connector: `MariaDbJournal`,
|
|
222
|
+
`MariaDbSnapshotStore`, `MariaDbDurableStateStore`, and
|
|
223
|
+
`registerMariaDbPlugins`. A separate implementation with the MariaDB
|
|
224
|
+
dialect (`?` placeholders, `INSERT IGNORE` for the tag dedup,
|
|
225
|
+
`ON DUPLICATE KEY UPDATE` snapshot upsert, a derived-table-wrapped
|
|
226
|
+
`keepN` prune, `ER_DUP_ENTRY`/1062 concurrency backstop, and
|
|
227
|
+
`LONGTEXT`/`VARCHAR(255)`/`BIGINT` columns). Optional `mariadb`
|
|
228
|
+
peer-dep; in-process fake-pool suite + live `mariadb:latest` Docker
|
|
229
|
+
suite in CI.
|
|
230
|
+
- **Configurable compression level** (#322) — `CompressionConfig` gains
|
|
231
|
+
an optional `level` (gzip 0–9, zstd 1–22) threaded through the codec to
|
|
232
|
+
the object-storage snapshot + durable-state stores. Out-of-range values
|
|
233
|
+
are clamped; the level is encoder-only and is NOT written to the wire
|
|
234
|
+
(the ATS1 manifest records only the algorithm), so changing it needs no
|
|
235
|
+
migration — old bodies keep decoding, new bodies use the new level, and
|
|
236
|
+
the two mix freely in one bucket.
|
|
237
|
+
- **Real-network multi-node integration tests** (#313) — new
|
|
238
|
+
`tests/integration/` subtree with a Docker-compose setup that
|
|
239
|
+
brings up 5 cluster-node containers + 1 controller container
|
|
240
|
+
on a shared bridge network and runs partition / heal /
|
|
241
|
+
membership-convergence scenarios over a real TCP stack. All
|
|
242
|
+
fault injection happens inside each container's network
|
|
243
|
+
namespace via `iptables` + `tc netem`, so no host privileged
|
|
244
|
+
mode is required — just `NET_ADMIN` on each cluster-node
|
|
245
|
+
container. Two npm scripts ship: `bun run test:integration`
|
|
246
|
+
(build + up + auto-exit on the controller's status) and
|
|
247
|
+
`bun run test:integration:teardown`. The same command works
|
|
248
|
+
locally on Docker Desktop and in
|
|
249
|
+
`.github/workflows/integration.yml`; the workflow is
|
|
250
|
+
triggered by pushes to `main`, manual dispatch, and a nightly
|
|
251
|
+
schedule. Fifteen scenarios covering the cluster's load-bearing
|
|
252
|
+
primitives:
|
|
253
|
+
- **01** — membership convergence (smoke test)
|
|
254
|
+
- **02** — 2:3 split-brain with partition + heal verification
|
|
255
|
+
- **03** — Receptionist gossip-convergence over a shared
|
|
256
|
+
`ServiceKey` across all 5 nodes, with partition + heal
|
|
257
|
+
- **04** — DistributedData `LWWRegister` quorum reads/writes
|
|
258
|
+
during a 50ms `tc-netem` egress latency storm — proves
|
|
259
|
+
`majority`-consistency operations survive a real network
|
|
260
|
+
slowdown
|
|
261
|
+
- **05** — Cluster Singleton failover after the host node
|
|
262
|
+
`cluster.leave()`s; new leader's manager spawns the
|
|
263
|
+
singleton, proxies from every remaining node converge
|
|
264
|
+
- **06** — Cluster Sharding rebalance: 30 entities warmed up,
|
|
265
|
+
victim node leaves, 8 ex-victim entities relocate to
|
|
266
|
+
surviving regions via the coordinator's HandOff path
|
|
267
|
+
- **07** — Concurrent `GCounter` increments from all 5 nodes
|
|
268
|
+
converge to the exact expected total (proves CRDT merge +
|
|
269
|
+
`ddata-gossip` wire path under write pressure)
|
|
270
|
+
- **08** — Receptionist `Subscribe` continuous-listing
|
|
271
|
+
notifications fire on register / deregister, observable
|
|
272
|
+
from every cluster node within gossip-propagation latency
|
|
273
|
+
- **09** — External `ClusterClient` (NOT a cluster member)
|
|
274
|
+
makes 100 sequential asks against `/user/echo`; exercises
|
|
275
|
+
the #120 `randomUUID` ask-id path end-to-end
|
|
276
|
+
- **10** — Management HTTP auth end-to-end: 401 without
|
|
277
|
+
token, 200 with valid token, 404 with valid token + fake
|
|
278
|
+
address, /health stays anonymous (probe contract)
|
|
279
|
+
- **11** — `PersistentActor` event-sourcing + snapshot +
|
|
280
|
+
replay: 5 increments → snapshot at seq=3 → kill → respawn
|
|
281
|
+
triggers `recover()` → snapshot-load + replay restores
|
|
282
|
+
state. Two-kill cycle verifies determinism.
|
|
283
|
+
- **12** — `DistributedPubSub` topic fan-out: 15 events
|
|
284
|
+
published from two different nodes, all 5 subscribers
|
|
285
|
+
receive both bursts in order
|
|
286
|
+
- **13** — `CoordinatedShutdown` pipeline progresses through
|
|
287
|
+
early (`BeforeServiceUnbind`) + late
|
|
288
|
+
(`BeforeActorSystemTerminate`) phases on a victim node;
|
|
289
|
+
markers POST'd to a peer observer verify both fired in
|
|
290
|
+
chronological order
|
|
291
|
+
- **14** — Bounded mailbox + `actor_mailbox_dropped_total`
|
|
292
|
+
metric: bombard a slow actor with 15 000 messages, verify
|
|
293
|
+
~5 000 drops are counted in the Prometheus output with
|
|
294
|
+
correct `{class, path, reason}` labels
|
|
295
|
+
- **15** — `DnsSeedProvider` against docker's embedded DNS:
|
|
296
|
+
resolves every peer hostname, validates IPv4 shape and
|
|
297
|
+
`<systemName>@<host>:<port>` stamping
|
|
298
|
+
- **Backend `remoteAddress` wiring** (#312 follow-up) — the
|
|
299
|
+
Fastify, Express, and Hono backends now populate
|
|
300
|
+
`HttpRequest.remoteAddress` from the socket peer
|
|
301
|
+
(`req.ip` / `req.socket.remoteAddress` on Fastify+Express;
|
|
302
|
+
best-effort across `c.req.raw` / `c.env.requestIP` on Hono).
|
|
303
|
+
`IpAllowlist` works end-to-end on real socket peers — the
|
|
304
|
+
pre-existing `getClientIp` override is no longer required for
|
|
305
|
+
default deployments behind direct connections.
|
|
306
|
+
- **HTTP route middleware framework** (#312) — new
|
|
307
|
+
`withMiddleware(mw, route)` builder + `Middleware` type
|
|
308
|
+
`(req, next) => Promise<HttpResponse> | HttpResponse`. Middlewares
|
|
309
|
+
compose outside-in; nested wraps run in declaration order. The
|
|
310
|
+
HTTP cache primitives (`rateLimit`, `idempotent`, `cached`) are
|
|
311
|
+
unchanged, but new orthogonal concerns (auth, allowlists, custom
|
|
312
|
+
logging, request tracing) can hang off the same hook.
|
|
313
|
+
- **`BearerTokenAuth({ tokens })`** (#312) — built-in middleware
|
|
314
|
+
that 401s every request lacking a `Authorization: Bearer <token>`
|
|
315
|
+
header from the configured (rotatable) shared-secret list.
|
|
316
|
+
Constant-time comparison so an attacker probing tokens can't
|
|
317
|
+
distinguish "first character wrong" from "last character wrong"
|
|
318
|
+
by timing. Rejection includes `WWW-Authenticate: Bearer realm=...`.
|
|
319
|
+
- **`IpAllowlist({ allow })`** (#312) — built-in middleware for
|
|
320
|
+
CIDR-based network-level isolation. Parses IPv4 + IPv6 CIDRs
|
|
321
|
+
(including IPv4-mapped IPv6 like `::ffff:10.0.0.1` so a dual-
|
|
322
|
+
stack socket peer matches an IPv4 CIDR). Fail-secure: no
|
|
323
|
+
resolvable client IP means 403. Trust-source is explicit:
|
|
324
|
+
default reads `req.remoteAddress` (the socket peer); operators
|
|
325
|
+
behind a trusted proxy must opt-in to header trust via the
|
|
326
|
+
`getClientIp` extractor.
|
|
327
|
+
- **`HttpRequest.remoteAddress?: string`** (#312) — optional new
|
|
328
|
+
field on the request shape. Backends should populate from the
|
|
329
|
+
underlying socket where available. Consumers that need to
|
|
330
|
+
trust `x-forwarded-for` must do so explicitly (see
|
|
331
|
+
`IpAllowlist`'s `getClientIp`).
|
|
332
|
+
- **`managementRoutes`** gains `auth`, `ipAllowlist`, and
|
|
333
|
+
`authProtectHealth` settings (#312). By default the auth
|
|
334
|
+
middleware wraps the privileged subtree (`/cluster/*`,
|
|
335
|
+
`/metrics`) but leaves `/health` and `/ready` anonymous —
|
|
336
|
+
standard Kubernetes liveness/readiness probes can't easily
|
|
337
|
+
attach an Authorization header. Set `authProtectHealth: true`
|
|
338
|
+
when the deployment can present credentials on probes. The
|
|
339
|
+
IP-allowlist wraps EVERYTHING (network-level isolation
|
|
340
|
+
precedes any application policy).
|
|
341
|
+
- **`JsonLogger`** (#311) — structured-logging logger that emits one
|
|
342
|
+
`\n`-delimited JSON object per record to `process.stdout` (or an
|
|
343
|
+
injected `JsonLogSink`). Every record carries `ts` (ISO-8601),
|
|
344
|
+
`level`, optional `source`, `msg`, the merged static + dynamic
|
|
345
|
+
MDC, and positional `...args` under an `args` array. Errors
|
|
346
|
+
serialise as `{ name, message, stack }`; circular refs,
|
|
347
|
+
`BigInt`, and functions are sanitised so a log call never throws.
|
|
348
|
+
Drop-in for log-aggregation pipelines (Loki, ELK, Datadog,
|
|
349
|
+
CloudWatch, etc.) via the standard stdout-pipe path.
|
|
350
|
+
- **`otelLogger({ api })`** (#311) — bridge to
|
|
351
|
+
`@opentelemetry/api-logs` for OTLP-Logs pipelines. Optional peer
|
|
352
|
+
dep (structural-typed on the OTel surface, like `otelTracer`).
|
|
353
|
+
Maps severity to OTel's standard severity-number range, attaches
|
|
354
|
+
the actor's path on `source`, merges static + dynamic MDC into
|
|
355
|
+
`attributes`, and the SDK auto-links the active span's
|
|
356
|
+
`traceId`/`spanId` when tracing is enabled in the same process.
|
|
357
|
+
|
|
358
|
+
### Changed — Bounded mailbox default
|
|
359
|
+
|
|
360
|
+
- **Bounded mailbox is now the default** (#310) — every actor spawned
|
|
361
|
+
without an explicit `Props.withMailbox(...)` gets a
|
|
362
|
+
`BoundedMailbox` with `capacity = 10_000` and `overflow = 'drop-head'`.
|
|
363
|
+
The pre-#310 unbounded shape was a classic Akka-anti-pattern in
|
|
364
|
+
disguise: a runaway producer could absorb the JVM, ahem, the V8
|
|
365
|
+
heap, until OOM. 10 000 is high enough that a well-tuned actor
|
|
366
|
+
never hits it on a normal traffic spike; if it does, the actor's
|
|
367
|
+
throughput is mismatched and the bound makes that operationally
|
|
368
|
+
visible. Drops are emitted as the `actor_mailbox_dropped_total`
|
|
369
|
+
Counter (labels `class`, `path`, `reason`). Opt back into unbounded
|
|
370
|
+
per-actor via `Props.withMailbox(() => new Mailbox())`; keep the
|
|
371
|
+
bounded shape but change the capacity via `Props.withMailboxCapacity(n)`.
|
|
372
|
+
|
|
373
|
+
### Fixed — Compression
|
|
374
|
+
|
|
375
|
+
- **zstd compression on runtimes without native zstd** (#321) — the
|
|
376
|
+
compression codec wired the `fzstd` peer-dependency as a compressor, but
|
|
377
|
+
`fzstd` is decompression-only (it has no `compress`), so
|
|
378
|
+
`compression: { algorithm: 'zstd' }` threw `fzstd.compress is not a
|
|
379
|
+
function` on any runtime without native zstd (i.e. not Bun and not
|
|
380
|
+
Node ≥22.15) — and the eager peer-dep probe passed anyway. zstd
|
|
381
|
+
resolution is now split by direction: compress is native-only with a
|
|
382
|
+
clear "needs Bun / Node ≥22.15" error, decompress keeps the `fzstd`
|
|
383
|
+
fallback so a non-native runtime can still READ zstd bodies written
|
|
384
|
+
elsewhere, and `probeCompressionAvailability('zstd')` now checks the
|
|
385
|
+
compress path so the misconfig surfaces at plugin-init, not on first
|
|
386
|
+
persist.
|
|
387
|
+
- **Object-storage compression docs were inaccurate** — the docs
|
|
388
|
+
described `gzip` / `brotli` / `deflate` with a `level` field and
|
|
389
|
+
`Content-Encoding`-header-driven decode, none of which matched the
|
|
390
|
+
implementation. Corrected across EN + DE to the real `none` / `gzip` /
|
|
391
|
+
`zstd` set, the ATS1-manifest-driven decode, the now-real `level`
|
|
392
|
+
option, and the per-direction zstd runtime support.
|
|
393
|
+
|
|
12
394
|
## [0.9.1] — 2026-05-15
|
|
13
395
|
|
|
14
396
|
Docs-only patch release covering the first round of post-v0.9.0
|