Sébastien Deleuze
3002779195
Remove LogbackConfigurationAotContribution from native image
...
Remove `LogbackConfigurationAotContribution` from the reachable
code path from a native image POV.
See gh-32793
2022-10-19 23:49:34 -07:00
Madhura Bhave
cedd553b83
Remove error page security filter
...
Spring Security now re-applies the authorization rules
to the error page by default. Additionally, it configures
RequestAttributeSecurityContextRepository as the default for
stateless applications allowing those applications to have access
to the original authentication during an error dispatch.
Closes gh-31703
2022-10-19 11:46:27 -07:00
Andy Wilkinson
e6c69061b5
Upgrade to Jackson 2.14.0-rc2
...
Closes gh-32771
2022-10-19 11:47:40 +01:00
Andy Wilkinson
391e2f7a26
Make META-INF/spring/logback-pattern-rules repeatable
...
See gh-32756
2022-10-19 10:04:49 +01:00
Andy Wilkinson
a87aca2744
Merge branch '2.7.x'
...
Closes gh-32782
2022-10-19 10:02:56 +01:00
Andy Wilkinson
a19e394ebb
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32781
2022-10-19 10:00:48 +01:00
Henning Poettker
4ed072a06b
Upgrade MySQL Connector/J and use new Maven identifiers
...
See gh-32747
2022-10-19 09:58:32 +01:00
Phillip Webb
8dadf86f93
Merge branch '2.7.x'
...
Closes gh-32778
2022-10-18 17:15:03 -07:00
Phillip Webb
fcaac2b343
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32777
2022-10-18 17:14:48 -07:00
Phillip Webb
2c7114fa17
Polish 'Use exclamation character for the document separator prefix'
...
See gh-32521
2022-10-18 17:08:21 -07:00
Guirong Hu
33e379c4a2
Use exclamation character for the document separator prefix
...
See gh-32521
2022-10-18 17:07:51 -07:00
Scott Frederick
76c7263eff
Provide default groupId for AOT processing
...
Framework requires the `groupId` passed to the AOT processing
to be non-empty, so a default should be used if the build
system does not provide a value.
See gh-32696
2022-10-18 16:39:17 -05:00
Andy Wilkinson
4a76fbf93c
Support logback.xml in a native image
...
Closes gh-32756
2022-10-18 21:37:28 +01:00
Andy Wilkinson
7bae02be2d
Adapt to breaking changes to AotProcessor settings
...
See gh-32696
2022-10-18 17:42:00 +01:00
Moritz Halbritter
8cd9f49fad
Add runtime hints for ConfigDataProperties
...
Closes gh-32608
2022-10-18 14:31:39 +02:00
Andy Wilkinson
93436f29dd
Correct assertion in test for member with private constructor
...
See gh-32639
2022-10-18 10:05:09 +01:00
Phillip Webb
a34b1d3c6e
Don't detect private constructors on member classes for binding
...
Refine constructor binding detection logic so that `private`
constructors on member classes are no longer automatically picked for
constructor binding. This provides users a way of signalling that
they wish to use the constructor directly.
Closes gh-32639
2022-10-18 00:59:46 -07:00
Phillip Webb
e3df6c5b6f
Move @ConstructorBinding annotation and support add default support
...
Relocate `@ConstructorBinding` from the `boot.context.properties`
package to `boot.context.properties.bind` and update the
`DefaultBindConstructorProvider` to support it.
Closes gh-32660
2022-10-18 00:59:45 -07:00
Moritz Halbritter
db248b80bb
Add info log message if AOT mode is enabled
...
Closes gh-32396
2022-10-18 09:40:05 +02:00
Moritz Halbritter
99765e785f
Revert "Add info log message if AOT mode is enabled"
...
This reverts commit 6cb7fb5897
.
2022-10-18 09:05:57 +02:00
Moritz Halbritter
6cb7fb5897
Add info log message if AOT mode is enabled
...
Closes gh-32396
2022-10-17 15:29:38 +02:00
Phillip Webb
cec090c32e
Polish 'Resolve URLs using Log4J2 mechanisms'
...
See gh-32735
2022-10-14 10:13:33 -07:00
Ralph Goers
5286785127
Resolve URLs using Log4j2 mechanisms
...
Update `Log4J2LoggingSystem` to that non file URLs are resolved using
Log4j2's `UrlConnectionFactory` mechanism rather than directly.
See gh-32735
2022-10-14 10:13:30 -07:00
Phillip Webb
5a7964af2b
Polish 'Support profile specific Log4j2 configuration'
...
See gh-32734
2022-10-14 10:12:31 -07:00
Ralph Goers
27ed30fdbf
Support profile specific Log4j2 configuration
...
Add a `SpringProfileArbiter` Log4j2 plugin which allows Log4j2
configuration to be included or skipped based on the active Spring
`Environment` profiles.
See gh-32734
2022-10-14 10:12:27 -07:00
Phillip Webb
ed424d3adb
Polish 'Add Log4J2 PropertySource backed by the Spring Environment'
...
See gh-32733
2022-10-14 10:11:25 -07:00
Ralph Goers
4f8a9441c2
Add Log4J2 PropertySource backed by the Spring Environment
...
Register a new `PropertySource` when initializing Log4j2 so that
properties may be resolved against Spring's Environment.
See gh-32733
2022-10-14 10:11:21 -07:00
Phillip Webb
71f5857363
Polish 'Support Log4J2 string lookups from the Spring Environment'
...
See gh-32732
2022-10-14 10:10:23 -07:00
Ralph Goers
5228b99b22
Support Log4J2 string lookups from the Spring Environment
...
Add a Log4j2 `SpringLookup` plugin which can be used to resolve strings
from the Spring Environment.
See gh-32732
2022-10-14 10:10:17 -07:00
Phillip Webb
d665441ca9
Polish 'Add Spring Environment to LoggerContext'
...
See gh-32731
2022-10-14 10:09:02 -07:00
Ralph Goers
05a2bd4585
Add Spring Environment to LoggerContext
...
Update `Log4J2LoggingSystem` to add the Spring `Environment` to Log4j2's
`LoggerContext`. This allow Log4j2 plugins to access the `Environment`
if they need it.
See gh-32731
2022-10-14 10:08:48 -07:00
Phillip Webb
a08a6378f0
Polish 'Support 'log4j.configurationFile' system property'
...
See gh-32730
2022-10-14 10:06:01 -07:00
Ralph Goers
64eb36b7a1
Support 'log4j.configurationFile' system property
...
Update `Log4J2LoggingSystem.getStandardConfigLocations()` so that
any configured 'log4j.configurationFile' system property is also
included as a location.
See gh-32730
2022-10-14 10:05:44 -07:00
Scott Frederick
fc93e6bf8b
Adapt to changes in Spring Framework snapshots
...
See gh-32696
2022-10-13 15:04:05 -05:00
Scott Frederick
a15c5e2498
Merge branch '2.7.x'
2022-10-12 13:47:26 -05:00
Scott Frederick
6c1103cde0
Support PEM formatted elliptic-curve TLS keys
...
Apply the changes from e0c79ce598
to the `PrivateKeyParser` used for web server SSL configuration.
See gh-32646
2022-10-12 13:25:58 -05:00
Sébastien Deleuze
5b17cacb1f
Remove spring.xml.ignore flag usages
...
This commit is a follow-up of spring-projects/spring-framework#29277 .
See gh-32653
2022-10-12 13:27:29 +01:00
Andy Wilkinson
3ab4606584
Make runScripts method of DB initializer more extensible
...
Closes gh-29137
2022-10-12 11:52:38 +01:00
Andy Wilkinson
d351086a06
Adapt to breaking changes to AOT processing entry points
...
See gh-32550
2022-10-10 22:02:25 +01:00
Andy Wilkinson
f2f4a4a40e
Space out smart lifecycle phases used for graceful shutdown
...
Previously, the web server was stopped in the last smart lifecycle
phase with graceful shutdown having begun in the previous phase.
This lack of space between the two phases and after the stop phase
made it hard to for other smart lifecycles to be part of the
graceful shutdown process.
This commit moves stop to 1024 phases before the final phase and
graceful shutdown a further 1024 phases before that, allowing
other smart lifecycles to run between graceful shutdown and stop
and also after stop.
Closes gh-31714
2022-10-06 13:11:29 +01:00
Stephane Nicoll
4ffc421b3c
Adapt to Spring Framework API change
2022-10-06 09:58:05 +02:00
Stephane Nicoll
e94a1f7988
Replace outcome of JsonMixins scanning in AOT optimized contexts
...
This commit adds an AOT contribution that replaces the scanning of
@JsonMixin by a mapping in generated code. This makes sure that such
components are found in a native image.
Closes gh-32567
2022-10-05 15:55:33 +02:00
Phillip Webb
e0b67889a8
Use Stream.toList instead of Stream.collect when possible
...
Update code to make use of `Stream.toList()` whenever possible.
Closes gh-28177
2022-10-04 00:29:22 -07:00
Johnny Lim
d6cfcd0825
Fix compile errors
...
Closes gh-32569
2022-10-02 18:38:28 +02:00
Phillip Webb
2c39345794
Merge branch '2.7.x'
2022-09-30 21:18:20 -07:00
Phillip Webb
0e98a577fe
Merge branch '2.6.x' into 2.7.x
2022-09-30 21:18:09 -07:00
Phillip Webb
75f4d9e3fd
Fix empty @DefaultValue annotation test failures on Java 17
...
See gh-32559
2022-09-30 21:16:48 -07:00
Phillip Webb
bf96816654
Merge branch '2.7.x'
...
Closes gh-32564
2022-09-30 20:16:53 -07:00
Phillip Webb
1eb0dd5e39
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32563
2022-09-30 20:16:36 -07:00
Phillip Webb
efc431bdc4
Support empty @DefaultValue annotations on aggregates and optional
...
Update `ValueObjectBinder` to allow an empty `@DefaultValue` to be
used on map, collection, arrays and optional types.
Closes gh-32559
2022-09-30 18:21:54 -07:00
Scott Frederick
d25a99692f
Replace Spring Boot TestCompiler with Spring Framework's version
...
See gh-31266
2022-09-30 15:58:11 -05:00
Phillip Webb
8b2fd6a05a
Fix formatting
2022-09-30 12:00:14 -07:00
Phillip Webb
63f6d872e0
Test addAotGeneratedInitializerIfNecessary logic
...
Closes gh-32555
2022-09-30 11:24:04 -07:00
Stephane Nicoll
e2dd0ef9a4
Adapt AotProcessor to changes in Spring Framework
...
Closes gh-32560
2022-09-30 16:47:03 +02:00
Andy Wilkinson
51df7813a5
Remove code deprecated in 2.x and add since and forRemoval attributes
...
Closes gh-32548
Closes gh-32549
2022-09-30 14:39:05 +01:00
Stephane Nicoll
f0e40bb00d
Avoid NoSuchMethodError by assigning ApplicationContextInitializer
...
See gh-32555
2022-09-30 10:54:35 +02:00
Phillip Webb
7a5b61fd19
Replace AotApplicationContextInitializer with Framework version
2022-09-29 16:37:26 -07:00
Brian Clozel
a0735eb3fb
Migrate remaining usage of httpclient API
...
This commit migrates our remaining usage of the httpclient 4.x to use
instead httpclient5, now that the 4.x support has been removed in
`RestTemplate`.
Closes gh-32461
2022-09-29 18:55:42 +02:00
Brian Clozel
3ac034e18a
Fail when setReadTimeout on httpclient5 request factory
...
Prior to this commit, the `RestTemplateBuilder` would offer a generic
`setReadTimeout` method to configure the read timeout on the underlying
`ClientHttpRequestFactory`. This would be done in a reflective fashion,
considering that all implementations align with this behavior.
This option cannot be provided for HttpClient5 at the
`ClientHttpRequestFactory` level anymore, so this has been deprecated
in Spring Framework 6.0 and will log a warning. In order to align with
our existing behavior (throwing exceptions if the option cannot be set),
this commit ensures that exceptions are also thrown if the method is
marked as deprecated.
See gh-32461
2022-09-29 18:55:41 +02:00
Brian Clozel
58f3054624
Adapt RestTemplate factory auto-detection
...
This commit adapts the auto-detection of `ClientHttpRequestFactory` to
look for an httpclient5 class.
See gh-32461
2022-09-29 18:55:41 +02:00
Brian Clozel
5fb2a50ad0
Adapt build dependencies to httpclient5
...
As htttpclient 4.x is not supported anymore by `RestTemplate`, this
commit changes such dependencies to httpclient5 instead. In some cases,
the httpclient 4.x was transitively brought by a non-Spring dependency.
See gh-32461
2022-09-29 18:55:41 +02:00
Stephane Nicoll
3702c71fc1
Adapt to Spring AOT changes
2022-09-29 18:55:41 +02:00
Andy Wilkinson
17953eeb33
Merge branch '2.7.x'
...
Closes gh-32544
2022-09-29 11:41:15 +01:00
Andy Wilkinson
3ef633b096
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32543
2022-09-29 11:39:42 +01:00
Andy Wilkinson
84a25c7dcf
Configure Log4j2 classpath overrides consistently
...
Closes gh-32537
2022-09-29 11:25:21 +01:00
Andy Wilkinson
0bfa9cd704
Upgrade to Logback 1.4 and SLF4J 2.0
...
Closes gh-12649
2022-09-28 21:14:08 +01:00
Brian Clozel
bf5bd4f91c
Upgrade to SnakeYAML 1.33
...
Closes gh-32522
2022-09-27 14:51:04 +02:00
Stephane Nicoll
f6f545dbf1
Merge branch '2.7.x'
...
Closes gh-32510
2022-09-27 08:28:40 +02:00
Stephane Nicoll
33680e5acc
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32509
2022-09-27 08:28:15 +02:00
Stephane Nicoll
0457536d72
Polish "Avoid using JUnit 4 assertions"
...
See gh-32504
2022-09-27 08:24:03 +02:00
dreis2211
cee353fba6
Avoid using JUnit 4 assertions
...
See gh-32504
2022-09-27 08:11:47 +02:00
Johnny Lim
7f36fb155d
Polish JavaVersionTests.currentJavaVersionNineteen()
...
See gh-32489
2022-09-23 17:25:12 +02:00
Andy Wilkinson
26eff5ae7a
Publish ApplicationPreparedEvent before AOT processing abandons run
2022-09-23 12:02:25 +01:00
Scott Frederick
08022ba86e
Remove support for locating imports using spring.factories
...
With this commit, loading `@AutoConfiguration`,
`@ImportAutoConfiguration`, and `@ManagementContextConfiguration`
classes is supported with `.imports` files only. Support for loading
these classes with `spring.factories` is removed.
Closes gh-29699
2022-09-21 17:34:51 -05:00
Andy Wilkinson
6b8575b001
Fix constructor binding to Kotlin data class with default values
...
Closes gh-32416
2022-09-21 21:35:47 +01:00
Andy Wilkinson
52522b87f0
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32393
2022-09-15 11:57:28 +01:00
Andy Wilkinson
77f428498f
Compile against SnakeYAML 1.32 and test against older versions
...
Closes gh-32392
2022-09-15 11:55:44 +01:00
Phillip Webb
4d037c3003
Update SpringBootContextLoader to support AOT
...
Update `SpringBootContextLoader` so that it now implements the
`AotContextLoader` interface. The `ContextLoaderHook` will abandon
at `contextLoaded` if the test class is being AOT processed.
This commit also introduces a new `AotApplicationContextInitializer`
which allows us to plug-in an alternative AOT application context
listener when the `SpringApplication` is running in test mode.
Closes gh-31965
2022-09-14 22:37:47 -07:00
Phillip Webb
d3957dfa3e
Provide a public API for SpringApplication hooks
...
Create a new public SpringApplication Hook API based on the existing
`SpringApplicationRunListener` interface.
The previous package-private `SpringApplicationHooks` class has been
replaced with a public `SpringApplicationHook` interface which acts as
a factory that can create additional `SpringApplicationRunListener`
instances to hook in.
The boolean result from the previous `preRefresh` method has been
replaced with an `AbandonedRunException` which can be thrown from
the `SpringApplicationRunListener`.
Closes gh-32301
2022-09-14 22:34:50 -07:00
Phillip Webb
88913b11ce
Allow additional listeners registration in early events
...
Update `EventPublishingRunListener` so that event listeners may add
additional listeners to the `SpringApplication` during early events.
Prior to this commit, the listeners were collected only once which
meant that if a listener for an `ApplicationStartingEvent` called
`application.addListener(...)`, it would be ignored.
Closes gh-32300
2022-09-14 22:34:39 -07:00
Phillip Webb
6955ed9dcf
Make EventPublishingRunListener package private
...
Closes gh-32299
2022-09-14 13:50:27 -07:00
Stephane Nicoll
6fb70d143d
Map R2DBC Pool 'minIdle' property
...
Closes gh-32332
2022-09-14 13:56:44 +02:00
Stephane Nicoll
d4a88041dc
Upgrade to R2DBC Bom Borca-SR2
...
Closes gh-32328
2022-09-14 11:01:19 +02:00
Andy Wilkinson
421943f3cf
Add reflection hints for retrieving Undertow's ports
...
Closes gh-32303
2022-09-13 12:13:06 +01:00
Johnny Lim
4cbabc40b3
Polish MimeMappings changes
...
See gh-32298
2022-09-12 17:59:06 +02:00
Stephane Nicoll
26cec61f32
Adapt to API change in Spring Framework
...
See https://github.com/spring-projects/spring-framework/issues/29135
2022-09-12 15:39:03 +02:00
Andy Wilkinson
aafceb3868
Merge branch '2.7.x'
...
Closes gh-32285
2022-09-09 16:47:06 +01:00
Andy Wilkinson
f17df7bf30
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32284
2022-09-09 16:46:43 +01:00
Andy Wilkinson
23c2f73b3f
Update tests to allow them to run on Java 19
...
Closes gh-32280
2022-09-09 16:46:14 +01:00
Phillip Webb
46be4a3f30
Merge branch '2.7.x'
2022-09-08 19:38:18 -07:00
Phillip Webb
e88a682220
Merge branch '2.6.x' into 2.7.x
2022-09-08 19:37:52 -07:00
Phillip Webb
85697ac482
Update copyright year of changed files
2022-09-08 19:36:59 -07:00
Phillip Webb
127d320636
Refactor code to work around Eclipse compiler bug
...
Refactor code to work around the Eclipse compiler bug reported at
https://github.com/eclipse-jdt/eclipse.jdt.core/issues/378
Closes gh-32264
2022-09-08 19:10:30 -07:00
Andy Wilkinson
e112657e1a
Merge branch '2.7.x'
...
Closes gh-32261
2022-09-08 15:30:01 +01:00
Andy Wilkinson
020e6dd3f1
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32260
2022-09-08 15:28:08 +01:00
Andy Wilkinson
280ce6390a
Add NINETEEN to JavaVersion enum
...
Closes gh-32226
2022-09-08 15:25:34 +01:00
Johnny Lim
2273191c03
Polish
...
See gh-32215
2022-09-07 08:48:08 +02:00
Stephane Nicoll
cfdceba687
Merge branch '2.7.x'
...
Closes gh-32245
2022-09-07 08:45:29 +02:00
Stephane Nicoll
9ef067d589
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32244
2022-09-07 08:45:19 +02:00
valentine-dev
89e19ddab9
Support lower-case input in PeriodStyle
...
See gh-32235
2022-09-07 08:40:16 +02:00
Stephane Nicoll
e5d0e34268
Adapt to recent changes in Spring Framework
...
See https://github.com/spring-projects/spring-framework/issues/29082
See https://github.com/spring-projects/spring-framework/issues/28877
2022-09-05 18:23:05 +02:00
Andy Wilkinson
2dd2ca8f08
Merge branch '2.7.x'
...
Closes gh-32232
2022-09-05 15:42:43 +01:00
Andy Wilkinson
2003cfdd43
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32231
2022-09-05 15:42:28 +01:00
Andy Wilkinson
bc23e70024
Polish "Support lower-case input in DurationStyle"
...
See gh-32223
2022-09-05 14:53:50 +01:00
valentine-dev
c579c9378b
Support lower-case input in DurationStyle
...
See gh-32223
2022-09-05 14:53:29 +01:00
Brian Clozel
0789dd0eb1
Upgrade to SnakeYaml 1.31
...
Closes gh-32221
2022-09-05 14:30:36 +02:00
Brian Clozel
cca5ee8a89
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32229
2022-09-05 14:24:06 +02:00
Brian Clozel
724f9ebf71
Support SnakeYaml 1.31
...
This commit keeps the managed dependency for SnakeYaml at 1.29 but
enables forward compatibility for SnakeYaml 1.31.
Closes gh-32228
2022-09-05 14:22:24 +02:00
Andy Wilkinson
d6e9a03136
Adapt to synthesized annotation changes in Framework
2022-09-02 17:01:51 +01:00
Phillip Webb
44f1949c5e
Polish hint API calls
2022-09-01 19:43:43 -07:00
Sébastien Deleuze
138c55ee11
Refine ConfigurationPropertiesReflectionHintsProcessor
...
This commit refines ConfigurationPropertiesReflectionHintsProcessor
Java bean properties handling in order to register reflection hints
only for getters and setters, not for all methods.
It avoids including unconditionally method like SpringApplication#load
which in turn avoids shipping BeanDefinitionLoader and related transitively
used classes in the native image.
The gain is significant: it allows to remove up to 700 classes
(when no XML parser is used elsewhere) and to reduce the memory footprint
by 2M of RSS.
Closes gh-32186
2022-09-01 17:34:22 +02:00
Andy Wilkinson
49d3bf1d7f
Remove AnsiColors following removal of image banner support
...
Closes gh-32209
2022-09-01 14:40:24 +01:00
Phillip Webb
973e23dc5e
Adapt to upstream Spring Framework changes
2022-08-25 12:12:42 -07:00
Phillip Webb
41c1d9f5c9
Polish
2022-08-25 12:12:38 -07:00
Scott Frederick
ada2450483
Reinstate testing for NoSuchMethodFailureAnalyzer parsing on OpenJ9
...
Closes gh-28785
2022-08-24 15:27:23 -05:00
Stephane Nicoll
bb7829791a
Adapt to recent changes in RuntimeHints API
...
See gh-https://github.com/spring-projects/spring-framework/issues/29011
2022-08-24 19:58:29 +02:00
Moritz Halbritter
1db2ad08fa
Add classpath checks for runtime hints
...
This suppresses native-image warnings.
2022-08-24 08:42:33 +02:00
Phillip Webb
6e1b28e6a2
Relocate MimeMapping Tomcat comparison test
...
See gh-32101
2022-08-23 18:05:39 -07:00
Phillip Webb
dd98b88732
Fix 'Align MimeMappings with Tomcat's defaults'
...
Update COMMON_MAPPINGS to align with the properties file and change
the test so that it consistently works.
See gh-32101
2022-08-23 16:38:31 -07:00
Phillip Webb
86f38e15f0
Polish 'Align MimeMappings with Tomcat's defaults'
...
Refine `MimeMappings` so that common default mappings are included
by default and the complete set is only loaded when needed.
The `TomcatServletWebServerFactory` has been updated so that if
`TomcatEmbeddedContext` is in use the mime mapping are used
directly rather than being copied to another Map.
The `AbstractServletWebServerFactory` class has also been changed
to use a lazy copy of the mappings. This should mean that the
complete set of properties is only loaded if the user mutates
the mappings.
See gh-32101
2022-08-23 11:37:16 -07:00
Guirong Hu
7728ae4e00
Align MimeMappings with Tomcat's defaults
...
Update `MimeMappings` to align with the default values used in
Tomcat. The mime mapping are now loaded from a properties file
and a test has been added to ensure that they remain in sync
with Tomcat's defaults.
See gh-32101
2022-08-23 10:15:41 -07:00
Stephane Nicoll
e3ddb54cb8
Adapt JPA auto-configuration to PersistenceManagedTypes
...
This commit exposes a PersistenceManagedTypes bean with the entities
to consider in a typical auto-configuration scenario. This allows the
result of the scanning to be optimized AOT, if necessary.
Closes gh-32119
2022-08-19 16:17:44 +02:00
Stephane Nicoll
c41609d01d
Polish
2022-08-18 09:44:55 +02:00
Marten Deinum
3b410719e6
Remove use of reflection in MustacheViewResolver
...
Prior to this commit the MustacheViewResolver used reflection
to instantiate a MustacheView class, which fails when using AOT.
Creating the view without reflection (analogous to the
FreemarkerViewResolver) will fix this without the need for additional
constructor hints.
See gh-32030
2022-08-17 08:00:43 +02:00
Stephane Nicoll
888ccfea2d
Adapt to changes in Spring Framework
2022-08-16 16:02:00 +02:00
Phillip Webb
bb75f04ce6
Merge branch '2.7.x'
...
Closes gh-32032
2022-08-09 10:24:18 +01:00
Phillip Webb
9e1a69efc9
Merge branch '2.6.x' into 2.7.x
...
Closes gh-32031
2022-08-09 10:23:25 +01:00
Phillip Webb
2f85ea3a30
Protect against deeply nested maps
...
Update BasicJsonParser to fix the deeply nested map protection logic.
Fixes gh-32029
2022-08-09 10:21:13 +01:00
Andy Wilkinson
ba93e6c0ed
Restore support for Jersey
...
Closes gh-28637
2022-08-08 15:45:20 +01:00
Stephane Nicoll
1af5994d8f
Adapt to API change in Spring Framework
...
See https://github.com/spring-projects/spring-framework/issues/28927
2022-08-05 10:39:36 +02:00
Phillip Webb
dd87cf47a4
Revert SpringBootContextLoader and ErrorPageFilterIntegrationTests changes"
...
Spring Framework has change the signature so we no longer need the updates.
2022-08-03 15:43:57 +01:00
Andy Wilkinson
2f0dfc341c
Merge branch '2.7.x'
...
Closes gh-31972
2022-08-03 15:20:34 +01:00
Andy Wilkinson
700460c322
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31971
2022-08-03 14:58:07 +01:00
Andy Wilkinson
fa73b73898
Fail build on missing configuration property descriptions
...
Closes gh-31916
2022-08-03 14:45:42 +01:00
Phillip Webb
080ce92ac8
Adapt ErrorPageFilterIntegrationTests to upstream Framework changes
2022-08-03 13:09:19 +01:00
Phillip Webb
db21bafd68
Merge branch '2.7.x'
...
Closes gh-31968
2022-08-03 12:35:02 +01:00
Phillip Webb
cfde1878dd
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31967
2022-08-03 12:34:52 +01:00
Phillip Webb
d540eefce0
Set running to false when stop method is called
...
Update `WebServerStartStopLifecycle` to change the `running` state when
the `stop()` method is called.
Fixes gh-31966
2022-08-03 12:34:37 +01:00
Phillip Webb
040ab4da5b
Merge branch '2.7.x'
...
Closes gh-31964
2022-08-03 11:35:33 +01:00
Phillip Webb
c652d3d95b
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31963
2022-08-03 11:34:24 +01:00
Phillip Webb
45ad1557c3
Perform LoggingSystem cleanup after web server shutdown
...
Update `LoggingApplicationListener` so that logging system cleanup is
performed by a `SmartLifecycle` phased after web server shutdown.
Prior to this commit, cleanup occurred on the `ContextClosedEvent` which
was published before Lifecycle beans were stopped. This meant that any
exceptions output during web server shutdown were not logged.
Fixes gh-9457
2022-08-03 11:34:05 +01:00
Stephane Nicoll
c05d0c51b7
Restore constructor binding support with AOT
...
This commit restores the generation of the BindMethod attribute that
is required at runtime to figure out how to bind a particular
configuration properties target.
It also improves the test to use TestCompiler and assert that the
generated contribution restores the proper behavior for both java
bean and value object binding.
Closes gh-31956
2022-08-02 15:08:48 +02:00
Brian Clozel
a8c558a671
Fix build after Spring Framework deprecation
...
See spring-projects/spring-framework#28905
2022-08-02 15:03:13 +02:00
Brian Clozel
09c753d445
Remove duplicate reflection hints for Logback
...
Prior to this commit, the Spring Boot team contributed reflection hints
for the default Logback converters for native image compilation. Now
that some of those hints were contributed to the GraalVM reachability
metadata repository, we can safely remove the duplicates.
Closes gh-31959
2022-08-02 14:39:42 +02:00
Andy Wilkinson
0857cae943
Merge branch '2.7.x'
...
Closes gh-31952
2022-08-01 21:10:36 +01:00
Andy Wilkinson
0dde4278db
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31951
2022-08-01 21:09:37 +01:00
Marc Wrobel
3e0665e791
Fix links in documentations
...
- Fix broken links
- Use HTTPS where possible,
- Remove spring-security-oauth2-docs as it is no longer used
- Remove https://github.com/ThierrySquirrel/rocketmq-spring-boot-starter .
This starter is 404 and https://github.com/rocketmq/rocketmq-spring-boot-starter
hasn't been updated for 4 years.
- Clean up nohttp allowlist.lines.
See gh-31887
2022-08-01 21:07:36 +01:00
Moritz Halbritter
ed1f6ad543
Add native-image support for RestTemplateBuilder
...
Closes gh-31888
2022-08-01 15:18:25 +02:00
Johnny Lim
c9c435cdae
Polish DataSourceBuilder.derivedFrom()
...
Fix duplication accidentally introduced in commit
fa43e1f378
.
See gh-31928
2022-08-01 08:48:40 +01:00
Stephane Nicoll
0e9f8a5994
Merge branch '2.7.x'
...
Closes gh-31922
2022-07-29 14:47:20 +02:00
Stephane Nicoll
4806881716
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31921
2022-07-29 14:35:15 +02:00
Stephane Nicoll
3a5b40645a
Restore support for C3P0
...
Closes gh-31920
2022-07-29 14:07:59 +02:00
Phillip Webb
22144987e9
Update copyright year of changed files
2022-07-29 12:10:03 +01:00
Phillip Webb
e08c16dfd6
Polish
2022-07-29 12:10:02 +01:00
Phillip Webb
c8735c1540
Remove spring.profiles metadata
...
See gh-22523
2022-07-28 10:46:46 +01:00
Phillip Webb
49a8e81dc3
Merge branch '2.7.x'
...
Closes gh-31902
2022-07-28 10:44:57 +01:00
Phillip Webb
5c52882f76
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31901
2022-07-28 10:44:42 +01:00
Phillip Webb
9a2ad6d42d
Remove references to ConfigFileApplicationListener
...
Update documentation and meta-data to remove referenced to the now
deprecated `ConfigFileApplicationListener` class.
Closes gh-31895
2022-07-28 10:43:48 +01:00
Phillip Webb
7b2bacb272
Merge branch '2.7.x'
...
Closes gh-31900
2022-07-28 10:37:15 +01:00
Phillip Webb
220c588996
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31899
2022-07-28 10:37:00 +01:00
Phillip Webb
98627e3d71
Fix spring.beaninfo.ignore SourceType
...
Fixes gh-31898
2022-07-28 10:36:19 +01:00
Phillip Webb
57e967576e
Adapt to upstream Spring Framework AOT changes
2022-07-27 21:44:18 +01:00
Stephane Nicoll
193c1d7acf
Adapt to changes in DefaultGenerationContext
...
See https://github.com/spring-projects/spring-framework/issues/28877
2022-07-26 18:06:46 +02:00
Phillip Webb
d6cce1f441
Merge branch '2.7.x'
2022-07-26 16:14:34 +01:00
Phillip Webb
fcf12686b7
Merge branch '2.6.x' into 2.7.x
2022-07-26 16:14:18 +01:00
Phillip Webb
9329acdad8
Reduce size of 'repeated-open-array.txt' file
...
Attempt to fix CI memory issues.
2022-07-26 16:13:44 +01:00
Phillip Webb
e08aa84892
Merge branch '2.7.x'
2022-07-26 15:53:33 +01:00
Phillip Webb
96fa4cd63c
Merge branch '2.6.x' into 2.7.x
2022-07-26 15:53:17 +01:00
Phillip Webb
da91cde304
Protect against deeply nested JSON maps
...
See gh-31868
2022-07-26 15:52:57 +01:00
Phillip Webb
a7ea5dfeda
Merge branch '2.7.x'
...
Closes gh-31874
2022-07-26 15:52:33 +01:00
Phillip Webb
06805f06af
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31873
2022-07-26 15:52:12 +01:00
Phillip Webb
4132414206
Protect against deeply malformed JSON map keys
...
Fixes gh-31869
2022-07-26 15:47:50 +01:00
Phillip Webb
0b1441f119
Merge branch '2.7.x'
...
Closes gh-31872
2022-07-26 15:38:25 +01:00
Phillip Webb
466724f77a
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31871
2022-07-26 15:37:41 +01:00
Phillip Webb
6966ebd2a3
Protect against deeply nested JSON lists
...
Update `BasicJsonParser` to protect against deeply nested JSON lists
in the same way as Jackson.
Fixes gh-31868
2022-07-26 15:25:38 +01:00
Phillip Webb
7377d85096
Merge branch '2.7.x'
...
Closes gh-31866
2022-07-26 12:18:14 +01:00
Phillip Webb
a4ef6a7c5c
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31865
2022-07-26 12:13:16 +01:00
Phillip Webb
f8412847dc
Update copyright year for "Fix typos in code and documentation"
...
See gh-31734
2022-07-26 12:08:30 +01:00
Marc Wrobel
dbfc6bded4
Fix typos in code and documentation
...
See gh-31734
2022-07-26 12:08:07 +01:00
Stephane Nicoll
a0dd6ef3b1
Revert "Merge pull request #31828 from quaff"
...
This reverts commit 68fc87bc7f
.
See gh-31828
2022-07-25 16:16:51 +02:00
Andy Wilkinson
b9b25644af
Polish "Take MethodType into account to deduce main application class"
...
See gh-31828
2022-07-22 19:39:14 +01:00
Yanming Zhou
10a2471979
Take MethodType into account to deduce main application class
...
See gh-31828
2022-07-22 19:36:30 +01:00
Andy Wilkinson
85c41d6698
Merge branch '2.7.x'
...
Closes gh-31847
2022-07-22 14:48:29 +01:00
Andy Wilkinson
ac3f552dde
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31846
2022-07-22 14:47:45 +01:00
dreis2211
de5834d203
Polish
...
See gh-31845
2022-07-22 14:46:01 +01:00
Moritz Halbritter
35c49afd97
Generate hints for nested generics in configuration properties
...
See gh-31708
2022-07-21 16:32:40 +02:00
Olga Maciaszek-Sharma
57dc274284
Switch to Spring Framework SNAPSHOTs
...
Switch to Spring Framework SNAPSHOTs and adapt to updated APIs.
See gh-31834
2022-07-21 13:42:48 +01:00
Moritz Halbritter
a4e84c26f0
Revert "Fix nested type discovery in ConfigurationPropertiesReflectionHintsProcessor"
...
This reverts commit 785588826e
.
2022-07-20 18:04:13 +02:00
Moritz Halbritter
785588826e
Fix nested type discovery in ConfigurationPropertiesReflectionHintsProcessor
...
The old implementation picked up nested types only if they have been
annotated with NestedConfigurationProperty, which not all nested
properties are. Now the processor takes into account all referenced
types. It ignores only types in the java package and interfaces.
This commit also moves some of the tests from
ConfigurationPropertiesBeanFactoryInitializationAotProcessorTests to
ConfigurationPropertiesReflectionHintsProcessorTests for easier
discoverability
Closes gh-31708
2022-07-20 16:39:28 +02:00
Andy Wilkinson
38fedcff34
Polish "Use StackWalker to deduce main application class"
...
See gh-31701
2022-07-20 14:57:43 +01:00
GGGGGHT
ea3fe95881
Use StackWalker to deduce main application class
...
See gh-31701
2022-07-20 12:37:11 +01:00
Andy Wilkinson
c3f3a2a707
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31810
2022-07-20 11:54:01 +01:00
Andy Wilkinson
efdd844c7a
Log a warning if determining the app's PID takes too long
...
Closes gh-31572
2022-07-20 11:53:12 +01:00
Moritz Halbritter
e35140d54f
Add tests for SpringApplicationRuntimeHints
2022-07-19 16:29:25 +02:00
Moritz Halbritter
750e0aa293
Rename ConfigurationPropertiesReflectionHintsRegistrar
2022-07-19 16:22:08 +02:00
Moritz Halbritter
26741d8044
Register SpringApplication on ReflectionHints for binding
...
Closes gh-31534
2022-07-19 16:07:10 +02:00
Moritz Halbritter
55bb921a37
Extract TypeProcessor into separate class
2022-07-19 16:06:02 +02:00
Stephane Nicoll
51cba6ec72
Polish "Add AOT support for actuator"
...
See gh-31671
2022-07-19 13:02:49 +02:00
Moritz Halbritter
584b7d1343
Add AOT support for actuator
...
Mainly adds reflection hints for the actuator infrastructure.
Also adds the OperationReflectiveProcessor, which registers the
@ReadMethod, @DeleteMethod and @WriteMethod annotated methods for
reflection and adds reflection hints for method return types.
See gh-31671
2022-07-19 13:02:48 +02:00
Phillip Webb
00ec17b418
Fix checkstyle violation
...
See gh-31323
2022-07-19 11:51:44 +01:00
Chris Bono
8c70acc3c3
Add PropertyMapper.to(...) API designed for immutable instances
...
Add a new `to` method on `PropertyMapper` designed to work with
immutable instances. The new method takes an existing instance and
a mapping `BiFunction`.
See gh-31323
Co-authored-by: Phillip Webb <pwebb@vmware.com>
2022-07-19 11:28:17 +01:00
Stephane Nicoll
69050a96d2
Merge branch '2.7.x'
...
Closes gh-31781
2022-07-18 11:49:31 +02:00
Stephane Nicoll
52d4dd9347
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31780
2022-07-18 11:49:22 +02:00
Stephane Nicoll
4eb5037828
Update copyright year of changed files
...
See gh-31571
2022-07-18 11:48:35 +02:00
TheoCaldas
869ed4f71a
Delimit output value in failure analysis
...
See gh-31571
2022-07-18 11:36:39 +02:00
Stephane Nicoll
f52d00d9fa
Merge branch '2.7.x'
...
Closes gh-31779
2022-07-18 11:30:45 +02:00
Stephane Nicoll
92a7af4038
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31777
2022-07-18 11:30:36 +02:00
Johnny Lim
f591c75ad7
Disable incompatible tests on macOS AArch64
...
This commit also updates related test support classes.
See gh-31539
2022-07-18 11:25:52 +02:00
Andy Wilkinson
ccbd62fd82
Merge branch '2.7.x'
...
Closes gh-31733
2022-07-14 15:48:51 +01:00
Andy Wilkinson
b6b4b3b5b6
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31732
2022-07-14 15:39:15 +01:00
Andy Wilkinson
9443713c53
Disable Log4j2's shutdown hook with 2.18 and later
...
Closes gh-31719
2022-07-14 15:38:19 +01:00
Andy Wilkinson
3405a54f9e
Exclude Jetty toolchain dependencies in favor of official API artifacts
...
Closes gh-31720
2022-07-14 13:55:26 +01:00
Andy Wilkinson
88ee31c422
Upgrade to R2DBC 1.0
...
With the 1.0 release of the SPI, R2DBC's bom is no longer published.
This commit updates Spring Boot's dependency management to no longer
use the bom. Tests have also been updated to adapt to slight changes
in R2DBC's configuration options and their default values.
Closes gh-31702
2022-07-13 12:09:56 +01:00
Stephane Nicoll
67b5f42769
Name RuntimeHintsRegistrar implementations consistently
...
Closes gh-31695
2022-07-12 19:50:26 +02:00
Oliver Drotbohm
b10c57551c
Upgrade to Hibernate 6.1.1.Final
...
This commit makes the following potentially breaking changes:
- Dependency management for modules that do not exist in Hibernate
6.1 has been removed.
- Hibernate's modules are now in the org.hibernate.orm group. Users
not using the starter or using modules that are not in the starter
will have to update their build configuration accordingly.
- spring.jpa.hibernate.use-new-id-generator-mappings has been removed
as Hibernate no longer supports switching back to the old ID
generator mappings.
Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
Closes gh-31674
2022-07-12 09:36:34 +01:00
Moritz Halbritter
beb40eaaf6
Reduce visibility for ConfigDataLocationRuntimeHintsRegistrar
2022-07-12 09:22:19 +02:00
Andy Wilkinson
fa43e1f378
Add support for deriving a DataSourceBuilder from a wrapped DataSource
...
Closes gh-31605
2022-07-08 17:24:37 +01:00
Moritz Halbritter
1e33b1a9da
Polish "Add reflection hints for Jackson's basic serializers"
2022-07-08 09:29:34 +02:00
Moritz Halbritter
2dc0936db6
Add reflection hints for Jackson's basic serializers
...
Closes gh-31537
2022-07-07 16:09:25 +02:00
Moritz Halbritter
9e3c557992
Merge branch '2.7.x'
2022-07-07 15:21:12 +02:00
Moritz Halbritter
d4b1c219ab
Move test imports from main to test resources
...
They shouldn't have been in main resources in the first place, this was
an accident.
2022-07-07 15:15:34 +02:00
Moritz Halbritter
8ce3a1e51b
Add resource hints for JavaLoggingSystem
...
See gh-31531
2022-07-07 14:31:17 +02:00
Moritz Halbritter
dc5eee8f48
Polish JavaLoggingSystem
2022-07-07 14:20:13 +02:00
Moritz Halbritter
4921954200
Remove --allow-incomplete-classpath from native-image arguments
...
This parameter is now the default in GraalVM 22.1
Closes gh-31568
2022-07-07 14:01:18 +02:00
Andy Wilkinson
eca9343675
Merge branch '2.7.x'
2022-06-26 08:19:34 +01:00
Andy Wilkinson
2f01739e0d
Polish since date on new SslStoreProvider API
...
See gh-31253
2022-06-26 08:18:21 +01:00
Andy Wilkinson
543d9c6e66
Merge branch '2.7.x'
2022-06-25 13:47:45 +01:00
Andy Wilkinson
71526bf44f
Polish
...
See gh-31253
2022-06-25 13:47:25 +01:00
Andy Wilkinson
a28ca4594b
Merge branch '2.7.x'
...
Closes gh-31529
2022-06-24 18:01:31 +01:00
Andy Wilkinson
7abc7df7b8
Allow PEM certificates to be used without a key store password
...
Closes gh-31253
2022-06-24 18:01:20 +01:00
dreis2211
458f989cf3
Use switch expressions where appropriate
...
See gh-31527
2022-06-24 16:19:28 +01:00
Andy Wilkinson
631b1e0d76
Merge branch '2.7.x'
...
Closes gh-31526
2022-06-24 13:10:10 +01:00
Andy Wilkinson
1e08f545d0
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31525
2022-06-24 13:05:06 +01:00
Andy Wilkinson
f49b16c645
Upgrade to Spring Java Format 0.0.34
...
Closes gh-31524
2022-06-24 12:57:52 +01:00
Stephane Nicoll
fe39598e81
Adapt to latest API change in Spring Framework
...
See https://github.com/spring-projects/spring-framework/issues/28585
2022-06-23 16:30:34 +02:00
Andy Wilkinson
a55560669b
Remove YamlJsonParser
...
Closes gh-31498
2022-06-22 20:20:28 +01:00
Andy Wilkinson
b07d5b0bb1
Merge branch '2.7.x'
...
Closes gh-31500
2022-06-22 19:50:01 +01:00
Andy Wilkinson
268f13dbd7
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31499
2022-06-22 19:49:38 +01:00
Andy Wilkinson
522ea0a90e
Handle malformed JSON more consistently
...
Closes gh-31301
2022-06-22 18:31:16 +01:00
Andy Wilkinson
965fbf4494
Polish "Use java.util.HexFormat where appropriate"
...
See gh-31477
2022-06-21 17:03:26 +01:00
dreis2211
f2101684b7
Use pattern matching for instanceof where appropriate
...
Closes gh-28181
2022-06-20 18:35:32 +01:00
dreis2211
5db04da275
Use pattern matching for instanceof where appropriate
...
See gh-31475
2022-06-20 17:55:36 +01:00
dreis2211
3fcb6765b1
Fix checkstyle violation
...
See gh-31449
2022-06-18 11:06:33 +01:00
Johnny Lim
5d7d0d8047
Use 3.0.0 for Javadoc since tags
...
See gh-31448
2022-06-17 16:48:58 +02:00
Stephane Nicoll
a957efbdc5
Add missing org.yaml.snakeyaml.Yaml reflection hint
...
Closes gh-31441
2022-06-17 15:50:24 +02:00
Phillip Webb
657fa3e64e
Merge branch '2.7.x'
...
Closes gh-31409
2022-06-16 15:36:29 -07:00
Phillip Webb
7c91ebb1b0
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31408
2022-06-16 15:36:00 -07:00
Phillip Webb
ae6311ddda
Prevent Logback from accidentally being used in Log4J2LoggingSystemTests
...
Update `Log4J2LoggingSystemTests` to exclude Logback and include
'log4j-slf4j-impl'. The `ModifiedClassPathClassLoader` has also been
updated so that it no longer automatically excludes `log4j` artifacts,
instead we now use `@ClassPathExclusions` on the relevant tests.
Fixes gh-19365
2022-06-16 15:35:32 -07:00
Andy Wilkinson
4f3180540c
Use Framework's MockSpringFactoriesLoader
...
Closes gh-31406
2022-06-16 15:40:03 +01:00
Stephane Nicoll
d5695c1931
Add resource hints for configuration properties
...
This commits introduces a RuntimeHintsRegistrar for configuration
properties. By default, it provides the necessary hint to load
application properties and yaml files in default locations.
Closes gh-31311
2022-06-15 10:15:27 +02:00
Stephane Nicoll
b536b209ab
Refine assertions on exception messages
2022-06-14 18:20:27 +02:00
Stephane Nicoll
b0f5fb51fc
Adapt to deprecation of NestedServletException
2022-06-14 17:45:31 +02:00
Andy Wilkinson
b1ea82c1e2
Merge branch '2.7.x'
...
Closes gh-31380
2022-06-14 11:17:30 +01:00
Andy Wilkinson
6de4ade0cf
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31379
2022-06-14 11:16:57 +01:00
Andy Wilkinson
5d7cab09b8
Revert BindConverter changes that are now handled by Framework
...
See gh-28592 and spring-projects/spring-framework#28609
Closes gh-31343
2022-06-14 10:37:35 +01:00
Stephane Nicoll
063e56dbff
Polish
2022-06-13 09:44:02 +02:00
Phillip Webb
380776a9b2
Merge branch '2.7.x'
2022-06-10 16:13:50 -07:00
Phillip Webb
7bf82b5349
Merge branch '2.6.x' into 2.7.x
2022-06-10 16:13:35 -07:00
Phillip Webb
63fdd729f5
Refine conversion service type check
...
Update fix to account for primitive types.
See gh-28592
2022-06-10 16:12:38 -07:00
Phillip Webb
8937924508
Merge branch '2.7.x'
...
Closes gh-31342
2022-06-10 14:30:28 -07:00
Phillip Webb
beb1c15219
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31341
2022-06-10 14:30:02 -07:00
Phillip Webb
31b0264d94
Ensure conversion service actually converts to the correct type
...
Update `BindConverter` with a guard to ensure that the resulting object
is the correct type.
Fixes gh-28592
2022-06-10 14:29:25 -07:00
Phillip Webb
cb745b4259
Merge branch '2.7.x'
...
Closes gh-31340
2022-06-10 12:43:38 -07:00
Anthony Vanelverdinghe
ed1e7382ab
Fix typo in ImportCandidates javadoc
...
See gh-31277
2022-06-10 12:42:43 -07:00
Phillip Webb
c56783064d
Support management contexts with AOT
...
Refactor child management configuration and add AOT generation support.
A new `ChildManagementContextInitializer` class now performs the child
context initialization and also handles AOT processing concerns.
Closes gh-31163
2022-06-08 19:24:46 -07:00
Phillip Webb
a729f71cba
Polish LogbackRuntimeHintsRegistrar
2022-06-08 19:24:45 -07:00
Stephane Nicoll
e30391ca7a
Use Application as target for generated code
...
Closes gh-31274
2022-06-08 14:51:17 +02:00
Stephane Nicoll
8413002bcb
Polish
...
See gh-31247
2022-06-07 20:02:06 +02:00
Andy Wilkinson
869bb91c80
Polish
2022-06-07 17:52:11 +01:00
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
2022-06-07 14:26:35 +02:00
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
2022-06-07 09:50:56 +02:00
Stephane Nicoll
c996e4335a
Fix singleton handling of ConfigurationProperties hints
...
Closes gh-31248
2022-06-04 12:29:45 +02:00
Stephane Nicoll
2a405c94a8
Add missing test
...
Closes gh-31249
2022-06-03 17:41:29 +02:00
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
2022-06-03 10:10:56 +02:00
Phillip Webb
13fba65638
Polish
2022-06-01 09:53:21 -07:00
Phillip Webb
6d80723598
Relocate AotProcessingHook
...
Relocate `AotProcessingHook` to be an static class of `AotProcessor`.
2022-05-31 15:51:12 -07:00
Andy Wilkinson
4385926df1
Ensure that the main application class can be deduced
...
Closes gh-31222
2022-05-31 12:06:56 +01:00
Andy Wilkinson
5f54289e97
Allow WebApplicationType to be deduced in a native image
...
Closes gh-31217
2022-05-31 11:39:42 +01:00
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
2022-05-31 12:34:37 +02:00
Andy Wilkinson
d044eaf69d
Merge branch '2.7.x'
...
Closes gh-31221
2022-05-31 11:21:52 +01:00
Andy Wilkinson
7f291f8da0
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31220
2022-05-31 11:14:08 +01:00
Andy Wilkinson
348662b15e
Remove unused deduceFromApplicationContext and supporting code
...
Closes gh-31218
2022-05-31 10:57:22 +01:00
Andy Wilkinson
f433d250e1
Merge branch '2.7.x'
...
Closes gh-31189
2022-05-27 11:14:40 +01:00
Andy Wilkinson
d2397bd34e
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31188
2022-05-27 11:14:29 +01:00
Andy Wilkinson
83e8c039b3
Add application/wasm to MIME mappings
...
Closes gh-30885
2022-05-27 11:14:04 +01:00
Andy Wilkinson
df99ad17bd
Merge branch '2.7.x'
...
Closes gh-31184
2022-05-27 10:09:28 +01:00
Andy Wilkinson
194e9f0f79
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31183
2022-05-27 10:02:08 +01:00
Andy Wilkinson
56c3a5f0ab
Polish "Assert that sources does not contain null elements"
...
See gh-30878
2022-05-27 10:01:06 +01:00
Guirong Hu
ebf276c005
Assert that sources does not contain null elements
...
See gh-30878
2022-05-27 10:00:32 +01:00
Andy Wilkinson
4bb5ba2bd0
Merge branch '2.7.x'
2022-05-26 18:26:52 +01:00
Andy Wilkinson
935d1264e0
Merge branch '2.6.x' into 2.7.x
2022-05-26 18:13:08 +01:00
Andy Wilkinson
3d203d0215
Polish
2022-05-26 17:30:39 +01:00
Andy Wilkinson
5dfa5adb75
Merge branch '2.7.x'
...
Closes gh-31178
2022-05-26 15:54:58 +01:00
Andy Wilkinson
455ee0ce22
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31177
2022-05-26 15:53:38 +01:00
Andy Wilkinson
ee45fd2fc8
Remove redundant throws declarations from internal APIs
...
Closes gh-31176
2022-05-26 15:47:35 +01:00
Andy Wilkinson
b3a4982f31
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31174
2022-05-26 14:01:23 +01:00
Andy Wilkinson
cbf42dea14
Update deprecation messages to change removal version from 2.8 to 3.0
...
Closes gh-30903
2022-05-26 13:59:03 +01:00
Phillip Webb
f8a41d34aa
Merge branch '2.7.x'
2022-05-17 22:22:08 -07:00
Phillip Webb
23eceb0d8a
Merge branch '2.6.x' into 2.7.x
2022-05-17 22:21:41 -07:00
Phillip Webb
ea41e89c6c
Merge branch '2.5.x' into 2.6.x
2022-05-17 22:21:10 -07:00
Phillip Webb
7d2f1bafc0
Update copyright year of changed files
2022-05-17 22:20:05 -07:00
Phillip Webb
ea881aadc6
Merge branch '2.7.x'
2022-05-17 22:19:08 -07:00
Phillip Webb
13670e556b
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31095
2022-05-17 22:18:53 -07:00
Phillip Webb
0beccde6ee
Merge branch '2.5.x' into 2.6.x
...
Closes gh-31094
2022-05-17 22:18:38 -07:00
Phillip Webb
7da42d7139
Allow tests to pass when a NAME environment variable exists
...
Update `ConfigurationPropertiesTests` so that it will pass even if a
local `NAME` environment variable is declared.
Closes gh-31076
2022-05-17 22:16:24 -07:00
Phillip Webb
e83ed4fe5e
Merge branch '2.7.x'
2022-05-17 22:16:02 -07:00
Phillip Webb
fbde59d635
Merge branch '2.6.x' into 2.7.x
...
Closes gh-31093
2022-05-17 22:14:40 -07:00
Phillip Webb
6bce0c5044
Merge branch '2.5.x' into 2.6.x
...
Closes gh-31092
2022-05-17 22:14:21 -07:00
Phillip Webb
44c979beb0
Reorder default property sources after @PropertySource processing
...
Update `SpringApplication` so that the `DefaultPropertiesPropertySource`
is moved to the end after `@PropertySource` annotations have been
processed. This restores functionality that used to be handled by
the `ConfigFileApplicationListener` and was inadvertently dropped
when the `ConfigDataEnvironmentPostProcessor` was developed.
Fixes gh-31068
2022-05-17 22:13:49 -07:00
Phillip Webb
06f8041e4d
Merge branch '2.7.x'
2022-05-17 21:50:42 -07:00
Phillip Webb
d5d5997be7
Merge branch '2.6.x' into 2.7.x
2022-05-17 21:49:20 -07:00
Phillip Webb
99f5c781a5
Merge branch '2.5.x' into 2.6.x
2022-05-17 21:48:50 -07:00
Phillip Webb
350d27fe50
Polish code to use method references when possible
2022-05-17 21:16:42 -07:00
Andy Wilkinson
bcc27c5d22
Deleting existing output before running AOT processing
...
Closes gh-30981
2022-05-17 15:33:45 +01:00
izeye
74a8fffe9f
Polish LogbackRuntimeHintsRegistrarTests
...
See gh-31074
2022-05-17 13:28:26 +02:00
Andy Wilkinson
6c4fedb4a4
Revert "Logback 1.3 and SLF4J 2.0"
...
This reverts commit f39a080a0e
that was
pushed prematurely.
2022-05-13 16:23:48 +01:00
Andy Wilkinson
f39a080a0e
Logback 1.3 and SLF4J 2.0
2022-05-13 14:48:20 +01:00
Andy Wilkinson
4cb9d95b49
Use ProcessHandler to get the process ID
...
Closes gh-28178
2022-05-13 14:35:41 +01:00
Andy Wilkinson
48c948973d
Polish
2022-05-12 12:12:22 +01:00
Andy Wilkinson
d0e55643b1
Polish
...
Closes gh-30993
2022-05-12 12:11:51 +01:00
Andy Wilkinson
1fd9c4d82c
Polish
...
Closes gh-30992
2022-05-12 12:10:52 +01:00
izeye
624c41c80e
Polish
...
See gh-30862
2022-05-12 12:07:12 +01:00
Andy Wilkinson
c2a3652709
Merge branch '2.7.x'
2022-05-12 11:53:46 +01:00
Andy Wilkinson
7e88daf288
Update messages for APIs deprecated in 2.7
...
In all likelihood there will not be a 2.9 release so this commit
updates the message for deprecations made in 2.7 to indicate that
removal will not occur until 3.0.
See gh-30903
2022-05-12 11:12:09 +01:00
Andy Wilkinson
f6225fe98b
Register reflection hints for Logback
...
Closes gh-30975
2022-05-11 12:34:47 +01:00
Andy Wilkinson
9a239c10b5
Align tests with changes to SpringApplicationHooks
2022-05-11 11:08:26 +01:00
Andy Wilkinson
2744649892
Update started log message as app may not be running on a JVM
...
Closes gh-30974
2022-05-11 11:08:25 +01:00
Phillip Webb
c7590277a9
Polish
2022-05-10 19:03:57 -07:00
Phillip Webb
693941c2c2
Polish SpringFactories ArgumentResolver code
...
Update `ArgumentResolver` setup to use one statement per line
and throw an exception if `Log` parameter types are present.
2022-05-10 17:43:52 -07:00
Andy Wilkinson
cffdee72ca
Polish
2022-05-10 16:13:16 +01:00
Andy Wilkinson
566ed68403
Contribute reflection hints for configuration property binding
...
Closes gh-30916
Co-authored-by: Stephane Nicoll <snicoll@vmware.com>
2022-05-10 15:31:15 +01:00
Andy Wilkinson
dbf0bcca63
Avoid reflection when Tomcat's configuring Context's ClassLoader
...
Closes gh-30904
2022-05-10 15:22:37 +01:00
Andy Wilkinson
87e78691c4
Use AOT-generated initialization when running in a native image
...
Closes gh-30915
2022-05-10 15:22:16 +01:00
Andy Wilkinson
c91b787078
Uses non-AnnotationConfig contexts when using AOT-generated init
...
Closes gh-30914
2022-05-10 15:19:29 +01:00
Andy Wilkinson
770cb840c3
Use more flexible SpringFactoriesLoader
...
Closes gh-30235
Co-authored-by: Madhura Bhave <bhavem@vmware.com>
Co-authored-by: Stephane Nicoll <snicoll@vmware.com>
2022-05-09 14:13:04 +01:00
Andy Wilkinson
3980c5af48
Polish "Use Log4jBridgeHandler to route JUL-based logging into Log4j 2"
...
See gh-30003
2022-05-06 15:05:16 +01:00
Piotr P. Karwasz
728e27d193
Use Log4jBridgeHandler to route JUL-based logging into Log4j 2
...
Since version 2.15.0 `log4j-jul` contains a `Log4jBridgeHandler`,
that forwards JUL to Log4j 2.x and synchronizes the logger levels of
the two frameworks.
This commmit adds support for the `Log4jBridgeHandler` and sets it as
the bridge handler for the Log4j 2.x stack, replacing the existing
JUL to SLF4J bridge that was used previously.
See gh-30003
2022-05-06 15:05:08 +01:00
Phillip Webb
8cf63a28b8
Update AOT work to latest Framework code
2022-05-05 15:19:33 -07:00
Madhura Bhave
7a0e5a032d
Delete unused test configuration files
...
These files were used by the legacy ConfigFileApplicationListener tests
and are no longer needed
2022-05-05 11:57:37 -07:00
Madhura Bhave
8d6b442dc4
Remove support for spring.profiles
...
Closes gh-22523
2022-05-05 11:57:37 -07:00
Scott Frederick
2369ce4195
Remove dependency management for AppEngine SDK
...
Closes gh-30638
2022-05-04 16:31:00 -05:00
Scott Frederick
7dd8dfc197
Handle zero-offset timezone in logging test
...
See gh-28654
2022-05-03 17:48:09 -05:00
Scott Frederick
7f395941c7
Add timezone offset to default logging date format patterns
...
Closes gh-28654
2022-05-03 17:09:27 -05:00
Andy Wilkinson
541ab69aff
Merge branch '2.7.x'
2022-05-03 15:18:20 +01:00
Andy Wilkinson
4cd850cfc0
Merge branch '2.6.x' into 2.7.x
...
Closes gh-30851
2022-05-03 15:17:13 +01:00
Andy Wilkinson
fa327a783d
Merge branch '2.5.x' into 2.6.x
...
Closes gh-30850
2022-05-03 15:14:00 +01:00
Andy Wilkinson
4fd2e0c916
Polish "Fix typos"
...
See gh-30773
2022-05-03 14:09:53 +01:00
Andy Wilkinson
f6d24dc1a8
Fix typos
...
See gh-30773
2022-05-03 14:09:37 +01:00
Andy Wilkinson
096420cc4c
Generate native image config data in recommended location
...
Closes gh-30827
2022-04-28 13:38:28 +01:00
Andy Wilkinson
97589d0465
Introduce Hook-based AOT processing
...
Closes gh-30555
Co-authored-by: Stephane Nicoll <snicoll@vmware.com>
2022-04-27 11:26:01 +01:00