Commit Graph

38187 Commits (62f40f2c38a77ec1087a2724728a2aa6493b3be5)
 

Author SHA1 Message Date
Andy Wilkinson 62f40f2c38 Apply initializers and bean registrations before registering classes
Previously, classes were registered first which meant that their
conditions were evaluated before any initializers and bean
registrations were applied. This prevented the bean registrations and
initializers from affecting the outcome of the condition evaluation.

This commit inverts the ordering so that classes are not registerd,
and therefore their conditions are not evaluated, until after the
bean registrations and initializers have been applied.

Closes gh-31280
2 years ago
Stephane Nicoll e30391ca7a Use Application as target for generated code
Closes gh-31274
2 years ago
Andy Wilkinson ab93bc26c7 Merge branch '2.7.x'
Closes gh-31271
2 years ago
Andy Wilkinson a0fee42740 Merge branch '2.6.x' into 2.7.x
Closes gh-31270
2 years ago
Andy Wilkinson 4c23d2c45b Merge pull request #31267 from vpavic
* gh-31267:
  Polish "Update smoke tests to avoid conflicts with NAME environment variable"
  Update smoke tests to avoid conflicts with NAME environment variable

Closes gh-31267
2 years ago
Andy Wilkinson 0834dc5b01 Polish "Update smoke tests to avoid conflicts with NAME environment variable"
See gh-31267
2 years ago
Vedran Pavic 95e0d6c0f7 Update smoke tests to avoid conflicts with NAME environment variable
This commit updates several smoke tests in order to avoid conflicts
with NAME environment variable that is present in WSL and causes
project build to fail. Previous attempt to fix this in 7da42d71 was
incomplete.

See gh-31267
2 years ago
Stephane Nicoll 8413002bcb Polish
See gh-31247
2 years ago
Andy Wilkinson 869bb91c80 Polish 2 years ago
Stephane Nicoll ac16432fad Add AOT support for immutable ConfigurationProperties bean definitions
This commit introduces a dedicated AotProcessors for immutable
configuration properties beans as their bean definition use an
instance supplier that needs special handling. If such a bean definition
is detected, dedicated code is generated that replicates the behavior
of the instance supplier.

Closes gh-31247
2 years ago
Brian Clozel 3f0c14187a Register runtime hints for @ConfigurationProperties
Prior to this commit, the `@ConfigurationProperties` annotation would
not be registered for reflection hints: this means it could be missing
at runtime in a native image and would not be registered for JDK
proxying - this can fail the synthesized annotation resolution.

This commit ensures that hints are registered for this annotation if
configuration properties are declared in the bean factory.

Fixes gh-31227
2 years ago
Stephane Nicoll e2c42e4bbf Merge branch '2.7.x'
Closes gh-31262
2 years ago
Stephane Nicoll 8e550933a8 Merge branch '2.6.x' into 2.7.x
Closes gh-31261
2 years ago
Stephane Nicoll bbb5966bca Upgrade integration tests to Apache Maven 3.8.5
Closes gh-31260
2 years ago
Stephane Nicoll 1c94f835c7 Copy AOT-generated classes
Closes gh-31245
2 years ago
Andy Wilkinson 11cbb2549e Merge branch '2.7.x'
Closes gh-31256
2 years ago
Andy Wilkinson c379456722 Remove dependency management for spring-ldap-ldif-batch
The spring-ldap-ldif-batch module was removed in Spring LDAP 2.4.0 in
favor of the equivalent code that already exists in Spring Batch.
This commit aligns Boot's dependency management with this removal.

Closes gh-31254
2 years ago
Stephane Nicoll c996e4335a Fix singleton handling of ConfigurationProperties hints
Closes gh-31248
2 years ago
Stephane Nicoll cf19c176f6 Adapt test to change in Spring Framework snapshots 2 years ago
Stephane Nicoll 2a405c94a8 Add missing test
Closes gh-31249
2 years ago
Stephane Nicoll fb439b6824 Permit AOT-generated code to run on the JVM as well
This commit updates the codebase so that AOT-generated code can run on
the JVM in an opt-in fashion alongside the existing support of native
images.

When optimizations have been generated, setting the "spring.aot.enabled"
spring property (JVM or spring.properties) allows to opt-in for that
behavior on the JVM.

