Posted on August 05, 2019
Spine 1.0.0
Base
This is the first public release of base
modules.
Notable API changes:
- SLF4J logging is replaced by Flogger (#451).
- Protobuf messages generated with Spine plugins may now be built with validation by
calling
.vBuild()
(#409). The generation of separate...VBuilder
classes was removed. - External libraries may now register custom validation options (#408).
Core Java
This is the first public release of Spine core modules.
Most notable changes:
ServerEnvironment
is now responsible for the configuration of the server-wide routines, such asStorageFactory
,TransportFactory
andDelivery
.- System Bounded Context is now configurable — #1115. It was simplified and made less intrusive — #1084.
- Entities now receive messages via
Inbox
, which supports message sharding and de-duplication in a multi-node environment — #1096. - Trace API was introduced — #1090.
- Errors during the message dispatching no longer throw exceptions. A series of system events was introduced instead — #1104.
ConstraintViolated
system event was introduced — #1081.BoundedContext
configuration was simplified. Also,BoundedContextBuilder
is now the only API to set up the context; all the duplicating API calls were removed from theBoundedContext
itself — #1108.- It is now possible to
@Command
upon external events — #1116. @Command
methods which accept events, may now ignore them — #1114.BlackBoxBoundedContext
API was extended with an ability to assertQuery
andSubscription
behavior by using the corresponding test subjects — #1124, #1126.BlackBoxBoundedContext
API is now the only way to test the applications built with Spine. The previous unit-testing framework was removed — #1110.- Entity
@Column
API marked as@Experimental
, as we can still see a room for API improvement and further changes — #1134. IntegrationBus
behavior on handling newBoundedContext
s was fixed — #1120.- Previously deprecated API was removed — #1122.
Also, we created a chat on Discussions for answering the questions on the framework use. Please feel free to join and say hi!
JDBC Storage
This is the first public release of Spine library supporting the JDBC-compliant storage engines.
Google Cloud Java
This is the first public release of Spine libraries supporting the Google Cloud.