Axon and Axoniq Framework - Release 5.1.1

We are glad to announce that we’ve released Axon and Axoniq Framework version 5.1.1 on May 26, 2026. This release contains:

Axon Framework

:star: Features

  • [#4291] Port - EventStoreTransaction - allow overriding AppendCondition calculated from sourcing #4581
  • [#4306] Add Snapshotting annotation support #4553
  • [#3195] feat(migration): OpenRewrite script to help with migration from Axon Framework 4.x to Axon(iq) Framework 5.x #4549

:chart_with_upwards_trend: Enhancements

  • chore(migration): set expected axoniq.version to 5.1.1 #4604
  • [#3195] Add OpenRewrite recipes to migrate SnapshotTriggerDefinition into @Snapshotting annotation #4599
  • Port (5.1.x): Acocunt for async snapshot storage in SnapshottingEntityLifecycleHandlerTestSuite #4598
  • [#4425] align test naming with maven defaults #4571
  • [#4516] Port - Fix fromFuture to return Empty stream when future completes with null #4526
  • [#4516] Port - Fix fromFuture to return Empty stream when future completes with null #4521
  • Made MessageStream improvements and added MessageStreamTestSuite #4498
  • Rework snapshotting to allow single request snapshot + events streams #4460

:beetle: Bug fixes

  • fix(migration): remove BOM tests that fails due to chicken-and-egg problem #4610
  • Copy AF4 dependencies during generate-test-resources #4608
  • Combine all the ListAppender using Snapshotting tests in single @Nested class #4607
  • Move AF4 dependencies inside profile for axon-migration module #4606
  • [Port | #4594] Validate ProcessingContext is committed in SimpleQueryBus on emitUpdate, completeSubscriptions, and completeSubscriptionsExceptionally invocations #4603
  • [#4583] fix(messaging): SplitTask leaves token store inconsistent after segment split #4587
  • Remove describe method from ComponentDescriptor interface. #4578
  • fix(docs/migration-paths): update annotation from @InjectState to @InjectEntity in GiftCard example #4576
  • Port (5.1.x) [#3934] Fix duplicate command handler registration when subtype overrides handler #4567
  • [#3310] Fix axon auto configuration with graceful shutdown test #4566
  • [#4425] Align test naming with Maven surefire/failsafe defaults #4565
  • Port #4510 (TrackingToken per event in ProcessingContext) from axon-5.1.x to main #4537
  • [#4323] fix(messaging): PooledStreamingEventProcessor/WorkPackage - TrackingToken in ProcessingContext per event, not per batch #4510
  • [#4362] Allow for commands without an Entity to succeed #4388

:hammer_and_wrench: Dependency upgrades

  • Chore: Update axon server image version #4504

:heart: Contributors

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

@MateuszNaKodach, @abuijze, @hatzlj, @hjohn, @jangalinski, @laura-devriendt-lemon, and @smcvb

Axoniq Framework

:chart_with_upwards_trend: Enhancements

  • Port (5.1.x) fix the slack-release-notification.yml #142
  • Port (5.1.x): For convenience include the data protection module in the bom #131

:beetle: Bug fixes

  • Port (5.1.x): Fix failing tests #139
  • Port (5.1.x): Adjust import for TerminalEventMessage #133

:heart: Contributors

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