* overloaded methods added for binary compatibility
* Doc improve: remove unnecessary example, reword eagerClose description
* Test eagerClose = true when other stream closed
* rename PersistentEffect to Effect
* change order of parameters, ctx first
* rename onEvent to applyEvent
* persistenceIdFromActorName for Cluster Sharding
* PersistenActor.immutable
Cleans up the API in a couple of places, but still needs type parameters
in spots where I wouldn't want to need them...
Allow multiple side effects in one 'andThen'
Making type inference actually work
Allow applying multiple side effects
In a way that allows 'inspecting' the effects if you want to, but
doesn't require you to repeat generic parameters when you don't.
* Expand example with a timer
* Move 'onRecoveryComplete' to 'builder' style
* rather than using a default parameter which is hard to
evolve with binary compatibility
* Explicit snapshots
* Example spawning a child actor
* Taking a snapshot needs access to the state
* Added signal handler
* I like how simple the types of `commandHandler` and
`signalHandler` are now, but it'd be nice if they were closer together and could perhaps even share the `state` switch. I'll give that a try.
* Attempt to get signal handling closer to command handling
* Always use the full state for snapshots
* If you want to add a mapping layer use event adapters or a custom
serializer.
* Example of an actor that separates 'persistent' and transient state
* Use ordering 'command, event, state, context' consistently
* Allow multiple `andThen`
* Replace ask with spawned adapters
* Allow 'andThen' on each PersistentEffect
* Make 'onSignal' a partial function
* Remove unnecessary parens
* Simplify 'andThen', make sure it receives the State
* a Receptionists extension
It's basically an improved copy of the former receptionist pattern which is
removed here as well.
* Cluster implementation using Distributed Data
* =typ make ActorRef.apply work for adapted actor systems
* Cluster management (join, leave, etc)
* Cluster membership subscriptions (MemberUp, MemberRemoved, etc)
* New SelfUp and SelfRemoved events
* change signature of awaitAssert to return the value (not binary compatible)
* Cluster singleton api
* =jdk9,str JDK9 ready classes, in special directories
* =str,jdk9 prepare for releasing using JDK9 (needs sbt 1.0+ though)
* =str,jdk9 passing TCK spec touching some JDK9 types internally
* make sure to include linting options