Commit Graph

4003 Commits

Author SHA1 Message Date
Phillip Webb a2ac38e203 Update copyright year of changed files 2023-01-09 15:46:07 -08:00
Krzysztof Krason cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2023-01-09 11:10:20 +01:00
Phillip Webb f588793445 Update copyright year of changed files 2022-12-22 01:00:42 -08:00
Scott Frederick fead976952 Adapt to changes in Couchbase client
See gh-33588
2022-12-21 11:48:39 -06:00
Brian Clozel 41dce327a2 Fix Spring Integration failing test
Instead of asserting that an observation registry is null, we should
ensure that it's a NOOP instance.
2022-12-21 16:38:32 +01:00
Moritz Halbritter 08659baeba Polish away public modifier on tests 2022-12-16 16:08:44 +01:00
Moritz Halbritter f36e2ecb7b Use AutoClosables with try-with-resources
Closes gh-33538
2022-12-16 15:43:15 +01:00
Moritz Halbritter 725337f976 Make fields final
Closes gh-33537
2022-12-16 14:28:44 +01:00
Moritz Halbritter 216d15997a Merge branch '2.7.x'
Closes gh-33512
2022-12-12 11:41:09 +01:00
Aakarshit Uppal 2bb8dadeb3 Fix typo in tomcat accesslog checkExists doc
See gh-33460
2022-12-12 11:38:57 +01:00
Brian Clozel ce33ec19cd Start building against Spring GraphQL 1.1.1-SNAPSHOT
See gh-33477
2022-12-07 14:43:04 +01:00
Johnny Lim 78b43279a7 Polish
See gh-33455
2022-12-05 11:14:38 +01:00
Johnny Lim 90589fd6d4 Polish
See gh-33384
2022-12-01 11:32:39 +01:00
Moritz Halbritter d430779f00 Merge branch '2.6.x' into 2.7.x
Closes gh-33328
2022-11-23 16:32:19 +01:00
Moritz Halbritter 2f6edecedb Improve JavaDoc on ConditionalOnClass
Closes gh-27846
2022-11-23 16:26:43 +01:00
Brian Clozel e8c3157db5 Start building against Spring Framework 6.0.1 SNAPSHOTs
See gh-33286
2022-11-21 20:53:37 +01:00
Stephane Nicoll d89861e056 Merge branch '2.7.x'
Closes gh-33284
2022-11-21 16:23:11 +01:00
Stephane Nicoll 78d8bfdc52 Merge branch '2.6.x' into 2.7.x
Closes gh-33283
2022-11-21 16:22:54 +01:00
Henning Poettker 330848d339 Make `ScheduledBeanLazyInitializationExcludeFilter` conditional
See gh-33276
2022-11-21 16:11:07 +01:00
Vedran Pavic ca72f322d6 Fix Spring Security filter dispatcher types related docs
See gh-33252
2022-11-18 12:52:07 +00:00
Andy Wilkinson 98171921da Polish "Polish SecurityProperties"
See gh-33251
2022-11-18 12:50:15 +00:00
Vedran Pavic c1691f525a Polish SecurityProperties
See gh-33251
2022-11-18 12:50:15 +00:00
Sébastien Deleuze e7f91bab78 Refine BackgroundPreinitializer code reachability
GraalVM code reachability algorithm is not able to evaluate at build
time that ENABLED static field is always false in a native image,
shipping unreachable code.

Before this commit, building a native image with -H:+PrintAnalysisCallTree
shows that the following methods are included:
- BackgroundPreinitializer$1.<init>(BackgroundPreinitializer):void
- BackgroundPreinitializer$1.run():void
- BackgroundPreinitializer$1.runSafely(Runnable):void
- BackgroundPreinitializer$CharsetInitializer.run():void
- BackgroundPreinitializer$ConversionServiceInitializer.run():void
- BackgroundPreinitializer$JacksonInitializer.run():void
- BackgroundPreinitializer$MessageConverterInitializer.run():void
- BackgroundPreinitializer$ValidationInitializer.run():void
- BackgroundPreinitializer.<clinit>():void
- BackgroundPreinitializer.getOrder():int
- BackgroundPreinitializer.onApplicationEvent(ApplicationEvent):void
- BackgroundPreinitializer.onApplicationEvent(SpringApplicationEvent):void
- BackgroundPreinitializer.performPreinitialization():void

