Set up dedicated GitHub actions workflow to run tests against upcoming Spring Boot snapshots and milestones. Introduced with-preview-repos build profile to activate the Maven repositories containing snapshots and milestones.
We now ship a spring-modulith-starter-core that includes dependencies that will typically be used for core runtime support, including the spring-modulith-moments and …-api artifacts in compile scope (so that production code can refer to them) as well as both the …-core and …-runtime artifacts in runtime scope (primarily for ApplicationModuleListener support).
The persistence-technology-specific event publication registry starters now refer to that core starter.
Introduce Spring Modulith Actuator module to expose the application module structure as Spring Boot actuator. This required a Spring Modulith Runtime module to be extracted from the Spring Modulith Observability one. The former now contains the auto-configured ApplicationRuntime and ApplicationModulesRuntime bean instances to be able to bootstrap a ApplicationModules asynchronously on application startup. The actuator module then contains a Spring Boot @Endpoint implementation consuming the ApplicationModules to render JSON describing the application module structure.
Adapt to API changes in Micrometer and Spring Boot's test context loader API now exposing a checked ContextLoadException to signal failures during ApplicationContext bootstraps.
Added dedicated prepare-release profile to make sure that all modules get their versions updated on mvn release:prepare. This is required to make sure the tag lands on a commit that especially has the distribution module updated so that the documentation publication actually produces the artifacts for the released version.