* TestAppender interaction with LoggingEventFilter
* TestAppender plays the same role as classic TestEventList
* replace Sl4jLoggingEvent.java
* include MDC in testkit.LoggingEvent to allow for custom filter
testing MDC
* fix tests
* fix log events in BehaviorSetKit, using SubstituteLogger
* MDC in EventSourcedBehavior
* using raw MDC to set the persistenceId and persistencePhase fields
* avoid access to MDC ThreadLocal if log isn't used
* Automatically enable eventStream Slf4jLogger for Typed (PR #27583)
* amend the ActorSystem config on startup when config akka.use-slf4j=on
and akka-slf4j in classpath
* akka.use-slf4j is defined in akka-actor-typed reference.conf
* also enable the Slf4jLoggingFilter automatically
* remove config in tests
* Include actor path as akkaSource in MDC (PR #27587)
* move logger init to ActorContextImpl since not specific to untyped (ActorContextAdapter)
* careful to not access MDC ThreadLocal if logging isn't used (per message)
* MDC is cleared (if used) from aroundReceive in ActorAdapter after processing each message
* also changed MDC for EventSourcedBehavior to rely on context.log and the outer MDC.clear()
* just removing the MDC values is not enough because the empty Map remains in the ThreadLocal
* Optimization of MDC interceptor (PR #27610)
* Extension methods to Logger as workaround for overload and varargs problem (PR #27605)
* "ambiguous reference to overloaded definition" for 2 arg method
* varargs not supported for primitive types
* providing extension methods info2 and infoN (and friends) via implicit class LoggerOps
as more convenient workaround for these problems
* New API for Typed LoggingEventFilter (PR #27611)
* builder style
* will make it easier to add more conditions
* all conditions are AND:ed together which makes it easier to define custom filters
* simplifies the implementation as a bonus
* javadsl
* use new api in all tests
* leeway setting
* verify that occurrences = 0 works
* use javadsl in two tests
* change interceptLogger, and some other feedback
* Testing utility to silence logging until failure (PR #27588)
* Logback appender that captures all log events and can flush them
later to other appenders
* LogCapturing mixin for ScalaTest that flush the captured logging events
when a test fails. Also clears the captured events after all tests.
* Configuration in logback-test.xml
* log capturing for JUnit tests too, using TestRule
* Silence initial setup logging from Logback
* make LogCapturing public
* use LogCapturing in all tests
* aside from multi-jvm, and a few extending AkkaSpec, so far
* a few doc tests needed debug level
* mention in migration guide
* rename setLoggerClass to setLoggerName
* check for logback dependency to give nicer error message
* fix filterKeys, deprecated in 2.13
* Add CopyrightHeader support for sbt-boilerplate plugin.
* Add CopyrightHeader support for `*.proto` files.
* Add regex match for both `–` and `-` for CopyrightHeader.
* Add CopyrightHeader support for sbt build files.
* Update copyright from 2018 to 2019.
* Sharding only within own team (coordinator is singleton)
* the ddata Replicator used by Sharding must also be only within own team
* added support for Set of roles in ddata Replicator so that can be used
by sharding to specify role + team
* Sharding proxy can route to sharding in another team
Previously know as [patriknw/akka-data-replication](https://github.com/patriknw/akka-data-replication),
which was originally inspired by [jboner/akka-crdt](https://github.com/jboner/akka-crdt).
The functionality is very similar to akka-data-replication 0.11.
Here is a list of the most important changes:
* The package name changed to `akka.cluster.ddata`
* The extension was renamed to `DistributedData`
* The keys changed from strings to classes with unique identifiers and type information of the data values,
e.g. `ORSetKey[Int]("set2")`
* The optional read consistency parameter was removed from the `Update` message. If you need to read from
other replicas before performing the update you have to first send a `Get` message and then continue with
the ``Update`` when the ``GetSuccess`` is received.
* `BigInt` is used in `GCounter` and `PNCounter` instead of `Long`
* Improvements of java api
* Better documentation