After this commit, only those are included:
- BackgroundPreinitializer.<clinit>():void
- BackgroundPreinitializer.getOrder():int
- BackgroundPreinitializer.onApplicationEvent(ApplicationEvent):void
- BackgroundPreinitializer.onApplicationEvent(SpringApplicationEvent):void

See gh-33240
2022-11-18 10:52:42 +00:00
Stephane Nicoll cb1ee205ea Exclude SharedMetadataReaderFactoryContextInitializer from AOT contexts
SharedMetadataReaderFactoryContextInitializer exposes an additional
bean post processor that is only relevant when parsing the bean
factory, auto-configurations in particular. Given that this does not
happen in an AOT-optimized context, this commit excludes the bean
and makes sure the initializer does not do anything at runtime.

Closes gh-33216
2022-11-17 11:30:22 +01:00
Phillip Webb e2dc35954e Merge branch '2.7.x'
Closes gh-33230
2022-11-16 12:06:20 -08:00
Phillip Webb e255bba018 Merge branch '2.6.x' into 2.7.x
Closes gh-33229
2022-11-16 12:06:10 -08:00
Phillip Webb 6cc6a15edf Polish 'Refine BackgroundPreinitializer Jackson initialization'
See gh-33220
2022-11-16 12:01:05 -08:00
Sébastien Deleuze bdac416a62 Refine BackgroundPreinitializer Jackson initialization
AllEncompassingFormHttpMessageConverter already initializes
Jackson ObjectMapper. This commit updates BackgroundPreinitializer
in order to not run JacksonInitializer when
MessageConverterInitializer already takes care of initializing
ObjectMapper.

See gh-33220
2022-11-16 12:00:47 -08:00
Andy Wilkinson f39b297677 Merge branch '2.7.x'
Closes gh-33227
2022-11-16 18:09:35 +00:00
Andy Wilkinson 04353e4961 Merge branch '2.6.x' into 2.7.x
Closes gh-33226
2022-11-16 16:41:02 +00:00
Andy Wilkinson 4bb13bcdfd Fix package tangles in spring-boot-autoconfigure
See gh-17299
2022-11-16 16:12:00 +00:00
Brian Clozel c1c818d43c Polish
See gh-33208
2022-11-16 16:34:49 +01:00
Brian Clozel 200458136c Contribute GraphQL resources during AOT phase
This commit ensures that the default locations for GraphQL schema files
and the GraphiQL UI HTML page are included in the native image by
registering resource hints during the AOT phase.

Fixes gh-33208
2022-11-16 15:56:15 +01:00
Johnny Lim 6027508cf7 Polish
See gh-33108
2022-11-16 10:00:36 +01:00
Andy Wilkinson 31f5e768a8 Polish "Add config property for Spring Integration component observation"
See gh-33099
2022-11-14 20:16:16 +00:00
artembilan b87d5c728d Add config property for Spring Integration component observation
Spring Integration has introduced a new observationPatterns attribute
on EnableIntegrationManagement. Spring Boot auto-configures
EnableIntegrationManagement so this commit adds a property that
allows users to configure the patterns without declaring the
annotation themselves.

