Improve bootstrap procedure for ApplicationModulesEndpoint#1338
Unnecessary context bootstrap triggered for application module tests due to overly constrained equals(…) and hashCode() in ModuleTypeExcludeFilter#1216
Register SQL schemas as native image resources #1449
Reflection metadata missing in JSONPath lookup for application module identifiers on GraalVM #1254
List module description before base package in canvas #1447
Update version compatibility matrix in reference docs #1289
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [org.springframework.modulith:spring-modulith-bom](https://spring.io/projects/spring-modulith/spring-modulith-bom) ([source](https://github.com/spring-projects/spring-modulith)) | import | major | `1.4.10` → `2.1.0` |
---
### Release Notes
<details>
<summary>spring-projects/spring-modulith (org.springframework.modulith:spring-modulith-bom)</summary>
### [`v2.1.0`](https://github.com/spring-projects/spring-modulith/releases/tag/2.1.0): 2.1 GA
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.7...2.1.0)
#### :star: New Features
##### Outbox
- Support for event outbox via Namastack [#​1517](https://github.com/spring-projects/spring-modulith/issues/1517)
- Support for externalizing events via JobRunr [#​1637](https://github.com/spring-projects/spring-modulith/issues/1637)
- Avoid executing Flyway migrations for modules without any migrations [#​1684](https://github.com/spring-projects/spring-modulith/issues/1684)
##### EPR
- Allow opting out of event publication registry handling for an `@TransactionalEventListener` [#​1630](https://github.com/spring-projects/spring-modulith/issues/1630)
- Enable JDBC event publication schema creation by default [#​1563](https://github.com/spring-projects/spring-modulith/issues/1563)
- Make sure that JDBC EPR schema initialization runs after Boot's file-based one [#​1568](https://github.com/spring-projects/spring-modulith/issues/1568)
##### Testing
- Support for application module testing in combination with Boot's slice test support [#​1573](https://github.com/spring-projects/spring-modulith/issues/1573)
- Open up `PublishedEvents` and `Scenario` to see events from all threads by default [#​1564](https://github.com/spring-projects/spring-modulith/issues/1564)
##### Observability
- Streamline observability infrastructure [#​1567](https://github.com/spring-projects/spring-modulith/issues/1567)
- Split up observability support into API and core artifact [#​1559](https://github.com/spring-projects/spring-modulith/issues/1559)
##### Moments
- Allow Moments' events to be (de)serialized by Jackson [#​1569](https://github.com/spring-projects/spring-modulith/issues/1569)
#### :bulb: Improvements
##### Core
- Prefer `@SpringBootApplication` on explicitly declared classes in `@ModuleSlicing` [#​1644](https://github.com/spring-projects/spring-modulith/issues/1644)
- Allow `FormattableType` to also abbreviate non-module types [#​1566](https://github.com/spring-projects/spring-modulith/issues/1566)
##### Outbox
- Require RabbitMQ publisher confirmation for outbox-based externalization [#​1727](https://github.com/spring-projects/spring-modulith/pull/1727)
- Block for externalization in outbox mode [#​1687](https://github.com/spring-projects/spring-modulith/pull/1687)
- Improve transaction handling in JobRunr integration [#​1655](https://github.com/spring-projects/spring-modulith/issues/1655)
##### EPR
- Switch to SHA-256 for event hashing in `Neo4jEventPublicationRepository` [#​1718](https://github.com/spring-projects/spring-modulith/issues/1718)
- Simplify default status assignment in JpaEventPublication [#​1703](https://github.com/spring-projects/spring-modulith/issues/1703)
- Unify event externalization infrastructure [#​1642](https://github.com/spring-projects/spring-modulith/issues/1642)
- Add details about the refined event publication lifecycle to the reference documentation [#​1593](https://github.com/spring-projects/spring-modulith/issues/1593)
- Avoid recreation of `TransactionalEventListener`s in `PersistentApplicationEventMulticaster` [#​1632](https://github.com/spring-projects/spring-modulith/issues/1632)
- Hibernate schema validation fails with JPA event publication registry [#​1543](https://github.com/spring-projects/spring-modulith/issues/1543)
##### JUnit Extension
- Allow skipping all tests if no changes are detected [#​1438](https://github.com/spring-projects/spring-modulith/issues/1438)
##### APT
- SpringModulithProcessor fails on Windows with KAPT - StringIndexOutOfBoundsException due to hardcoded forward slashes [#​1544](https://github.com/spring-projects/spring-modulith/issues/1544)
##### Moments
- Make `MomentsJacksonModule` a package protected type to allow AOT configuration creation [#​1596](https://github.com/spring-projects/spring-modulith/issues/1596)
- Allow resetting the shift in `TimeMachine` [#​1490](https://github.com/spring-projects/spring-modulith/issues/1490)
##### Misc
- Fix typo in Javadoc of ApplicationModules [#​1686](https://github.com/spring-projects/spring-modulith/pull/1686)
- Fixing links to reference documentation in README [#​1532](https://github.com/spring-projects/spring-modulith/pull/1532)
- Remove deprecations [#​1525](https://github.com/spring-projects/spring-modulith/issues/1525)
- Fix a typo in the runtime docs [#​1512](https://github.com/spring-projects/spring-modulith/pull/1512)
#### :beetle: Bugs
- Avoid `ConcurrentModificationException` in `ModuleEntryInterceptor` [#​1719](https://github.com/spring-projects/spring-modulith/issues/1719)
- Primitive types break `FormattableType` [#​1713](https://github.com/spring-projects/spring-modulith/issues/1713)
- Application-module-aware Flyway migrations not activated when Boot's slice test annotations are used [#​1706](https://github.com/spring-projects/spring-modulith/issues/1706)
- Fix JPA event publication delete batching to bind each batch [#​1701](https://github.com/spring-projects/spring-modulith/issues/1701)
- `JpaEventPublicationAdapter` returns incorrect status [#​1683](https://github.com/spring-projects/spring-modulith/issues/1683)
- Caching of `TransactionalEventListeners` breaks evaluation of conditions on `@TransactionalEventListener` methods [#​1654](https://github.com/spring-projects/spring-modulith/issues/1654)
- `JdbcEventPublicationRepository` deletes currently processing publication [#​1652](https://github.com/spring-projects/spring-modulith/issues/1652)
- Improve batch handling in `DefaultEventpublicationRegistry.processFailedPublications(…)` [#​1650](https://github.com/spring-projects/spring-modulith/issues/1650)
- Incorrect parameters in documentation for staleness of event publications of resubmitted event publications [#​1647](https://github.com/spring-projects/spring-modulith/issues/1647)
- Package-based named interfaces not properly merged [#​1598](https://github.com/spring-projects/spring-modulith/issues/1598)
- Fix incorrect `EventPublication.Status` reference in `….staleness.published` metadata [#​1582](https://github.com/spring-projects/spring-modulith/pull/1582)
- Contributions made `ApplicationModuleSourceFactory` not fully considered in `ApplicationModules` [#​1554](https://github.com/spring-projects/spring-modulith/issues/1554)
- Architecturally-evident type discovery tries to look up repository metadata for implementation classes [#​1541](https://github.com/spring-projects/spring-modulith/issues/1541)
- `JpaEventPublicationRepository.markCompleted(event, identifier, completionDate)` doesn't update status to `COMPLETED` [#​1521](https://github.com/spring-projects/spring-modulith/issues/1521)
- CGLib proxy created for `JdbcEventPublicationRepositoryV2`causing issues in native image [#​1518](https://github.com/spring-projects/spring-modulith/issues/1518)
- incompleteEventPublications.resubmitIncompletePublicationsOlderThan throws NPE when last\_resubmission\_date is null [#​1516](https://github.com/spring-projects/spring-modulith/issues/1516)
- `@ApplicationModuleTest` does not bootstrap beans from test configuration [#​1489](https://github.com/spring-projects/spring-modulith/issues/1489)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.1 [#​1740](https://github.com/spring-projects/spring-modulith/issues/1740)
- Upgrade to Spring Framework 7.0.8 [#​1736](https://github.com/spring-projects/spring-modulith/issues/1736)
- Upgrade to jMolecules 2025.0.2 [#​1534](https://github.com/spring-projects/spring-modulith/issues/1534)
- Upgrade to ArchUnit 1.4.2 [#​1657](https://github.com/spring-projects/spring-modulith/issues/1657)
- Upgrade to Namastack Outbox 1.7 [#​1737](https://github.com/spring-projects/spring-modulith/issues/1737)
- Upgrade to JobRunr 8.6.1 [#​1722](https://github.com/spring-projects/spring-modulith/issues/1722)
- Upgrade to MongoDB 5.8 [#​1738](https://github.com/spring-projects/spring-modulith/issues/1738)
- Upgrade to Micrometer Tracing 1.7 [#​1735](https://github.com/spring-projects/spring-modulith/issues/1735)
- Upgrade to jGit 7.7 [#​1739](https://github.com/spring-projects/spring-modulith/issues/1739)
- Upgrade to JSON Unit AssertJ 5.1.2 [#​1723](https://github.com/spring-projects/spring-modulith/issues/1723)
- Upgrade to Lombok 1.18.46 [#​1660](https://github.com/spring-projects/spring-modulith/issues/1660)
- Upgrade to Testcontainers 2.0.5 [#​1659](https://github.com/spring-projects/spring-modulith/issues/1659)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@​NeatGuyCoding](https://github.com/NeatGuyCoding), [@​patbaumgartner](https://github.com/patbaumgartner), [@​pramoth](https://github.com/pramoth), [@​rolandbeisel](https://github.com/rolandbeisel), and [@​SAY-5](https://github.com/SAY-5)
### [`v2.0.7`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.7)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.6...2.0.7)
#### :bulb: Improvements
- Simplify default status assignment in JpaEventPublication [#​1729](https://github.com/spring-projects/spring-modulith/issues/1729)
- Fix typo in Javadoc of ApplicationModules [#​1696](https://github.com/spring-projects/spring-modulith/issues/1696)
#### :beetle: Bugs
- `JpaEventPublicationAdapter` returns incorrect status [#​1728](https://github.com/spring-projects/spring-modulith/issues/1728)
- Avoid `ConcurrentModificationException` in `ModuleEntryInterceptor` [#​1720](https://github.com/spring-projects/spring-modulith/issues/1720)
- Primitive types break `FormattableType` [#​1716](https://github.com/spring-projects/spring-modulith/issues/1716)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.7 [#​1743](https://github.com/spring-projects/spring-modulith/issues/1743)
- Upgrade to Spring Framework 7.0.8 [#​1742](https://github.com/spring-projects/spring-modulith/issues/1742)
- Upgrade to Micrometer Tracing 1.6.6 [#​1741](https://github.com/spring-projects/spring-modulith/issues/1741)
### [`v2.0.6`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.6)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.5...2.0.6)
#### :bulb: Improvements
- Prefer `@SpringBootApplication` on explicitly declared classes in `@ModuleSlicing` [#​1645](https://github.com/spring-projects/spring-modulith/issues/1645)
#### :beetle: Bugs
- Incorrect parameters in documentation for staleness of event publications of resubmitted event publications [#​1664](https://github.com/spring-projects/spring-modulith/issues/1664)
- `JdbcEventPublicationRepository` deletes currently processing publication [#​1653](https://github.com/spring-projects/spring-modulith/issues/1653)
- Improve batch handling in `DefaultEventpublicationRegistry.processFailedPublications(…)` [#​1651](https://github.com/spring-projects/spring-modulith/issues/1651)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.6 [#​1679](https://github.com/spring-projects/spring-modulith/issues/1679)
- Upgrade to MongoDB 5.6.5 [#​1670](https://github.com/spring-projects/spring-modulith/issues/1670)
- Upgrade to Lombok 1.18.46 [#​1669](https://github.com/spring-projects/spring-modulith/issues/1669)
- Upgrade to Testcontainers 2.0.5 [#​1668](https://github.com/spring-projects/spring-modulith/issues/1668)
- Upgrade to ArchUnit 1.4.2 [#​1667](https://github.com/spring-projects/spring-modulith/issues/1667)
- Upgrade to Spring Framework 7.0.7 [#​1666](https://github.com/spring-projects/spring-modulith/issues/1666)
- Upgrade to Micrometer Tracing 1.6.5 [#​1665](https://github.com/spring-projects/spring-modulith/issues/1665)
### [`v2.0.5`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.5)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.4...2.0.5)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.5 [#​1635](https://github.com/spring-projects/spring-modulith/issues/1635)
### [`v2.0.4`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.4)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.3...2.0.4)
#### :bulb: Improvements
- Add details about the refined event publication lifecycle to the reference documentation [#​1594](https://github.com/spring-projects/spring-modulith/issues/1594)
#### :beetle: Bugs
- Fix incorrect `EventPublication.Status` reference in `….staleness.published` metadata [#​1601](https://github.com/spring-projects/spring-modulith/issues/1601)
- Package-based named interfaces not properly merged [#​1599](https://github.com/spring-projects/spring-modulith/issues/1599)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.4 [#​1619](https://github.com/spring-projects/spring-modulith/issues/1619)
- Upgrade to Testcontainers 2.0.4 [#​1616](https://github.com/spring-projects/spring-modulith/issues/1616)
- Upgrade to Spring Framework 7.0.6 [#​1615](https://github.com/spring-projects/spring-modulith/issues/1615)
- Upgrade to Micrometer Tracing 1.6.4 [#​1614](https://github.com/spring-projects/spring-modulith/issues/1614)
### [`v2.0.3`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.3)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.2...2.0.3)
#### :bulb: Improvements
- Hibernate schema validation fails with JPA event publication registry [#​1570](https://github.com/spring-projects/spring-modulith/issues/1570)
- SpringModulithProcessor fails on Windows with KAPT - StringIndexOutOfBoundsException due to hardcoded forward slashes [#​1546](https://github.com/spring-projects/spring-modulith/issues/1546)
#### :beetle: Bugs
- Contributions made `ApplicationModuleSourceFactory` not fully considered in `ApplicationModules` [#​1585](https://github.com/spring-projects/spring-modulith/issues/1585)
- Architecturally-evident type discovery tries to look up repository metadata for implementation classes [#​1547](https://github.com/spring-projects/spring-modulith/issues/1547)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.3 [#​1589](https://github.com/spring-projects/spring-modulith/issues/1589)
- Upgrade to MongoDB 5.6.3 [#​1581](https://github.com/spring-projects/spring-modulith/issues/1581)
- Upgrade to Spring Framework 7.0.5 [#​1580](https://github.com/spring-projects/spring-modulith/issues/1580)
- Upgrade to Micrometer Tracing 1.6.3 [#​1579](https://github.com/spring-projects/spring-modulith/issues/1579)
### [`v2.0.2`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.2)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.1...2.0.2)
#### :bulb: Improvements
- Fix a typo in the runtime docs [#​1520](https://github.com/spring-projects/spring-modulith/issues/1520)
#### :beetle: Bugs
- `JpaEventPublicationRepository.markCompleted(event, identifier, completionDate)` doesn't update status to `COMPLETED` [#​1523](https://github.com/spring-projects/spring-modulith/issues/1523)
- `incompleteEventPublications.resubmitIncompletePublicationsOlderThan(…)` throws NPE when `last_resubmission_date` is `null` [#​1519](https://github.com/spring-projects/spring-modulith/issues/1519)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.2 [#​1533](https://github.com/spring-projects/spring-modulith/issues/1533)
- Upgrade to Spring Framework 7.0.3 [#​1529](https://github.com/spring-projects/spring-modulith/issues/1529)
- Upgrade to Micrometer Tracing 1.6.2 [#​1528](https://github.com/spring-projects/spring-modulith/issues/1528)
### [`v2.0.1`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.1)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/2.0.0...2.0.1)
#### :bulb: Improvements
- Allow resetting the shift in `TimeMachine` [#​1491](https://github.com/spring-projects/spring-modulith/issues/1491)
#### :beetle: Bugs
- `@ApplicationModuleTest` does not bootstrap beans from test configuration [#​1495](https://github.com/spring-projects/spring-modulith/issues/1495)
- CGLib proxy created for `JdbcEventPublicationRepositoryV2`causing issues in native image [#​1493](https://github.com/spring-projects/spring-modulith/issues/1493)
- `ClassNotFoundException` for `package-info` from `JavaPackage` during runtime bootstrap [#​1487](https://github.com/spring-projects/spring-modulith/issues/1487)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0.1 [#​1510](https://github.com/spring-projects/spring-modulith/issues/1510)
- Upgrade to jMolecules 2025.0.2 [#​1509](https://github.com/spring-projects/spring-modulith/issues/1509)
- Upgrade to MongoDB 5.6.2 [#​1508](https://github.com/spring-projects/spring-modulith/issues/1508)
- Upgrade to Testcontainers 2.0.3 [#​1507](https://github.com/spring-projects/spring-modulith/issues/1507)
- Upgrade to Spring Framework 7.0.2 [#​1506](https://github.com/spring-projects/spring-modulith/issues/1506)
- Upgrade to Micrometer Tracing 1.6.1 [#​1505](https://github.com/spring-projects/spring-modulith/issues/1505)
### [`v2.0.0`](https://github.com/spring-projects/spring-modulith/releases/tag/2.0.0): 2.0 GA
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/1.4.12...2.0.0)
#### :star: New Features
- Overhaul event publication lifecycle [#​796](https://github.com/spring-projects/spring-modulith/issues/796) (Neo4j [#​1337](https://github.com/spring-projects/spring-modulith/issues/1337), MongoDB [#​1336](https://github.com/spring-projects/spring-modulith/issues/1336), JDBC [#​1321](https://github.com/spring-projects/spring-modulith/issues/1321), JPA [#​1375](https://github.com/spring-projects/spring-modulith/issues/1375), [#​1389](https://github.com/spring-projects/spring-modulith/issues/1389))
- Support for application-module-specific Flyway migrations [#​1067](https://github.com/spring-projects/spring-modulith/issues/1067), [#​1440](https://github.com/spring-projects/spring-modulith/issues/1440)
- Allow serialized execution of event externalization [#​1370](https://github.com/spring-projects/spring-modulith/issues/1370)
- Support to verify application module structure on startup [#​1287](https://github.com/spring-projects/spring-modulith/issues/1287)
- Propagate named interface assignments of types to return and parameter types of methods declared [#​1264](https://github.com/spring-projects/spring-modulith/issues/1264)
- Extract module description from a module's base package `package-info.java` Javadoc [#​1430](https://github.com/spring-projects/spring-modulith/issues/1430)
- Remove deprecated `@ApplicationEventListener` annotation [#​1397](https://github.com/spring-projects/spring-modulith/issues/1397)
- Support for Jackson 3 in event serialization [#​1364](https://github.com/spring-projects/spring-modulith/issues/1364), [#​1369](https://github.com/spring-projects/spring-modulith/issues/1369) (with Jackson 2 still supported)
- Migrate nullness verification to jSpecify [#​1192](https://github.com/spring-projects/spring-modulith/issues/1192)
#### :bulb: Improvements
- Prevent application module misconfiguration due to invalid additional packages [#​1251](https://github.com/spring-projects/spring-modulith/issues/1251)
- Expose additional application module metadata in `application-modules.json` [#​1276](https://github.com/spring-projects/spring-modulith/issues/1276)
- Cleanup configuration metadata creation [#​1455](https://github.com/spring-projects/spring-modulith/issues/1455)
- Improve bootstrap procedure for `ApplicationModulesEndpoint` [#​1338](https://github.com/spring-projects/spring-modulith/issues/1338)
- Unnecessary context bootstrap triggered for application module tests due to overly constrained `equals(…)` and `hashCode()` in `ModuleTypeExcludeFilter` [#​1216](https://github.com/spring-projects/spring-modulith/issues/1216)
- Register SQL schemas as native image resources [#​1449](https://github.com/spring-projects/spring-modulith/issues/1449)
- Reflection metadata missing in JSONPath lookup for application module identifiers on GraalVM [#​1254](https://github.com/spring-projects/spring-modulith/issues/1254)
- List module description before base package in canvas [#​1447](https://github.com/spring-projects/spring-modulith/issues/1447)
- Update version compatibility matrix in reference docs [#​1289](https://github.com/spring-projects/spring-modulith/issues/1289)
- Fix a typo in the overview docs [#​1294](https://github.com/spring-projects/spring-modulith/pull/1294)
- Fix typo in reference documentation [#​1394](https://github.com/spring-projects/spring-modulith/pull/1394)
- Improve Documentation on Change Aware Test Execution [#​1382](https://github.com/spring-projects/spring-modulith/issues/1382)
- Switch automatic Hexagonal Architecture verification to lenient mode [#​1366](https://github.com/spring-projects/spring-modulith/issues/1366)
- Resolve JUnit warnings regarding nested test classes \[[#​1326](https://github.com/spring-projects/spring-modulith/issues/1326)]\(<https://github.com/spring-projects/> spring-modulith/issues/1326)
- Constrain access to internally used methods of `ApplicationModuleSource` [#​1283](https://github.com/spring-projects/spring-modulith/issues/1283)
- Remove legacy reflection-based event handling in `PersistentApplicationEventMulticaster` [#​1356](https://github.com/spring-projects/spring-modulith/pull/1356)
- Update copyright year in `index.adoc` [#​1368](https://github.com/spring-projects/spring-modulith/pull/1368)
- Polish deprecations in `PublishedEvents` [#​1448](https://github.com/spring-projects/spring-modulith/issues/1448)
#### :beetle: Bugs
- Forward classloader in `ConfigDataEnvironmentPostProcessor` application in `ApplicationModuleDetectionStrategy` lookup [#​1435](https://github.com/spring-projects/spring-modulith/issues/1435)
- Potential `NullPointerException` in annotation detection in `JavaPackage` [#​1341](https://github.com/spring-projects/spring-modulith/issues/1341)
- Avoid `ConcurrentModificationException` in `PackageName` [#​1319](https://github.com/spring-projects/spring-modulith/issues/1319)
- Potential stack overflow when looking up a module's dependencies if it's part of a cycle [#​1299](https://github.com/spring-projects/spring-modulith/issues/1299)
- `ApplicationModules.toString()` should list *all* dependencies, marking bootstrap dependencies [#​1285](https://github.com/spring-projects/spring-modulith/issues/1285)
- Named interfaces leaking from submodules into parent ones [#​1279](https://github.com/spring-projects/spring-modulith/issues/1279)
- Inconsistent visibility of `NamedInterface.of(String name, Classes classes)` [#​1272](https://github.com/spring-projects/spring-modulith/issues/1272)
- Repeated invocation of AOT phase breaks creation of `application-modules.json` [#​1457](https://github.com/spring-projects/spring-modulith/issues/1457)
- Properly detect Maven test execution in `BuildSystemUtils` [#​1432](https://github.com/spring-projects/spring-modulith/issues/1432)
- Properly disable APT execution for test sources when using KAPT [#​1386](https://github.com/spring-projects/spring-modulith/issues/1386)
- Exception during file creation from APT module [#​1263](https://github.com/spring-projects/spring-modulith/issues/1263)
- Incompatible path handling for KAPT with Maven [#​1209](https://github.com/spring-projects/spring-modulith/issues/1209)
- Invalid type reference in check for jMolecules Onion Architecture integration presence [#​1414](https://github.com/spring-projects/spring-modulith/pull/1414)
- Potential `NoClassDefFoundError` when jMolecules DDD artifact is missing from the classpath [#​1333](https://github.com/spring-projects/spring-modulith/issues/1333)
- `TestExecutionCondition` should fall back to execute the test if more than one main class is found [#​1391](https://github.com/spring-projects/spring-modulith/issues/1391)
- Potential `ConcurrentModificationException` when running `@ApplicationModuleTest` tests in parallel [#​1295](https://github.com/spring-projects/spring-modulith/issues/1295)
- Version compatibility of 1.4 should state Boot 3.5 at compile target [#​1331](https://github.com/spring-projects/spring-modulith/issues/1331)
- Remove reference to JGraphT from reference documentation [#​1288](https://github.com/spring-projects/spring-modulith/issues/1288)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 4.0
- Upgrade to Spring Framework 7.0
- Upgrade to jMolecules 2025.0
- Upgrade to Structurizr 5
- Upgrade to ArchUnit 1.4.1
- Upgrade to Testcontainers 2.0
- Upgrade to Micrometer 1.6
- Upgrade to Micrometer Tracing 1.6
- Upgrade to NullAway 0.12.10
- Upgrade to jGit 7.4
- Upgrade to Cute 1.9.0
- Upgrade to APTK 0.30.5 [#​1372](https://github.com/spring-projects/spring-modulith/issues/1372)
#### :heart: Contributors
Thank you to all the contributors who worked on this release:
[@​jekutzsche](https://github.com/jekutzsche), [@​kitt51](https://github.com/kitt51), [@​patbaumgartner](https://github.com/patbaumgartner), [@​tlarbals824](https://github.com/tlarbals824), and [@​val-beresneva](https://github.com/val-beresneva)
### [`v1.4.12`](https://github.com/spring-projects/spring-modulith/releases/tag/1.4.12)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/1.4.11...1.4.12)
#### :bulb: Improvements
- Fix typo in Javadoc of ApplicationModules [#​1697](https://github.com/spring-projects/spring-modulith/issues/1697)
#### :beetle: Bugs
- Avoid `ConcurrentModificationException` in `ModuleEntryInterceptor` [#​1721](https://github.com/spring-projects/spring-modulith/issues/1721)
- Primitive types break `FormattableType` [#​1717](https://github.com/spring-projects/spring-modulith/issues/1717)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Framework 6.2.19 [#​1746](https://github.com/spring-projects/spring-modulith/issues/1746)
- Upgrade to Micrometer Tracing 1.5.12 [#​1745](https://github.com/spring-projects/spring-modulith/issues/1745)
-
### [`v1.4.11`](https://github.com/spring-projects/spring-modulith/releases/tag/1.4.11)
[Compare Source](https://github.com/spring-projects/spring-modulith/compare/1.4.10...1.4.11)
#### :bulb: Improvements
- Prefer `@SpringBootApplication` on explicitly declared classes in `@ModuleSlicing` [#​1646](https://github.com/spring-projects/spring-modulith/issues/1646)
#### :hammer: Dependency Upgrades
- Upgrade to Spring Boot 3.5.14 [#​1678](https://github.com/spring-projects/spring-modulith/issues/1678)
- Upgrade to Micrometer 1.15.11 [#​1677](https://github.com/spring-projects/spring-modulith/issues/1677)
- Upgrade to Lombok 1.18.46 [#​1676](https://github.com/spring-projects/spring-modulith/issues/1676)
- Upgrade to ArchUnit 1.4.2 [#​1673](https://github.com/spring-projects/spring-modulith/issues/1673)
- Upgrade to Spring Framework 6.2.18 [#​1672](https://github.com/spring-projects/spring-modulith/issues/1672)
- Upgrade to Micrometer Tracing 1.5.11 [#​1671](https://github.com/spring-projects/spring-modulith/issues/1671)
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzIuMSIsInVwZGF0ZWRJblZlciI6IjQzLjI0Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
mars3142
changed title from Update dependency org.springframework.modulith:spring-modulith-bom to v2 to Update spring-modulith.version to v22026-06-03 00:30:39 +00:00
mars3142
changed title from Update spring-modulith.version to v2 to Update spring-modulith.version (major)2026-06-20 00:21:44 +00:00
mars3142
changed title from Update spring-modulith.version (major) to Update dependency org.springframework.modulith:spring-modulith-bom to v22026-06-24 00:22:31 +00:00
Some required checks failed
PR Build Check / build (pull_request) Failing after 36s
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
1.4.10→2.1.0Release Notes
spring-projects/spring-modulith (org.springframework.modulith:spring-modulith-bom)
v2.1.0: 2.1 GACompare Source
⭐ New Features
Outbox
EPR
@TransactionalEventListener#1630Testing
PublishedEventsandScenarioto see events from all threads by default #1564Observability
Moments
💡 Improvements
Core
@SpringBootApplicationon explicitly declared classes in@ModuleSlicing#1644FormattableTypeto also abbreviate non-module types #1566Outbox
EPR
Neo4jEventPublicationRepository#1718TransactionalEventListeners inPersistentApplicationEventMulticaster#1632JUnit Extension
APT
Moments
MomentsJacksonModulea package protected type to allow AOT configuration creation #1596TimeMachine#1490Misc
🪲 Bugs
ConcurrentModificationExceptioninModuleEntryInterceptor#1719FormattableType#1713JpaEventPublicationAdapterreturns incorrect status #1683TransactionalEventListenersbreaks evaluation of conditions on@TransactionalEventListenermethods #1654JdbcEventPublicationRepositorydeletes currently processing publication #1652DefaultEventpublicationRegistry.processFailedPublications(…)#1650EventPublication.Statusreference in….staleness.publishedmetadata #1582ApplicationModuleSourceFactorynot fully considered inApplicationModules#1554JpaEventPublicationRepository.markCompleted(event, identifier, completionDate)doesn't update status toCOMPLETED#1521JdbcEventPublicationRepositoryV2causing issues in native image #1518@ApplicationModuleTestdoes not bootstrap beans from test configuration #1489🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@NeatGuyCoding, @patbaumgartner, @pramoth, @rolandbeisel, and @SAY-5
v2.0.7Compare Source
💡 Improvements
🪲 Bugs
JpaEventPublicationAdapterreturns incorrect status #1728ConcurrentModificationExceptioninModuleEntryInterceptor#1720FormattableType#1716🔨 Dependency Upgrades
v2.0.6Compare Source
💡 Improvements
@SpringBootApplicationon explicitly declared classes in@ModuleSlicing#1645🪲 Bugs
JdbcEventPublicationRepositorydeletes currently processing publication #1653DefaultEventpublicationRegistry.processFailedPublications(…)#1651🔨 Dependency Upgrades
v2.0.5Compare Source
🔨 Dependency Upgrades
v2.0.4Compare Source
💡 Improvements
🪲 Bugs
EventPublication.Statusreference in….staleness.publishedmetadata #1601🔨 Dependency Upgrades
v2.0.3Compare Source
💡 Improvements
🪲 Bugs
ApplicationModuleSourceFactorynot fully considered inApplicationModules#1585🔨 Dependency Upgrades
v2.0.2Compare Source
💡 Improvements
🪲 Bugs
JpaEventPublicationRepository.markCompleted(event, identifier, completionDate)doesn't update status toCOMPLETED#1523incompleteEventPublications.resubmitIncompletePublicationsOlderThan(…)throws NPE whenlast_resubmission_dateisnull#1519🔨 Dependency Upgrades
v2.0.1Compare Source
💡 Improvements
TimeMachine#1491🪲 Bugs
@ApplicationModuleTestdoes not bootstrap beans from test configuration #1495JdbcEventPublicationRepositoryV2causing issues in native image #1493ClassNotFoundExceptionforpackage-infofromJavaPackageduring runtime bootstrap #1487🔨 Dependency Upgrades
v2.0.0: 2.0 GACompare Source
⭐ New Features
package-info.javaJavadoc #1430@ApplicationEventListenerannotation #1397💡 Improvements
application-modules.json#1276ApplicationModulesEndpoint#1338equals(…)andhashCode()inModuleTypeExcludeFilter#1216ApplicationModuleSource#1283PersistentApplicationEventMulticaster#1356index.adoc#1368PublishedEvents#1448🪲 Bugs
ConfigDataEnvironmentPostProcessorapplication inApplicationModuleDetectionStrategylookup #1435NullPointerExceptionin annotation detection inJavaPackage#1341ConcurrentModificationExceptioninPackageName#1319ApplicationModules.toString()should list all dependencies, marking bootstrap dependencies #1285NamedInterface.of(String name, Classes classes)#1272application-modules.json#1457BuildSystemUtils#1432NoClassDefFoundErrorwhen jMolecules DDD artifact is missing from the classpath #1333TestExecutionConditionshould fall back to execute the test if more than one main class is found #1391ConcurrentModificationExceptionwhen running@ApplicationModuleTesttests in parallel #1295🔨 Dependency Upgrades
❤️ Contributors
Thank you to all the contributors who worked on this release:
@jekutzsche, @kitt51, @patbaumgartner, @tlarbals824, and @val-beresneva
v1.4.12Compare Source
💡 Improvements
🪲 Bugs
ConcurrentModificationExceptioninModuleEntryInterceptor#1721FormattableType#1717🔨 Dependency Upgrades
v1.4.11Compare Source
💡 Improvements
@SpringBootApplicationon explicitly declared classes in@ModuleSlicing#1646🔨 Dependency Upgrades
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate.
626c8c03e4to36774f1ea336774f1ea3to86d8151b4bUpdate dependency org.springframework.modulith:spring-modulith-bom to v2to Update spring-modulith.version to v286d8151b4bto9cb2608947Update spring-modulith.version to v2to Update spring-modulith.version (major)Update spring-modulith.version (major)to Update dependency org.springframework.modulith:spring-modulith-bom to v2View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.