Commit Graph

3996 Commits

Author SHA1 Message Date
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
Stephane Nicoll c413f9adbe Merge branch '2.7.x'
Closes gh-31884
2022-07-27 09:23:39 +02:00
Stephane Nicoll 53a652ec65 Merge branch '2.6.x' into 2.7.x
Closes gh-31883
2022-07-27 09:23:05 +02:00
Stephane Nicoll 9cb614c626 Migrate Hazelcast 3 sanity tests to Hazelcast 4
Closes gh-31881
2022-07-27 09:09:35 +02:00
Stephane Nicoll 59139e632b Polish "Disable auto-detection in tests that start Hazelcast"
See gh-31863
2022-07-27 08:30:17 +02:00
Adrian Bob aad9c8906a Disable auto-detection in tests that start Hazelcast
This commit updates test configurations to disable auto-detection of
Hazelcast instances.

See gh-31863
2022-07-27 08:16:48 +02:00
Stephane Nicoll 782e3f75b6 Polish Hazelcast configuration
This commit updates the XSD to 4.2 and removes the "tcp-ip" network
option as it is disabled by default.

See gh-31863
2022-07-27 08:15:53 +02:00
Madhura Bhave aac1829106 Make Batch auto-configuration back-off is spring-jdbc isn't present
See gh-29487
2022-07-26 15:11:00 -07:00
Madhura Bhave 2804c84648 Adapt to spring-jdbc being required by Spring Batch
Closes gh-29487
2022-07-26 14:03:22 -07: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
Andy Wilkinson 0980362a88 Merge branch '2.7.x'
Closes gh-31843
2022-07-22 12:20:17 +01:00
Andy Wilkinson 64dcfe520d Merge branch '2.6.x' into 2.7.x
Closes gh-31842
2022-07-22 12:15:39 +01:00
Andy Wilkinson a1443d1cdc Enforce ordering in additional-spring-configuration-metadata.json files
Closes gh-31575
2022-07-22 12:09:58 +01:00
Madhura Bhave 4057dd198b Change preference of session store implementations
The order has been determined based on usage statistics.

Closes gh-27756
2022-07-20 15:36:52 -07:00
Andy Wilkinson 4bd82bb5af Polish "Upgrade to Flyway 9.0.1"
See gh-31723
2022-07-20 15:44:01 +01:00
Vedran Pavic f1bf80f5e1 Upgrade to Flyway 9.0.1
See gh-31723
2022-07-20 15:44:00 +01:00
Andy Wilkinson 2814175505 Polish "Add auto-configuration for JdkClientHttpConnector"
See gh-31709
2022-07-20 12:18:50 +01:00
lihan e16734f937 Add auto-configuration for JdkClientHttpConnector
See gh-31709
2022-07-20 12:16:14 +01:00
Stephane Nicoll c31ad5f175 Merge branch '2.7.x'
Closes gh-31802
2022-07-20 09:52:51 +02:00
Stephane Nicoll 6469a02c35 Merge branch '2.6.x' into 2.7.x
Closes gh-31801
2022-07-20 09:52:41 +02:00
Stephane Nicoll 585a57be76 Update copyright year of changed file
See gh-31798
2022-07-20 09:45:57 +02:00
aoyvx abe938eb2c Use Bean ClassLoader consistently to resolve class names
See gh-31798
2022-07-20 09:45:33 +02:00
Moritz Halbritter c67876f913 Add resource hints for schema and data scripts
This only registers the default locations, not the one users can provide
via 'spring.sql.init.schema-locations' and
'spring.sql.init.data-locations'.

Closes gh-31533
2022-07-20 09:15:50 +02:00
Andy Wilkinson 62ec5c19de Remove temporary workaround for deprecations in Spring Batch
TaskExecutorJobLauncher has been improved so that its inherited
methods are no longer deprecated.