See gh-33099
2022-11-14 20:16:16 +00:00
Madhura Bhave 8cb615e9b6 Remove workarounds for SecurityContextRepository 2022-11-10 14:23:17 -08:00
Madhura Bhave f4cf722c27 Align default security filter dispatcher types with Spring Security
Fixes gh-33090
2022-11-10 13:53:47 -08:00
Phillip Webb 1adc7c7dd4 Merge branch '2.7.x' 2022-11-09 11:32:24 -08:00
Phillip Webb 0ef03d725f Merge branch '2.6.x' into 2.7.x 2022-11-09 11:31:55 -08:00
Phillip Webb a431ae04e6 Polish 2022-11-09 11:30:11 -08:00
Andy Wilkinson 70f7258341 Simplify JacksonAutoConfiguration as we now require Jackson 2.14
See gh-33086
2022-11-09 17:31:04 +00:00
Andy Wilkinson 60917bd114 Remove tests for Jackson 2.11
Closes gh-33086
2022-11-09 11:33:55 +00:00
Phillip Webb 32b9945632 Polish 2022-11-08 23:15:30 -08:00
Phillip Webb 0d5c13cb28 Polish 'Add reflection hints for PropertyNamingStrategies'
See gh-33080
2022-11-08 23:09:27 -08:00
Ralf Ueberfuhr e9bca3e6de Add reflection hints for PropertyNamingStrategies
See gh-33080
2022-11-08 23:03:54 -08:00
Andy Wilkinson c314d62030 Merge branch '2.7.x'
Closes gh-33067
2022-11-08 13:11:01 +00:00
Andy Wilkinson 0e70c33725 Merge branch '2.6.x' into 2.7.x
Closes gh-33066
2022-11-08 13:10:40 +00:00
dreis2211 34902f5a02 Fix possible type pollution in ConditionEvaluationReport
See gh-32916
2022-11-08 13:01:27 +00:00
Andy Wilkinson a19f1a733e Correct crash handling in condition report logging listener
Closes gh-33027
2022-11-08 12:54:46 +00:00
Andy Wilkinson 3a2703e8f6 Upgrade to Jakarta Mail 2.1 and switch to Eclipse Angus RI
Closes gh-33059
Closes gh-33050
2022-11-08 11:01:15 +00:00
Phillip Webb 95557ddbc6 Start building against Spring Integration 6.0.0-RC2 snapshots
See gh-33009
2022-11-07 14:31:01 -08:00
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2022-11-07 17:33:38 +00:00
Andy Wilkinson bf468ab808 Polish tests to make use of @ParamterizedTest
Update tests to use @ParamterizedTest to reduce duplication.
2022-11-05 18:46:13 -07:00
Andy Wilkinson 42f4fd7e41 Revert to Spring Integration 6.0.0-RC1
Latest snapshots contain breaking changes that we do not yet know how
to address.
2022-11-05 13:39:45 +00:00
Andy Wilkinson 7e6bc3fdca Adapt to breaking API change in Spring Integration
See gh-33009
2022-11-04 19:40:52 +00:00
Andy Wilkinson 61c9a1540f Start building against Spring Batch 5.0.0-RC2 snapshots
See gh-32935
2022-11-01 12:09:39 +00:00
Moritz Halbritter 4fef5291bf Fix build
Commit 29f085bd1a690ff7281e00b3a925e1160850ffbb in Spring Framework
automatically registers hints for enclosing directories. This fixes the
tests to use a contains instead of exact match.
2022-10-31 16:59:15 +01:00
Moritz Halbritter dd2bec267c Revert "Fix build"
This reverts commit 50599c5046.
2022-10-31 16:54:05 +01:00
Moritz Halbritter 50599c5046 Fix build
Commit 29f085bd1a690ff7281e00b3a925e1160850ffbb in Spring Framework
automatically registers hints for enclosing directories. This fixes the
tests to expect hints for those directories as well.
2022-10-31 16:03:49 +01:00
Moritz Halbritter 5bf088d88b Add runtime hints for Liquibase migration file
Closes gh-32926
2022-10-31 11:29:53 +01:00
Johnny Lim 5067aab552 Polish
See gh-32840
2022-10-27 16:33:14 +02:00
Andy Wilkinson b9e176ce1a Inject Jackson modules rather than retrieving them manually
Fixes gh-32863
2022-10-27 13:35:37 +01:00
Moritz Halbritter 65c68ba64e Reinstate old flyway bean method
Closes gh-32849
2022-10-27 10:15:58 +02:00
Moritz Halbritter cd5d2ad3e8 Revert "Extract Flyway configuration mapping in separate class"
This reverts commit cf4117856b.
2022-10-27 10:08:27 +02:00
Moritz Halbritter cf4117856b Extract Flyway configuration mapping in separate class
Closes gh-32849
2022-10-27 09:53:29 +02:00
Scott Frederick eeac08e50e Remove references to WebSecurityConfigurerAdapter from javadoc
Closes gh-32879
2022-10-26 16:55:10 -05:00
Phillip Webb a59b6cb1f3 Polish 2022-10-25 21:56:53 -07:00
Phillip Webb 0f405c06bf Merge branch '2.7.x' 2022-10-25 16:40:56 -07:00
Phillip Webb f44531a7a2 Merge branch '2.6.x' into 2.7.x 2022-10-25 16:02:04 -07:00
Phillip Webb 92b513dc8d Polish 2022-10-25 16:01:58 -07:00
Phillip Webb 4be3218cb6 Merge branch '2.7.x' 2022-10-25 15:48:26 -07:00
Andy Wilkinson 99edda735e Polish 2022-10-25 12:57:58 +01:00
Andy Wilkinson bed313746b Correct property names to align with changes in 3.0
See gh-32837
2022-10-21 12:23:07 +01:00
Andy Wilkinson a606b26920 Merge branch '2.7.x'
Closes gh-32837
2022-10-21 11:04:52 +01:00
Andy Wilkinson 032487117b Merge branch '2.6.x' into 2.7.x
Closes gh-32836
2022-10-21 11:04:09 +01:00
Andy Wilkinson fe51e03019 Support IPv6 addresses in spring.redis.sentinel.nodes
Fixes gh-32762
2022-10-21 10:53:54 +01:00
Phillip Webb ea094ddba6 Fix package tangles caused by ConfigurationProperties hints
Relocate `ConfigurationPropertiesReflectionHintsProcessor` and refactor
it to be a general purpose `BindableRuntimeHintsRegistrar`.

