Axon Framework - Release 4.7.0

I’m glad to announce that we’ve released Axon Framework version 4.7.0 on Jan 26, 2023.

This release introduces compatibility with Spring Boot 3.
The support for Spring Boot 3 also entails the removal of the Jakarta-specific modules since Jakarta is now the default.
Furthermore, it required us to duplicate the Javax Persistence and Javax Validation classes into dedicated legacy packages.
In doing so, we provided support for both Javax and Jakarta, as well as Spring Boot 2 and Spring Boot 3.

However, this required us to introduce breaking changes in 4.7 compared to 4.6.
To help you upgrade towards Axon Framework 4.7, we provide a dedicated Upgrading to Axon Framework 4.7 page describing the scenarios you may be in and the steps to take for upgrading.

Next to the Javax-to-Jakarta adjustments and the Spring Boot 3 support, we’ve added an Event Scheduler and Deadline Manager based on JobRunr.

For an exhaustive list of the features, enhancements, and bug fixes introduced, see below:

:star: Features

  • [#1509] Add and to the #2551
  • [#2476] Support handler interceptor registration on the #2548
  • [#2351] The Parameter Resolver #2547
  • Add #2545
  • [#1123] Support bean wiring through generics #2527
  • Implement the JobRunr implementation of the event scheduler. #2509
  • JobRunr #2499
  • Added parameter resolver for aggregate type retrieval from domain event messages #2498
  • Implement Event Handler Interceptors registration on #2476
  • Message Handler (parameter) support for Dead Letters #2351
  • Alternative deadline manager: JobRunr (Quartz alternative) #2192
  • Allow the AggregateTestFixture to expect methods to be called instead of commands passed. #1509
  • Allow replay on a Saga #1458
  • Provide alternatives for QuartzEventScheduler and QuartzDeadlineManager #1106
  • Configurable Locking Scheme in SagaStore #947

:chart_with_upwards_trend: Enhancements

  • Fixed SpringAggregateLookup initialization issue for Spring AOT #2578
  • [#2561] Move Sonar to JDK17 #2574
  • Automatically approve PRs #2566
  • Add Segment and Token to UnitOfWork of PooledStreamingEventProcessor #2562
  • Move Sonar to JDK17 build #2561
  • [#2129] Fine tune registration in the #2552
  • [#1630] Allow disabling of sequence number generation in the #2550
  • Several fixes to successfully run a JDK17 build #2544
  • Adjust dependabot behavior #2536
  • Enable heartbeats to Axon Server by default #2530
  • [#2383] Add to and #2526
  • Small test and code improvement for JobRunr deadline manager #2510
  • Introduce the NestingSpanFactory #2487
  • Improve mismatch messages for Hamcrest Matchers #2400 #2418
  • Allow OpenTelemetrySpanFactory to only create child spans #2404
  • Add ConditionalOnBean to InfraConfiguration Beans #2383
  • AggregateTestFixture creates EventSourcingRepository and does not invalidate it #2129
  • JDK16 - axon-messaging own unit test fail on #1826
  • GenericJpaRepository to enable/disable the sequence number generation #1630

:beetle: Bug Fixes

  • Fix typos in Javadoc #2475
  • Aggregate Repository Spring wiring causes NullPointerException #1123
  • Asserting checked exception while creating an Aggregate #782

:hammer_and_wrench: Dependency Upgrade

  • Bump dependabot/fetch-metadata from 1.3.5 to 1.3.6 #2577
  • Bump dependabot/fetch-metadata from 1.1.1 to 1.3.5 #2573
  • Bump dom4j from 2.1.3 to 2.1.4 #2571
  • Bump spring-boot-starter-parent from 3.0.1 to 3.0.2 #2570
  • Bump spring.boot.version from 2.7.7 to 2.7.8 #2568
  • Bump byte-buddy.version from 1.12.21 to 1.12.22 #2559
  • Bump spring-framework-bom from 5.3.24 to 5.3.25 #2558
  • Bump micrometer-core from 1.10.2 to 1.10.3 #2557
  • Bump projectreactor.version from 3.5.1 to 3.5.2 #2556
  • Bump jobrunr from 5.3.2 to 5.3.3 #2553
  • Bump byte-buddy.version from 1.12.20 to 1.12.21 #2549
  • Bump voxmedia/github-action-slack-notify-build from 1.5.0 to 1.6.0 #2546
  • Bump joda-time from 2.12.1 to 2.12.2 #2543
  • Bump micrometer-core from 1.10.0 to 1.10.2 #2542
  • Bump jobrunr from 5.3.1 to 5.3.2 #2541
  • Bump slf4j.version from 2.0.4 to 2.0.6 #2540
  • Bump projectreactor.version from 3.5.0 to 3.5.1 #2539
  • Bump mockito.version from 4.10.0 to 4.11.0 #2535
  • [#2430] Add support for Spring Boot 3 #2534
  • Spring Boot 3 update causes the build to fail #2524
  • [Snyk] Upgrade joda-time:joda-time from 2.12.0 to 2.12.1 #2521
  • [Snyk] Upgrade io.dropwizard.metrics:metrics-core from 4.2.12 to 4.2.13 #2520
  • [Snyk] Upgrade org.slf4j:slf4j-api from 2.0.3 to 2.0.4 #2519
  • [Snyk] Upgrade org.hibernate:hibernate-core from 5.6.12.Final to 5.6.14.Final #2518
  • Bump actions/setup-java from 3.8.0 to 3.9.0 #2516
  • Bump mockito.version from 4.9.0 to 4.10.0 #2515
  • Bump ojdbc8 from 21.7.0.0 to 21.8.0.0 #2511
  • Bump actions/setup-java from 3.7.0 to 3.8.0 #2508
  • Bump actions/setup-java from 3.6.0 to 3.7.0 #2506
  • Bump spring.boot.version from 2.7.5 to 3.0.0 #2503
  • Bump maven-install-plugin from 3.0.1 to 3.1.0 #2494
  • Bump voxmedia/github-action-slack-notify-build from 1.1.2 to 1.5.0 #2488
  • Bump mockito.version from 4.8.1 to 4.9.0 #2484
  • Bump projectreactor.version from 3.4.24 to 3.5.0 #2479
  • Bump micrometer-core from 1.9.4 to 1.10.0 #2477
  • Bump actions/setup-java from 3.5.1 to 3.6.0 #2447
  • Bump joda-time from 2.11.2 to 2.12.0 #2440
  • Bump slackapi/slack-github-action from 1.22.0 to 1.23.0 #2439
  • Bump opentelemetry-api from 1.18.0 to 1.19.0 #2432
  • Upgrade to Spring 6 and Spring Boot 3 #2430
  • Bump actions/setup-java from 3.5.0 to 3.5.1 #2397
  • Bump maven-jar-plugin from 3.2.2 to 3.3.0 #2371
  • Bump axon-mongo from 4.5 to 4.6.0 #2363

:heart: Contributors

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

2 Likes

Link appears to be broken

Hi @andye2004, thanks a lot for reporting, I fixed the link.

1 Like