See gh-31623 and b599bfe5ac
2022-07-19 17:59:58 +01:00
Andy Wilkinson 0f7079a05a Add missing auto-config to Elasticsearch reactive repo tests
See 5c057a2730
2022-07-19 17:16:30 +01:00
Brian Clozel 7c7a32a568 Auto-configure GraphQL subscription exception handling
Closes gh-31794
2022-07-19 16:53:11 +02:00
Andy Wilkinson 5c057a2730 Auto-configure the new Elasticsearch clients
This commit introduces auto-configuration for the new Elasticsearch
clients that are based upon their new Java client. The new Java
client builds on top of their existing low-level REST client,
replacing the high-level REST client which has been deprecated.
As part of introducing support for the new Elasticsearch client,
the auto-configuration for the templates (both imperative and
reactive) provided by Spring Data has also been updated to use the
new templates that build upon the new Java client.

As part of these changes, support for the high-level REST client and
the old Spring Data Elasticsearch templates has been removed. One
significant change is that the new reactive template is no longer
based on WebClient. As a result, the WebClient-specific configuration
property has been removed.

Closes gh-30647
Closes gh-28597
Closes gh-31755
2022-07-19 15:26:42 +01:00
Moritz Halbritter f9ccfc1e12 Register Encoding on ReflectionHints for binding
Closes gh-31528
2022-07-19 16:22:08 +02:00
Andy Wilkinson b599bfe5ac Temporarily work around deprecations in Spring Batch
See gh-31623
2022-07-19 15:14:34 +01:00
Stephane Nicoll 501472697d Add resource hints for default templates location
Closes gh-31310
2022-07-18 15:14:21 +02:00
Stephane Nicoll f5f3d7cc67 Polish "Add configuration property for RemoteIpValve's trusted proxies"
See gh-31576
2022-07-18 11:58:05 +02:00
lihan 7d6129547f Add configuration property for RemoteIpValve's trusted proxies
See gh-31576
2022-07-18 11:50:52 +02:00
Stephane Nicoll 92b8bcbdac Upgrade to Lettuce 6.2.0.RELEASE
Closes gh-31761
2022-07-15 12:12:21 +02: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
Stephane Nicoll 4ae4698093 Polish "Add config property for KafkaAdmin modifyTopicConfigs"
See gh-31679
2022-07-13 16:10:35 +02:00
Michael Kreis 677c05a5b1 Add config property for KafkaAdmin modifyTopicConfigs
See gh-31679
2022-07-13 16:01:33 +02: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
Andy Wilkinson 4bd3534b7d Adapt to change in Security's filtering behavior
Spring Security now filters every dispatch by default and not only
once-per-request. Security configuration has been updated in a number of
places to restore the old behavior as needed for the tests to pass.
gh-31703 has been opened to review this and to investigate if we can
now remove the error page security filter and rely on the filtering of
every dispatch instead.

In addition to switching to once-per-request filtering where needed,
this commit also restructures the configuration of the error page
security filter. The restructuring was necessary to ensure that the
privilege evaluator bean has been defined before the conditions on the
error page security filter are evaluated. Without the change, the filter
was no longer being configured as the privilege evaluator hadn't been
defined before the on bean condition was evaluated. We may want to back
port this change as the ordering doesn't appear to have been defined
before and we were just getting lucky.

See gh-31622
See spring-projects/spring-security#11466
2022-07-13 12:09:46 +01:00
Madhura Bhave d66e108703 Revert actuator changes related to path pattern parsing
See gh-31547
2022-07-12 15:25:41 -07:00
Stephane Nicoll 67b5f42769 Name RuntimeHintsRegistrar implementations consistently
Closes gh-31695
2022-07-12 19:50:26 +02:00
Madhura Bhave 7954f5e566 Adapt to change in default strategy for URL path matching in Spring MVC
Closes gh-31547
2022-07-12 09:59:44 -07:00
Stephane Nicoll a5862dd55d Merge branch '2.7.x'
Closes gh-31691
2022-07-12 14:51:46 +02:00
Stephane Nicoll cb2844d527 Merge branch '2.6.x' into 2.7.x
Closes gh-31690
2022-07-12 14:51:33 +02:00
Stephane Nicoll a368919600 Polish "Fix deprecation metadata for grid-fs-database"
See gh-31689
2022-07-12 14:42:49 +02:00
Felix Scheinost d5e18e61c5 Fix deprecation metadata for grid-fs-database
See gh-31689
2022-07-12 14:42:36 +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
Andy Wilkinson 03ec079040 Start building against Reactor 2022.0.0-M4 snapshots again
See gh-31609
2022-07-11 18:19:26 +01:00
Andy Wilkinson a5b178657f Revert "Start building against Reactor 2022.0.0-M4 snapshots"
This reverts commit 47993c094b.