Prior to this commit, `ConfigurationPropertiesReflectionHintsProcessor`
was used to declare binding hints for classes that were bound, but
might be `@ConfigurationProperties`. By moving and renaming the class,
it's now better aligned to the way it's used.

Support for `@NestedConfigurationProperties` has been implemented by
adding a `@Nestable` meta-annotation. This allow us to create the
appropriate hints, without the `Binder` needing to be directly aware of
the `@NestedConfigurationProperties` annotation.

Closes gh-32815
2022-10-20 17:05:54 -07:00
Madhura Bhave ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2022-10-19 11:46:27 -07:00
Phillip Webb 2e74878ba4 Downgrade to OpenSAML 4.0.1
See gh-32604
2022-10-19 11:46:27 -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 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 02cd910f5a Merge branch '2.7.x'
Closes gh-32774
2022-10-18 15:37:42 -07:00
Phillip Webb fbd416adc6 Merge branch '2.6.x' into 2.7.x
Closes gh-32773
2022-10-18 15:37:20 -07:00
Phillip Webb b02c702ad1 Polish 'Use more specific bean method return types in KafkaAutoConfiguration'
See gh-32770
2022-10-18 15:35:37 -07:00
yuanhao18 c498ad0320 Use more specific bean method return types in KafkaAutoConfiguration
Update `KafkaAutoConfiguration` so that more specific bean types are
returned.

See gh-32770
2022-10-18 15:33:58 -07:00
Moritz Halbritter b986a9b12e Add Flyway native-image support
The ResourceProviderCustomizer, which is used by FlywayAutoConfiguration
gets replaced with NativeImageResourceProviderCustomizer when running
in AOT mode. The NativeImageResourceProvider does the heavy lifting when
running in a native image: it uses PathMatchingResourcePatternResolver
to find the migration files.

Closes gh-31999
2022-10-18 12:07:04 +02:00
Bertolt Meier 647a2905c8 Add checkstyle rule for List.of() / Set.of() / Map.of()
This commits adds a checkstyle rule to not use List.of(), Set.of()
and Map.of(), preferring Collections.emptyList(), emptySet(), and
emptyMap() respectively.

It replaces usages of these methods across the codebase.

See gh-32655
2022-10-12 18:15:48 +01:00
Andy Wilkinson 3ab4606584 Make runScripts method of DB initializer more extensible
Closes gh-29137
2022-10-12 11:52:38 +01:00
Brian Clozel d870474fcd Remove spring.webflux.multipart.streaming property
As of spring-projects/spring-framework#29293, the streaming mode on the
`DefaultPartHttpMessageReader` is deprecated as hard limitations have
been found with the design and won't be fixed. Instead, developers
should use the `PartEvent` API and the `PartEventHttpMessageReader`
(which is configured by default with the codecs).

This commit removes the `spring.webflux.multipart.streaming` property
and applies all `spring.webflux.multipart.*` properties that are
applicable to `PartEventHttpMessageReader`.

