* Remove @switch when it doesn't take effect
* Use ActorRef.noSender
* Minor tweaks to SchedulerSpec
* Disambiguate TypedActor for Scala 3
* Bump ScalaTest to a version compatible with Scala 3
* Bump ScalaCheck
* Disambiguate Event in SupervisorHierarchySpec
* Scala 3 compatible EventBusSpec
* Prevent private unused variables to be erased by Scala 3
* Bump mockito
* Explicit actorRef2Scala import
* restore original .scalafix.conf
* Scala 3 compatible tailrec
* Reminder to re add switch annotation in case
* Move to nowarn instead of silencer
* Bump to Scala 2.12.13
* Cross compatible annotations
* fix docs generation
* adapt the build for Scala 3
* fix errors but bus
* remove more SerialVersion from trait
* scalacheck only from scalatest
* cross-compile akka-actor-tests
* restore cross-compilation
* early initializers workaround
* scalacheck switch
* cross compatible FSM.State class
* cross compatible LARS spec
* Change results to pass LineNumberSpec
* fix stackoverflow in AsyncDnsResolverIntegrationSpec
* FSM.State unapply
* fix Scala 2.13 mima
* SerialVersionRemover compiler plugin
* removed unused nowarns
* Step 1: general event-publishing-to-topic feature
* Step 2: an actor subscribes to the topic and forwards events to the sharded replicas
* Another half piece of the puzzle, receive the PublishedEvent in the ESB internals
* Stash published events while replaying rather than drop
* Publish on the event stream instead of a topic
* Active active actor receiving a published event
* Some smaller changes
* Public API for published event
* Better name for the sharding component
* Naive test for the Active Active Sharding Replication
* Java API for ActiveActiveShardingReplication
* Spelling
* Use ShardingEnvelope for publishing the event across sharding
* Fast forwarding filter stage
* Move test to testkit, enable the see-event-twice test (fails)
* Use persistence testkit journal
* Various smaller review feedback things
* Trying to figure out why duplicate event write test fails
* Missing unstash after processing published event
Co-authored-by: Christopher Batey <christopher.batey@gmail.com>
* register ActorSystem reference under ActorFactoryRef interface name
* reformat code
* add OSGi headers for akka-protobuf-v3
* change private package to only include proto files
* change package name to akka.cluster.sbr
* reference.conf has same config paths
* akka.cluster.sbr.SplitBrainResolverProvider instead of com.lightbend.akka.sbr.SplitBrainResolverProvider
* dependency from akka-cluster to akka-coordination, for lease strategy
* move TestLease to akka-coordination and use that in SBR tests
* remove keep-referee strategy
* use keep-majority by default
* review and adjust reference documentation
Co-authored-by: Johan Andrén <johan@markatta.com>
Co-authored-by: Johannes Rudolph <johannes.rudolph@gmail.com>
Co-authored-by: Christopher Batey <christopher.batey@gmail.com>
Co-authored-by: Arnout Engelen <github@bzzt.net>
* using real EventSourcedBehaviorImpl
* using new inmem journal (PersistenceTestKit)
* advantages compared to a "fake" driver
* no difference in implementation details from real thing
* no limitations
* less maintance
* added internal messsages to EventSourcedBehaviorImpl to be able to grab state
and persistenceId
* GetState as InternalProtocol instead of Signal so that it is stashed
* serialization checks, using SerializationTestKit
* better testKitGuardian naming to allow multiple PersistenceTestKit
* support testing of restart
* support failure testing by using PersistenceTestKit
* update doc sample
* apidoc, reference docs, and javadsl
* Add scalafix plugin for jdk 9.
* Add command alias sortImports.
* Excludes some sources from SortImports.
* Update SortImports to 0.4.0
* Sort imports with `sortImports` command.
Different approach than in classic AtLeastOnceDelivery because I would like:
* support flow control, with a work pulling approach
* be possible to use with or without persistence (without it may loose
messages if producer node crashes)
* detect lost messages on the consumer side and let that drive resends,
instead of aggressively resending from producer side
* deliver messages in order and deduplicate resent messages
* have an efficient protocol for acknowledgments over the network (not ack each message),
but still have a simple one-by-one protocol for the end user
* support 3 use cases (building blocks)
* point-to-point
* work pulling
* sharding
* optional durable queue, with one event sourced implementation
* protobuf serialization
* ApiMayChange
* reference docs and examples
* api docs
* doc example code missing so far
* First stab at distributed pubsub for typed
* Also allow sending to a single subscriber across the topic
* Revert "Also allow sending to a single subscriber across the topic"
This reverts commit 4fd4f0b75c0dda01706dcde70645dcfa09da889b.
* Serializer and basic multi-jvm test
* docs
* Review feedback
* This reads better
* One brace too many
* sample formatting/headers/yadi
* Hide actual messages to ease bincomp evolution
* More tesssssts
* And even moar tessssssssts
* Review feedback addressed
* Same serialization as typed sharding
Mention turnaround in docs
* Unfortunately it seems the jdk9-only tests could not actually be compiled.
With these changes those can actually be compiled and ran again.
* Always link to jdk11 for java.* javadocs
* Update sbt-paradox-akka to fix linking to inner classes for javadoc
* it was intended to automatically use Slf4jLogger in akka-slf4j
when akka-actor-typed is used
* otherwise it would be confusing to have some Akka logging directly
to slf4j and some to Akka stdout logging, if akka-slf4j is not
added