Couchbase and Spring Data Couchbase are not compatibile with the
latest Reactor snapshots as they use deprecated API that has now
been removed.

See gh-31609
2022-07-08 18:23:36 +01:00
Andy Wilkinson efc5391496 Adapt to deprecations in Framework's scheduling APIs
See gh-31241
2022-07-08 17:53:55 +01:00
Andy Wilkinson 47993c094b Start building against Reactor 2022.0.0-M4 snapshots
See gh-31609
2022-07-08 12:08:57 +01:00
Andy Wilkinson 55aa17eb11 Start building against Spring Framework 5.3.22 snapshots
See gh-31613
2022-07-08 09:55:15 +01:00
Andy Wilkinson eb9df8ebfe Adapt to changes in Spring Data Elasticsearch's transitive deps
See gh-31611
2022-07-07 22:22:28 +01:00
Andy Wilkinson ece51636fd Start building against Spring Framework 5.3.22 snapshots
See gh-31610
2022-07-07 17:04:01 +01:00
Andy Wilkinson 7f00378eaf Polish "Start building against Spring Data 2022.0.0-M5 snapshots"
See gh-31582
2022-07-07 16:32:13 +01:00
Mark Paluch 0067611396 Start building against Spring Data 2022.0.0-M5 snapshots
See gh-31582
2022-07-07 16:31:55 +01:00
Andy Wilkinson 96ade2d07a Upgrade to Jedis 4.2.3
Closes gh-31586
2022-07-07 15:13:19 +01:00
Andy Wilkinson 048bab4400 Upgrade to jOOQ 3.17.1
Closes gh-31587
2022-07-07 14:34:16 +01:00
Andy Wilkinson 344a216feb Upgrade to Artemis 2.23.1
Closes gh-31583
2022-07-07 14:34:15 +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
Andy Wilkinson 7c5aacc5f9 Adapt to upstream Spring Framework exception changes 2022-06-23 17:05:58 -07:00
Phillip Webb 2c22f21835 Merge branch '2.7.x'
Closes gh-31504
2022-06-22 20:32:23 -07:00
Phillip Webb 28775c2c53 Merge branch '2.6.x' into 2.7.x
Closes gh-31503
2022-06-22 20:31:58 -07:00
Phillip Webb 904feb2490 Polish 'Allow spring.data.cassandra.config file to override default values'
See gh-31238
2022-06-22 19:51:32 -07:00
Stern, Ittay (is9613) 1c7d99890e Allow spring.data.cassandra.config file to override default values
Update `CassandraAutoConfiguration` so that properties in a
`spring.data.cassandra.config` file can override the default values
defined in `CassandraProperties`.

This commit changes two things:

1. Any primitive on `CassandraProperties` are replaced with object values.
   This allows distinguishing between defaults values and no-values. Then
   CassandraAutoConfiguration.mapConfig() can use whenNonNull() predicate
   to ignore those.

2. `CassandraProperties` no longer populate default values on any
   property. With that, the defaults can be applied on top of the file
   spring.data.cassandra.config; i.e. the config file have higher
   precedence than the defaults, but lower that any spring.data.cassandra.*
   property.