Closes gh-32658
2022-10-10 14:59:34 +02:00
Madhura Bhave 263433cd81 Populate base for embedded LDAPContextSource
Fixes gh-23030
2022-10-07 13:20:45 -07:00
Andy Wilkinson 3eb3d79104 Log condition evaluation report during AOT processing
Closes gh-32109
2022-10-07 18:08:18 +01:00
Andy Wilkinson 8e35f2ae92 Separate report logging from context initialization and events
See gh-32109
2022-10-07 18:08:18 +01:00
Brian Clozel 23a9818e0d Auto-configure ProblemDetails support
This commit auto-configures ProblemDetails support for both Spring MVC
and Spring WebFlux, contributing a `@ControllerAdvice` annotated
`ResponseEntityExceptionHandler` bean if the
`spring.mvc.problemdetails.enabled` or
`spring.webflux.problemdetails.enabled` properties are set to `true`.

Closes gh-32634
2022-10-07 17:23:12 +02:00
Vedran Pavic e0a7bd8143 Fix deprecation warnings in Spring Session auto-configuration
This commit updates Spring Session auto-configuration to avoid usage of
deprecated methods, and moves to newly introduced Duration based
defaultMaxInactiveInterval setters across all session repository
implementations.

Additionally, this fixes several tests that are broken due to session
repository implementations now using Duration type for their
defaultMaxInactiveInterval fields.

See gh-32633
2022-10-07 15:38:46 +01:00
Brian Clozel da7128ce7e Upgrade to Thymeleaf 3.1.0-M3
See gh-32628
2022-10-07 11:42:01 +02:00
Brian Clozel 0f3b94592b Temporarily suppress warnings on R2DBC deprecation
See gh-32601
See spring-projects/spring-data-relational#1350
2022-10-07 11:41:16 +02:00
Andy Wilkinson 7e47d3bbd6 Polish "Rework Spring Session auto-configuration to use customizers"
See gh-32554
2022-10-06 20:59:59 +01:00
Vedran Pavic ad8753923a Rework Spring Session auto-configuration to use customizers
This commit reworks Spring Session auto-configuration to avoid
extending Spring Session's configuration classes. Instead, those
configuration classes are now imported and customizations are
applied using dedicated (Reactive)SessionRepositoryCustomizer beans.

See gh-32554
2022-10-06 20:59:13 +01:00
Brian Clozel c8c73b195d Switch to Spring Batch 5.0.0-SNAPSHOT
See gh-32618
2022-10-06 16:11:26 +02: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
Andy Wilkinson 5199ffe6a9 Allow auto-configured Rabbit Stream Environment to be customized
Closes gh-32580
2022-10-05 11:56:32 +01:00
Andy Wilkinson 0ae7e935c3 Allow user to replace auto-configured Data JDBC beans
Closes gh-32571
2022-10-04 18:07:56 +01:00
Andy Wilkinson e6568596b9 Make max header size config consistent across web servers
Closes gh-29382
2022-10-04 15:16:54 +01:00
Andy Wilkinson 4f86f685c5 Reinstate support for Infinispan
Closes gh-32556
2022-10-04 11:32:56 +01: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
Andy Wilkinson 803d353d49 Fix formatting of R2dbcDataAutoConfiguration
See c2b8d3d.
2022-10-03 14:29:46 +01:00
Stephane Nicoll c2b8d3de21 Declare beans that can be instantiated at build-time static
This commit updates the bean factory methods for beans that can be
instantiated at build-time to be static. Doing so makes sure that
the enclosing configuration class does not have to be resolved in
order to create the instance.

Closes gh-32570
2022-10-03 14:36:04 +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
Andy Wilkinson 0bfa9cd704 Upgrade to Logback 1.4 and SLF4J 2.0
Closes gh-12649
2022-09-28 21:14:08 +01:00
Andy Wilkinson 7d583939ff Auto-configure stream template and env irrespective of listener type
Closes gh-32477
2022-09-23 17:28:17 +01:00
Vedran Pavic 230f2cda84 Migrate to AuthorizationFilter in Spring Security auto-config
This commit updates Servlet based Spring Security auto-configuration
to use AuthorizationFilter, which is intended to supersede
FilterSecurityInterceptor.

See gh-31255
2022-09-22 13:53:54 +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
Scott Frederick f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2022-09-21 14:50:15 -05:00
Andy Wilkinson 2977373505 Polish "Add property to configure Spring Session Redis repository type"
See gh-32205
2022-09-21 17:16:29 +01:00
Vedran Pavic 3093380e35 Add property to configure Spring Session Redis repository type
With Spring Session moving to RedisSessionRepository as the preferred
session repository, Spring Boot auto-configuration should make it
possible to easily switch back to the previous default
(RedisIndexedSessionRepository).

