Release Notes
0.10.0 (16-02-2024)
Upgrade instructions
Upgrade your Synapse installation to 0.10 by performing the following steps:
-
Stop your Synapse instance.
-
Replace your previous
axonsynapse-*.jar
file with the new one from the distribution package. -
Start your Synapse instance.
New features, improvements, and bug fixes
-
Event handler batching no longer sends one-sized batches, except for the first batch.
-
Message identifier, payload revision and metadata are correctly propagated for queries and query responses.
-
A query message handler isn’t required to return a body anymore.
-
Axon Server connections are closed only after an inactivity timeout. This fixes an observable race condition.
0.9.0 (19-01-2024)
Upgrade instructions
Upgrade your Synapse installation to 0.9 by performing the following steps:
-
Stop your Synapse instance.
-
Replace your previous
axonsynapse-*.jar
file with the new one from the distribution package. -
Start your Synapse instance.
New features, improvements, and bug fixes
-
A command handler follows the concurrent execution restriction from the
maxConcurrency
attribute. Theconcurrency
attribute is deprecated in favor of themaxConcurrency
. -
The
event.handler.threads
property is deprecated and has no effect anymore. -
An Axon Server authorization token passed in the
X-API-KEY
header is uniformly propagated to Axon Server for all message types (event, command, and query) and message representations (payload as body and message as body). -
The
synapse.auth.enabled
property is no longer required to send a message with an authorization token in theX-API-KEY
header. -
A potential
StackOverflowError
, which could occur during a reconnection to Axon Server, is fixed.
0.8.0 (15-09-2023)
Upgrade instructions
Upgrade your Synapse installation to 0.8 by performing the following steps:
-
Stop your Synapse instance.
-
Replace your previous
axonsynapse-*.jar
file with the new one from the distribution package. -
Start your Synapse instance.
New features, improvements, and bug fixes
-
Query defaults to
java.lang.Object
for theresponseType
. -
Synapse doesn’t require the Axon Server to run during the startup.
-
Synapse doesn’t initiate multiple
synapse-storage
connections to Axon Server when the original connection breaks. -
Fixed the issue of an event handler not always publishing processor information.
-
Deleting a non-existing handler returns 204 No Content.
-
Referencing a non-existent
clientAuthenticationId
orserverAuthenticationId
returns 400 Bad Request. -
Exposing he first and last token of a context at the
/v1/contexts/{context}/events
endpoint. -
The
dateTime
of a message sent to a message handler follows the format of ISO 8601. -
A command message handler isn’t required to return a body anymore.
-
Configure the
Content-Type
header for an event list handler toapplication/json
through the propertysynapse.http.handlers.event.list.content-type=application-json
. -
Payload revision is correctly propagated from a command response to the sender.
-
Synapse supports the optional header
AxonIQ-MessageId
for specifying a message identifier for raw messages. -
Routing key is correctly propagated to command handlers.
-
Context endpoint doesn’t return Axon Server internal contexts starting with the
_
anymore. -
The endpoint
/actuator/info
provides the Synapse version. -
Resume event streaming to event handlers after Axon Server reconnection.
-
Synapse is available as a docker image at
axoniq/synapse
.
0.7.0 (08-08-2023)
Upgrade instructions
Upgrade your Synapse installation to 0.7 by performing the following steps:
-
Stop your Synapse instance.
-
Replace your previous
axonsynapse-*.jar
file with the new one from the distribution package. -
Start your Synapse instance.
New features, improvements, and bug fixes
-
Share Axon Server-based configuration storage among all Synapse instances.
-
Event handler balancing across many Synapse instances.
-
Date and time parsing improvement.
-
The HTTP PUT method for creating or replacing a message handler doesn’t require the handler to exist.
-
Sending a command or issuing a query that causes an error in a handler results in the 502 Bad Gateway response.
-
Publishing a domain event with invalid
sequenceNumber
results in the 409 Conflict response. -
Property
synapse.is-use-tls
deprecated in favor ofsynapse.axon-server.tls-enabled
. -
Property
synapse.certificate-chain
deprecated in favor ofsynapse.axon-server.trust-manager-file
. -
Property
synapse.server-list
deprecated in favor ofsynapse.axon-server.server-list
.
Known issues
-
Issuing a query to an Axon Framework-based query handler requires specifying
responseType
. -
Synapse won’t boot up when it can’t establish an initial connection to Axon Server.
-
Synapse may initiate multiple
synapse-storage
connections to Axon Server when the original connection breaks. -
Returned error body doesn’t follow its OpenApi specification.