Spring Framework now uses a multi-release jar for its virtual thread
support. If the shaded jar is not marked as being a multi-release jar
and virtual threads are enabled, the application will fail to start as
the Java 21+ virtual threads delegate will be unavailable.
This commit updates the starter parent's default configuration for the
Maven Shade plugin to set Multi-Release: true in the application's
manifest.
Closes gh-43284
Old formmat: yyyy-MM-dd'T'HH:mm:ssZ, RFC 822
New format: yyyy-MM-dd'T'HH:mm:ssXXX ISO 8601
Related to https://github.com/git-commit-id/git-commit-id-maven-plugin/issues/674.
This change is required to make the times produced by the
git-commit-id-maven-plugin usable for Maven's reproducible builds,
see https://maven.apache.org/guides/mini/guide-reproducible-builds.html.
Timestamp for reproducible output archive entries must either formatted
as ISO 8601 or as an int representing seconds since the epoch.
Example usage might be
<properties>
<project.build.outputTimestamp>${git.commit.time}</project.build.outputTimestamp>
</properties>
See gh-39606
This commit updates the Reactive client used by Spring Pulsar to
version 0.4.0. The updated client fixes an issue where the
non-reactive and reactive shaded producer cache had the same
relocation prefix. This allows the removal of the shaded
relocation prefixes from the checkRuntimeClasspathForConflicts
ignore closure.
See gh-37801
This reverts commit 6506208d29. The
upgrade to the Jammy builder was causing
failsWhenBuildImageIsInvokedOnMultiModuleProjectWithBuildImageGoal to
hang on CI.
See gh-36689
A manifest entry `Spring-Boot-Native-Processed: true` is added to the
jar manifest by the Maven or Gradle plugin when the jar has been built
for use in a native image. With the Gradle plugin, this is done in
reaction to the GraalVM Native Image Plugin being applied to the
project. With the Maven plugin, this is done when the `native` profile
is applied to the build.