Cache descriptions in a location outside CLASS_OUTPUT so that Gradle's
incremental compilation does not lose javadoc-based descriptions for
types passed as .class files.
See gh-50489
Signed-off-by: Agustin Bereciartua <bereciartua.agustin@gmail.com>
Changelog.computeDifferences() called
ConfigurationMetadataRepository.getAllProperties() from inside its main
loop. The default repository implementation builds a new map each time
that method is called, so the new version's properties were rebuilt once
per property of the old version. The ids that had already been seen were
also tracked in an ArrayList, turning each membership check into a linear
scan.
Read the properties of each repository once and use the old properties
map itself to detect the properties that have been added.
Computing the changelog between Spring Boot 3.4.0 and 3.5.0 (2,498 and
2,555 properties) drops from 203ms to 0.5ms and the generator's peak
memory from 302MB to 91MB. The generated asciidoc is byte for byte
identical.
See gh-51655
Signed-off-by: Junggi Kim <kimjg2477@gmail.com>
Rather than listing common modules and tweak things for various
milestones, this commit flatten the list of modules as of Spring Boot
4.0.0-RC1.
Closes gh-47852
This commit handles a corner case where we have to add properties in
a release that represents something we mean to remove but that's not
ready to go away just yet.
Those properties are now considered in the changelog, but marked as
deprecated.
Closes gh-47759
Introduce NullMarkedExtension for ArchitectureCheck, which provides
functionality to configure packages to ignore in nullability checks and
to enable or disable the extension.
See gh-47596
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
This commit shades the use of 'com.vaadin.external.google:android-json'
in the three modules that use it. The configuration processor already
did that and this commit does the same for configuration-metadata and
the CLI.
As a result of this commit, 'android-json' is not used nor managed
internally.
Closes gh-45504
This commit removes OptionalParameter in favor of the nullness support
introduced in Spring Framework 7. The parameter of an action can now
be flagged as optional using JSpecify's @Nullable, and simplifies the
setup for those who are using JSpecify as only a single annotation is
required.
Closes gh-45390
Remove `@Nullable` support for optional endpoint method parameters in
favor of only supporting `@OptionalParameter`. The annotation processor
now also only supports `@OptionalParameter` detection.
Closes gh-47136
Spring Boot 4 requires Jakarta EE 11. Jersey 4 will support EE 11 but
its release schedule is uncertain. Furthermore, Jersey does not yet
support Jackson 3 and there's no clear timeline for when Jackson 3
will be supported.
In light of the above, this commit removes support for Jersey.
Reinstating support can be considered once there's a Jersey GA that
supports Jakarta EE 11 or its clear that one will be available in
time for Boot's GA in November. Ideally, support for Jackson 3 would
also be available before reinstating Jersey support.
Closes gh-47017
Spring Framework 7.0 requires a Servlet 6.1 baseline for Servlet containers.
Partial Servlet 6.1 support is available on the `main` Undertow branch,
but there isn't any milestone version available for the undertow 2.4
generation. At this stage of our 4.0 schedule, we think it's safer to drop
Undertow support now.
Closes: gh-46917