Axoniq Framework Major Releases

All the enhancements and features which have been introduced to our major releases of the Axoniq Framework are noted here.

Release 5.2

Features

  • Migrate core persistent streams API from AF4 #135

  • Enhancement/137/spec message transformator #138

  • [#137] Message Transformation / Upcasting - Specification #143

  • [#137] Message Transformation / Upcasting - Module setup (phase 1) #151

  • [#137] Message Transformation / Upcasting - SPI foundation (phase 2) #152

  • [#137] Message Transformation - Transform Chain and Event Store Decoration (phase 3) #153

  • [#137] Message Transformation - Sourcing Criteria widening for sourcing #160

  • Implement SnapshotStore for PostgresqlEventStorageEngine #163

  • [#137] Message Transformation - Rename support (phase 4) #164

  • [#137] Message Transformation - Drop / Filter support (phase 5) #167

  • [#137] Merge Message Transformation support #193

  • [#123] Persistent Streams Autoconfiguration #196

Enhancements

  • Include the data protection module in the Axoniq Framework BOM for convenience #130

  • fix the slack-release-notification.yml #141

  • build: unified apidocs profile and publish workflow #156

  • Remove _archive folder #166

  • [#137] Message Transformation - Semantic matching: exact precedence + from(List) (phase 6) #178

  • Disable sonar for builds #187

  • Improve flaky integration tests #189

  • cleanup remainders of the _archive folder #202

  • [#4633] AF4 MultiSourceLegacyToken classname compatibility fix #228

Bug fixes

  • Port axon 5.1.x to main #114

  • Align listing approach with Event Storage Engine parent page #115

  • Adjust import for TerminalEventMessage #132

  • Fix failing tests #136

  • Port (5.1.x): [#108] docs(dead-letter-queue): document DLQ transactional behavior #150

  • [#4625 | Port] Use EventTypeResolver in Axon Server EventStorageEngines to default null revision to default version #188

  • Support source with snapshot in single server call #220

  • [AxonFramework#4698] Ensure message type version for Commands/Queries sent from AF4 to AF5 applications #225

  • [AxonFramework#4625] Allow to gracefully handle events without revision for persistent streams #227

Documentation

  • Include Axoniq Data Protection release notes and module description in the framework reference #97

  • Include Axoniq Workflow Engine release notes and module description in the framework reference #99

  • Move workflow module table listing to workflow-repo for easier maintenance #101

  • [#77] Add migration guide for 5.0 → 5.1 #106

  • Include Axoniq feature indicator in navigation #107

  • [#77] Clarify migration of the AxonServerContainer from 5.0 → 5.1 #112

  • Add anchors for the event storage engines to allow referencing #117

  • Fix the maven coordinates for Axoniq PostgreSQL in the reference #119

  • Fix Modules Documentation (remove opentracing) #128

  • Introduce Framework Comparison page #134

  • [#137] add Event Transformation reference docs (moved from Axon Framework) #179

  • [#137] adapt moved Event Transformation docs + address review nits #180

  • Add 5.1.1 and 5.1.2 Release Notes #191

  • docs: use DeadLetterQueueConfiguration extension API in DLQ reference #197

  • Fix configuration example for EventProcessorDefinition based persistent streams configuration #224

Dependency upgrades

  • Bump io.opentelemetry:opentelemetry-api from 1.60.1 to 1.62.0 in /_archive/extensions/tracing/tracing-opentelemetry #121

  • Bump Antora site-generator from 3.2.0-alpha.11 to 3.2.0-alpha.12 in /docs/_playbook #125

  • Bump Antora cli from 3.2.0-alpha.11 to 3.2.0-alpha.12 in /docs/_playbook #126

  • Bump the maven-dependencies group with 4 updates #127

  • Bump qs from 6.14.2 to 6.15.2 in /docs/_playbook #145

  • Bump the maven-dependencies group with 3 updates #146

  • Bump the maven-dependencies group with 6 updates #154

  • Bump the maven-dependencies group with 5 updates #161

  • Bump the maven-dependencies group with 7 updates #170

  • Bump the GitHub dependencies group with 4 updates #182

  • Bump Antora site-generator from 3.2.0-alpha.12 to 3.2.0-rc.2 in /docs/_playbook #183

  • Bump the maven-dependencies group with 4 updates #184

  • Bump js YAML and Antora cli in /docs/_playbook #185

  • Bump the GitHub dependencies group with 2 updates #194

  • Bump the maven-dependencies group with 4 updates #195

  • Bump the maven-dependencies group with 8 updates #215

  • [chore]: Add missing axoniq-message-transformation to combined coverage report #217

Contributors

We’d like to thank all the contributors who worked on this section!

Release 5.1

Features

  • [#3105] Set AxonServerSnapshotStore in the AxonServerConfigurationEnhancer

  • Snapshotting rework to allow snapshots to be part of event stream

  • [#3435] Align MultiStreamableMessageSource with StreamableEventSource interface

  • [#3435] Created the MultiStreamableEventSource implementation

  • [#3517] Revise Dead Letter Queue

  • [#3517] feat: Dead Letter Queue adjusted to AF5 API

  • [#4182] feat(extensions/spring): JdbcAutoConfiguration + JdbcDeadLetterQueueAutoConfiguration

  • [#5] Port PostgreSQL Extension while keeping history

  • [#6] Construct axoniq-server-connector out of axon-server-connector

  • [#7] Move distributed CommandBus logic to axoniq-distributed-messaging

  • [#8] Move distributed QueryBus logic to axoniq-distributed-messaging

  • [#9] Move Sequenced Dead-Letter Queue logic to axoniq-dead-letter

  • [#9] feat(messaging/axoniq-dead-letter): initialize module and move code from Axon Framework 5 archive

  • [#11] Move multi-streamable event source to axoniq-event-streaming

  • [#12] Introduce Spring Autoconfigure and Spring Starter modules

  • [#21] Use of Entitlement Module for DLQ

  • [#21] Register PostgreSQL and DLQ with Entitlement Manager

  • Base for Axoniq Framework

Enhancements

  • feat(test): AxonServerContainer DCB context support

  • [#3517] JpaSequencedDeadLetterQueue aligned with AF5 APIs

  • [#3517] CachingSequencedDeadLetterQueue per Segment

  • [#3517] Move JPA dead letter classes from stash/todo to messaging module

  • [#3517] JdbcSequencedDeadLetterQueue aligned with AF5 APIs

  • [#3517] JpaSequencedDeadLetterQueue auto configuration

  • [#3517] Add Context context() method to DeadLetter interface

  • [#3517] Remove unused DeadLetterQueueProviderConfigurerModule

  • DistributedQueryBusConfiguration cleanup and support for local shortcut

  • Align DistributedQueryBusConfiguration with DistributedCommandBusConfiguration

  • Move Sequenced Dead-Letter Queue feature to Axoniq Framework

  • Moved MultiSourceTrackingToken and MultiStreamableEventSource to Axoniq Framework

  • Move Axon Server integration to Axoniq Framework

  • Port DistributedCommand- and -QueryBus to Axoniq Framework

  • Remove the final Axon Server mentions

  • [#15] Move (Spring) integration-tests

  • [#17] Align maven module name prefix

  • [#19] Clean up maven modules and build

  • [#42] Move AxonServerContainer and TestFixture Customization facilities to axoniq-test module

  • Restore modules with history - distributed-messaging, server-connector

  • chore(integrationtests): init Maven module for integration tests

  • Move Axon Server specific tests into integration test module

  • Move AxonServerContainer in axoniq-testcontainer module

  • Remove the examples.yml GitHub Action

  • chore: fix code inspections

  • Update Axoniq framework with AbstractMessageStream changes

  • Replace the Slack notify GHA

  • Add missing ArchUnit tests to axoniq-testcontainer

  • chore: improve Logback settings

  • Add tag format settings to release plugin

  • [#9] refactor(messaging/axoniq-dead-letter): change dead-letter addon identifier to framework.dead_letter_queue

  • Disable the Slack release notification

  • Port Axon Server Spring integration

  • Fix all remaining usages of org.axonframework.messaging.*.distributed

Bug fixes

  • Fix axon server address resolution for AxonServerTestContainerConnectionDetailsFactory

  • Fix race-condition for DistributedQueryBusSubscriptionQueryTest#replayBufferOverflow

  • [#4437] AggregateBasedAxonServerEventStorageEngine returns invalid AggregateSequence

  • [#4474] PostgresqlEventStorageEngine throws AppendEventsTransactionRejectedException when appending >= 2 events from a command handler

  • [#4408] Remove DLQ references from persistence configuration

  • Remove DLQ entity registration in JpaAutoConfiguration

  • Adjust AxonServerAutoConfiguration import for Spring Boot autoconfig classes

  • [#18] Fix AxonServerConfigurationEnhancerTest.enhanceSetsExpectedDefaultsInAbsenceOfTheseComponents

  • Minor licensing adjustments

  • Correct projectKey and organization for Sonar

  • fix(dependency-injection/spring): guard dead-letter autoconfiguration on SequencedDeadLetterQueueFactory classpath presence

  • Correct code owners

  • Fix consistency marker when sourcing an empty stream in the AggregateBasedAxonServerEventStorageEngine

  • Normalize event tags into a table; fix rejection for multi-event batches

Documentation

  • [#3289] Clarify DLQ Transactionality in the documentation

  • [#4326] Migration path - Sequenced Dead-Letter Queue

  • [#4442] Describe PostgreSQLEventStorageEngine in the documentation

  • [#4484] Fix cross-version references in the framework reference and related guides

  • Migration path for the DLQ

  • Prepare composite Axon Framework / Axoniq Framework documentation

  • Adjust references to AxoniqFramework classes in the reference guide

  • Add Visual indicator for features moved to Axoniq Framework

  • Restructure Antora Setup

  • Include Data Protection documentation in framework reference guide

  • [#14] Create composite Documentation for Axoniq Framework and Axon Framework

  • [#14] Prepare composite Axon Framework / Axoniq Framework documentation

  • [#14] Fix the Antora component version resolution for release branches

  • [#14] Restructure Antora Setup

  • [#60] Add visual indication for Axoniq Framework features to the reference guide

  • [#60] Add Visual indicator Axoniq Framework features

  • [#76] Adjust references to AxoniqFramework code in the documentation

  • [#76] Adjust class references and maven artifact references in the reference guide

  • [#77] Add a mini migration guide for 5.0 → 5.1

  • Update Copyright Notice

Contributors

We’d like to thank all the contributors who worked on this release!