Closes gh-31244
2 years ago
Stephane Nicoll 0dbcb5f6d3 Start building against Spring Framework 6.0.0-M5 snapshots
See gh-31241
2 years ago
Phillip Webb 13fba65638 Polish 2 years ago
Phillip Webb 6d80723598 Relocate AotProcessingHook
Relocate `AotProcessingHook` to be an static class of `AotProcessor`.
3 years ago
Stephane Nicoll 6e9ea85835 Adapt BasePackages bean definition for AOT processing
This commit adapts how the BasePackages bean is registered so that
AOT processing works with it out-of-the-box. Previously we were using
an instance supplier with the accumulated base packages. This commit
changes that to set a constructor argument values.

Closes gh-31223
3 years ago
Andy Wilkinson 4385926df1 Ensure that the main application class can be deduced
Closes gh-31222
3 years ago
Andy Wilkinson 5f54289e97 Allow WebApplicationType to be deduced in a native image
Closes gh-31217
3 years ago
Stephane Nicoll 44a8e91b9e Prevent main method to continue once the AOT context has been optimized
This commit makes sure that processing of the main method upon
completion of SpringApplication#run. Previously, any instructions in
the user's main method were invoked, which is not suitable to build-time
processing.

Closes gh-31219
3 years ago
Andy Wilkinson d044eaf69d Merge branch '2.7.x'
Closes gh-31221
3 years ago
Andy Wilkinson 7f291f8da0 Merge branch '2.6.x' into 2.7.x
Closes gh-31220
3 years ago
Andy Wilkinson 348662b15e Remove unused deduceFromApplicationContext and supporting code
Closes gh-31218
3 years ago
Andy Wilkinson 1ba1eff63a Merge branch '2.7.x' 3 years ago
Andy Wilkinson 430040415b Merge branch '2.6.x' into 2.7.x 3 years ago
Andy Wilkinson 0b6c147a87 Polish 3 years ago
Andy Wilkinson 12465ea6b7 Merge branch '2.7.x'
Closes gh-31214
3 years ago
Andy Wilkinson d1420b6abb Merge branch '2.6.x' into 2.7.x
Closes gh-31213
3 years ago
Andy Wilkinson da8dafe138 Make afterResolve hook used by bootJar and bootWar more robust
Previously, ResolvedDependencies used hasError on
ResolvedConfiguration to check that it was safe to work with all
of the resolved configuration's artifacts and their files. This
check is not sufficient as errors can still occur later on.

This commit updates ResolvedDependencies to use a lenient
configuration, thereby avoiding any problems that may be caused by
errors that occur after the hasError check.

Closes gh-30586
3 years ago
Andy Wilkinson 85ad4fd4b4 Merge branch '2.7.x'
Closes gh-31212
3 years ago
Andy Wilkinson 70bcade232 Merge branch '2.6.x' into 2.7.x
Closes gh-31211
3 years ago
Andy Wilkinson 419ac26e0d Use conventions for source and encoding of aggregatedJavadoc
Closes gh-31210
3 years ago
Stephane Nicoll b2e63db57f Merge branch '2.7.x'
Closes gh-31209
3 years ago
Stephane Nicoll dd437c4cf4 Merge branch '2.6.x' into 2.7.x
Closes gh-31208
3 years ago
Stephane Nicoll 51893c4bba Merge pull request #31197 from 1993heqiang
* pr/31197:
  Upgrade copyright year of changed files
  Polish "Remove boxing"

Closes gh-31197
3 years ago
Stephane Nicoll ad1214c972 Upgrade copyright year of changed files
See gh-31197
3 years ago
heqiang 3a0ab01066 Polish "Remove boxing"
See gh-31197
3 years ago
Stephane Nicoll a27427b977 Merge branch '2.7.x'
Closes gh-31207
3 years ago
Stephane Nicoll 95dad34482 Merge branch '2.6.x' into 2.7.x
Closes gh-31206
3 years ago
Stephane Nicoll 35fb4f4bd3 Merge pull request #31203 from matei-cernaianu
* pr/31203:
  Fix "spring.factories" typos in database initialization documentation

Closes gh-31203
3 years ago
Matei Cernăianu eb8b9e17c5 Fix "spring.factories" typos in database initialization documentation
See gh-31203
3 years ago
Andy Wilkinson d354c03e63 Merge branch '2.7.x'
Closes gh-31191
3 years ago