See gh-31238
2022-06-22 19:27:40 -07:00
Madhura Bhave 7cb53b3c45 Remove session store type in favor of defined order
Closes gh-27756
2022-06-22 15:22:48 -07:00
Andy Wilkinson c9e0e8891f Make reactive user details back off with Auth Manager Resolver bean
Closes gh-31317
2022-06-22 10:41:54 +01:00
Phillip Webb 4c0a4cb669 Polish 2022-06-21 12:08:03 -07:00
dreis2211 5db04da275 Use pattern matching for instanceof where appropriate
See gh-31475
2022-06-20 17:55:36 +01:00
dreis2211 93defdaa17 Use String.repeat() where possible
See gh-31456
2022-06-20 08:03:01 +02:00
Johnny Lim aab59c5f2e Static-import Mockito.mock()
See gh-31443
2022-06-19 10:31:28 +02:00
Stephane Nicoll cb22905944 Merge branch '2.7.x'
Closes gh-31455
2022-06-19 10:15:13 +02:00
Johnny Lim 11a07a9d1e Polish OAuth2ResourceServerAutoConfigurationTests
See gh-31453
2022-06-19 10:11:48 +02:00
Johnny Lim 5d7d0d8047 Use 3.0.0 for Javadoc since tags
See gh-31448
2022-06-17 16:48:58 +02:00
Andy Wilkinson bde06a3115 Merge branch '2.7.x' 2022-06-16 15:39:48 +01:00
Andy Wilkinson 89bef73846 Polish 2022-06-16 15:39:04 +01:00
Andy Wilkinson 80ae3f36a9 Merge branch '2.7.x'
Closes gh-31404
2022-06-16 13:06:00 +01:00
Andy Wilkinson a1cc5bf238 Allow multiple JWS algorithms to be configured
Closes gh-31321
2022-06-16 12:59:13 +01:00
Madhura Bhave 55d6a87fef Remove support for multiple batch jobs
Closes gh-25373
2022-06-15 09:34:10 -07:00
Stephane Nicoll b536b209ab Refine assertions on exception messages 2022-06-14 18:20:27 +02:00
Phillip Webb 378e56f1d3 Add Order annotation to GraphQL RouterFunction beans
Update GraphQL auto-configuration so that `RouterFunction` beans have
and `@Order` of 0.

Fixes gh-31314
2022-06-13 16:44:20 -07:00
Stephane Nicoll b3601643af Add hints for web resource default locations
Closes gh-31278
2022-06-13 11:09:48 +02:00
Andy Wilkinson d4be484d27 Upgrade to AssertJ 3.23.1
Closes gh-31331
2022-06-10 13:44:21 +01:00
Andy Wilkinson 36f01eb40b Fix compilation error with Tomcat 10
There's no setter for the max header size in Tomcat 10 as it's now
inherited from the underlying HTTP 1.1 protocol. The test that
was merged forwards from 2.7.x is retained to verify that this is
the case.

See gh-31330
2022-06-10 12:40:40 +01:00
Andy Wilkinson b6ebf4a7db Merge branch '2.7.x'
Closes gh-31330
2022-06-10 11:36:11 +01:00
Andy Wilkinson 7f584a95a6 Merge branch '2.6.x' into 2.7.x
Closes gh-31329
2022-06-10 11:35:54 +01:00
Andy Wilkinson e02803d341 Configure max HTTP header size when using HTTP2 with Tomcat
Closes gh-31322
2022-06-10 11:32:57 +01:00
Andy Wilkinson 91bb5aa222 Move auto-config of ReactiveElasticClient to elasticsearch pkg
Closes gh-28068
2022-06-09 11:42:09 +01:00
Stephane Nicoll cf19c176f6 Adapt test to change in Spring Framework snapshots 2022-06-03 18:11:10 +02:00
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
2022-05-31 15:19:35 +02:00
Stephane Nicoll b2e63db57f Merge branch '2.7.x'
Closes gh-31209
2022-05-30 15:14:23 +02:00
Stephane Nicoll dd437c4cf4 Merge branch '2.6.x' into 2.7.x
Closes gh-31208
2022-05-30 15:14:08 +02:00
Stephane Nicoll ad1214c972 Upgrade copyright year of changed files
See gh-31197
2022-05-30 15:13:12 +02:00
heqiang 3a0ab01066 Polish "Remove boxing"
See gh-31197
2022-05-30 15:02:58 +02: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 26b89bfc80 Remove redundant throws declarations from public APIs
Closes gh-31179
2022-05-26 16:00:47 +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