This commit introduces spring.session.redis.repository configuration
property that allows selecting the desired Redis-backed session
repository implementation.

See gh-32205
2022-09-21 17:13:58 +01:00
Andy Wilkinson 64f4da80cb Align with breaking changes in latest Batch snapshots
Batch is now auto-configured to use the context's
PlatformTransactionManager and DataSource or `@BatchDataSource`.
When this does not meet the user's needs, they can use
`@EnableBatchProcessing` or sub-class `DefaultBatchConfiguration` to
take complete control with the auto-configuration backing off.

Closes gh-32330
2022-09-20 15:42:52 +01:00
dreis2211 bac7d62476 Fix Spring Batch deprecations
See gh-32419
2022-09-19 14:31:54 +02:00
Andy Wilkinson 2b3ef96156 Merge branch '2.7.x'
Closes gh-32407
2022-09-16 17:03:34 +01:00
Andy Wilkinson a800f7d77c Merge branch '2.6.x' into 2.7.x
Closes gh-32406
2022-09-16 17:03:13 +01:00
Andy Wilkinson 61e11cd361 Ensure that TCCL is clean when DataSource is accessed
Previously, when using Tomcat, its web app class loader was the thread
context class loader when H2ConsoleAutoConfiguration triggered
initialization of Hikari's pool. This was the case because it's done
in the bean method of a ServletRegistrationBean. Such Servlet-related
beans are intentionally created with Tomcat's web app classloader as
the TCCL. This arrangement results in the pool's threads using
Tomcat's web app class loader as their TCCL which is not desirable.
One consequence of this was that Tomcat could log a warning at
shutdown about the thread being left running when it will, in fact,
be stopped as part of the context being closed.

This commit updates H2ConsoleAutoConfiguration to set the TCCL to its
own ClassLoader while the DataSource information is being logged.

Closes gh-32382
2022-09-16 16:24:57 +01:00
Phillip Webb db89ee6904 Deprecate spring.mvc.ignore-default-model-on-redirect property
Closes gh-32381
2022-09-14 13:49:03 -07:00
Stephane Nicoll bcb5f048d2 Upgrade to Liquibase 4.16.0
Closes gh-32354
2022-09-14 15:56:59 +02:00
Andy Wilkinson 6d2a1d3f3b Adapt to breaking changes in Batch's transaction management
See gh-32237
2022-09-14 10:15:30 +01:00
Stephane Nicoll d4a88041dc Upgrade to R2DBC Bom Borca-SR2
Closes gh-32328
2022-09-14 11:01:19 +02:00
Andy Wilkinson c6990a34f9 Merge branch '2.7.x' 2022-09-14 09:20:37 +01:00
Andy Wilkinson a533f4fa32 Polish 2022-09-14 09:20:13 +01:00
Andy Wilkinson 4e8e5f623b Adapt to recent deprecations in Spring Batch
See gh-32237
2022-09-13 17:44:50 +01:00
Phillip Webb aa62e3d1bd Fix deprecation issues in WebMvcAutoConfigurationTests 2022-09-09 12:52:27 -07:00
Phillip Webb fc279b7083 Deprecate ThemeResolver auto-configuration
Update `WebMvcAutoConfiguration` to deprecate the `ThemeResolver` bean
to align with recent Spring Framework changes.
2022-09-09 12:45:24 -07: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 6e239d551a Update Spring Batch to upstream API changes
Fix Spring Batch tests following upstream changes related to Spring
Batch issue 4130.

Closes gh-32237
2022-09-08 19:35:27 -07:00
Phillip Webb d4ed2bd47a Support import into Eclipse 2022-06
Fix a few issues preventing clean project import into Eclipse 2022-06:

  - `buildSrc` need to limit module imports to prevent clashes
    with those in the gradle API jar.

  - The CLI app needs some classpath changes in order to allow
    compileOnly project dependencies to resolve.

  - `AbstractJpaAutoConfigurationTests` needs some minor refactoring
    in order for generic captures to work with the Eclipse compiler.
2022-09-07 15:56:57 -07:00
Andy Wilkinson 5470a6b349 Call FlywayConfigurationCustomizers after applying all other config
Closes gh-32070
2022-09-07 17:36:37 +01:00
Vedran Pavic 94f42d11e5 Add support for customizing WebJars resource handler path pattern
At present, both Spring MVC and Spring WebFlux auto-configurations
hardcode the path pattern for WebJars resource handlers to
"/webjars/**", which means users are unable to change the path.

This commit introduces "spring.mvc.webjars-path-pattern" and
"spring.webflux.webjars-path-pattern" configuration properties that
allow customization of WebJars resource handler path pattern.

See gh-31769
2022-09-07 11:46:19 +02:00
Stephane Nicoll ec63a981d0 Merge branch '2.7.x'
Closes gh-32248
2022-09-07 09:33:29 +02:00
Stephane Nicoll 2fb257ad22 Merge branch '2.6.x' into 2.7.x
Closes gh-32247
2022-09-07 09:33:17 +02:00
Stephane Nicoll 19c69ff743 Polish "Add support for detecting .yml Hazelcast config files"
See gh-32142
2022-09-07 09:32:53 +02:00
Neil Stevenson 5eaafdee9a Add support for detecting .yml Hazelcast config files
See gh-32142
2022-09-07 09:20:32 +02:00
Stephane Nicoll 9fb0ecdae9 Merge branch '2.7.x'
Closes gh-32246
2022-09-07 09:11:45 +02:00
Stephane Nicoll 960b034875 Polish "Make sure Hazelcast shutdown logs are available"
See gh-32184
2022-09-07 09:07:29 +02:00
Łukasz Dziedziul 24f3b2b1b7 Make sure Hazelcast shutdown logs are available
See gh-32184
2022-09-07 08:53:01 +02:00
Johnny Lim 2273191c03 Polish
See gh-32215
2022-09-07 08:48:08 +02:00
Scott Frederick da4de7d67d Generate the AutoConfiguration.imports file from annotations
This commit adds the `AutoConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module. When added to a project build, the annotation processor will
generate the
`org.springframework.boot.autoconfigure.AutoConfiguration.imports`
file automatically from `@AutoConfiguration`-annotated classes. It
also applies the annotation processor to the Spring Boot build.

Closes gh-31228
2022-09-02 15:10:22 -05: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
Brian Clozel 4aa1efa2d8 Fix build with latest Spring for GraphQL changes 2022-09-01 11:26:04 +02:00
Phillip Webb c524f8c665 Merge branch '2.7.x' 2022-08-25 11:49:12 -07:00
Phillip Webb 13c0cf7e2a Refine Javadoc to use @AutoConfiguration
See gh-32166
2022-08-25 11:48:07 -07:00
Phillip Webb b2be193908 Merge branch '2.7.x' 2022-08-24 18:13:18 -07:00
Phillip Webb e31c295ee9 Merge branch '2.6.x' into 2.7.x 2022-08-24 18:13:03 -07:00
Phillip Webb adc4e05eff Polish 2022-08-24 18:12:57 -07:00
Phillip Webb a993731ee8 Merge branch '2.7.x'
Closes gh-32168
2022-08-24 17:34:17 -07:00
Phillip Webb 10ded39217 Merge branch '2.6.x' into 2.7.x
Closes gh-32167
2022-08-24 17:33:50 -07:00
Phillip Webb 24c2daa99d Improve javadoc regarding use on @Bean methods
Closes gh-32166
2022-08-24 17:33:08 -07:00
Phillip Webb 6db88e12c8 Polish 'Allow multiple hosts to be set in MongoProperties'
See gh-32125
2022-08-23 20:23:11 -07:00
thegeekyasian e0d40009f3 Allow multiple hosts to be set in MongoProperties
Update `MongoProperties` with an `additional-hosts` property which
can be used to configure MongoDB in a multi-host environment.

See gh-32125
2022-08-23 20:21:16 -07:00
Moritz Halbritter 0cc0b48a67 Add runtime hints for freemarker
Registers reflection hints for the FreeMarkerTemplateAvailabilityProperties
class.

Closes gh-32052
2022-08-23 09:23:42 +02:00
Moritz Halbritter 7a8d7a9cd9 Polish TemplateAvailabilityProviders 2022-08-23 09:20:29 +02:00
Stephane Nicoll d637fe37cc Merge branch '2.7.x'
Closes gh-32146
2022-08-23 07:25:57 +02:00
Stephane Nicoll 7a91fa90d5 Merge branch '2.6.x' into 2.7.x
Closes gh-32145
2022-08-23 07:25:45 +02:00
Stephane Nicoll 7f2d4fceec Polish "Allow Netty default leak detection to be overidden"
See gh-32144
2022-08-23 07:20:49 +02:00
Russell You 51f2e40c69 Allow Netty default leak detection to be overidden
See gh-32144
2022-08-23 07:12:24 +02:00
Stephane Nicoll 639f980876 Avoid proxy on Validator in ValidationAutoConfiguration
Closes gh-32134
2022-08-22 14:44:18 +02: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 f2f5bae314 Add native hints for default LDIF file
Closes gh-32084
2022-08-18 15:31:58 +02:00
Stephane Nicoll 4823b8ef7b Merge branch '2.7.x'
Closes gh-32104
2022-08-17 13:33:33 +02:00
Stephane Nicoll 3fcfcc4a3b Merge branch '2.6.x' into 2.7.x
Closes gh-32103
2022-08-17 13:33:24 +02:00
Stephane Nicoll 3b01325c6b Use asList consistently
Closes gh-32102
2022-08-17 13:32:36 +02:00
Stephane Nicoll d6f6bcb770 Polish "Add socketKeepAlive configuration property for Elasticsearch"
See gh-32051
2022-08-17 08:25:51 +02:00
puppylpg 122d40a110 Add socketKeepAlive configuration property for Elasticsearch
See gh-32051
2022-08-17 08:25:39 +02:00
Andy Wilkinson 8e3346c24f Catch exception that's thrown on Java 11 and later
See gh-32034
2022-08-10 11:20:33 +01:00
Andy Wilkinson 889c40355c Tolerate Flyway 9
Closes gh-32034
2022-08-09 17:50:47 +01:00
Andy Wilkinson c6872e57a9 Remove support for Flyway 8.x and earlier
Closes gh-32036
2022-08-09 15:38:16 +01:00
Andy Wilkinson ba93e6c0ed Restore support for Jersey
Closes gh-28637
2022-08-08 15:45:20 +01:00
Madhura Bhave 0991bd3983 Harmonize data configuration
Any classes that rely on Spring Data being on the classpath
have been moved under a data package.

Certain configuration properties have also been updated to
accurately reflect whether Spring Data is required for the
auto-configuration to work.

Closes gh-11574
2022-08-05 13:32:25 -07: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
Johnny Lim 6a4681baf5 Polish
See gh-31948
2022-08-02 15:14:23 +02:00
Brian Clozel 38f1bc9793 Reinstate Spring for GraphQL auto-configuration
This commit adds the Spring for GraphQL auto-configuration back
into Spring Boot 3.0, now that a 1.1.0 release is scheduled with the
required baseline. This release also needs GraphQL Java 19.0 as a
baseline.

Closes gh-31809
2022-08-01 14:33:25 +02: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
Andy Wilkinson 44beb11d38 Merge branch '2.7.x'
Closes gh-31915
2022-07-29 07:06:30 +01:00
Andy Wilkinson 6d279abe21 Merge branch '2.6.x' into 2.7.x
Closes gh-31914
2022-07-29 07:06:09 +01:00
Andy Wilkinson d39e146a7d Polish "Allow config prop annotation processor to find reactive cookie props"
See gh-31912
2022-07-29 07:05:21 +01:00
Kalpesh 1f0d5f1130 Allow config prop annotation processor to find reactive cookie props
See gh-31912
2022-07-29 07:05:21 +01:00
Phillip Webb 57e967576e Adapt to upstream Spring Framework AOT changes 2022-07-27 21:44:18 +01:00
Andy Wilkinson a4bafa88bc Disable schema validation when testing against Hazelcast 3
We have hazelcast configuration files that are used with multiple
versions of Hazelcast. Version 3's scheme doesn't allow us to set
<auto-detection enabled="false" />. To work around this, we
configure a system property that causes Hazelcast to disable schema
validation.

See gh-38163
2022-07-27 18:29:54 +01:00
Stephane Nicoll fdb1ee5f97 Adapt to deprecations in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/27954
See gh-29699
2022-07-27 18:18:09 +02:00
Stephane Nicoll aac3ccf59c Adapt to deprecations in Spring Framework
See https://github.com/spring-projects/spring-framework/issues/27780
2022-07-27 17:47:02 +02:00