Commit Graph

3879 Commits (275f15b8d3951e49ab6d254f88ad06afb68871f3)

Author SHA1 Message Date
Phillip Webb e2dc35954e Merge branch '2.7.x'
Closes gh-33230
2 years ago
Phillip Webb e255bba018 Merge branch '2.6.x' into 2.7.x
Closes gh-33229
2 years ago
Phillip Webb 6cc6a15edf Polish 'Refine BackgroundPreinitializer Jackson initialization'
See gh-33220
2 years ago
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
2 years ago
Andy Wilkinson f39b297677 Merge branch '2.7.x'
Closes gh-33227
2 years ago
Andy Wilkinson 04353e4961 Merge branch '2.6.x' into 2.7.x
Closes gh-33226
2 years ago
Andy Wilkinson 4bb13bcdfd Fix package tangles in spring-boot-autoconfigure
See gh-17299
2 years ago
Brian Clozel c1c818d43c Polish
See gh-33208
2 years ago
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
2 years ago
Johnny Lim 6027508cf7 Polish
See gh-33108
2 years ago
Andy Wilkinson 31f5e768a8 Polish "Add config property for Spring Integration component observation"
See gh-33099
2 years ago
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
2 years ago
Madhura Bhave 8cb615e9b6 Remove workarounds for SecurityContextRepository 2 years ago
Madhura Bhave f4cf722c27 Align default security filter dispatcher types with Spring Security
Fixes gh-33090
2 years ago
Phillip Webb 1adc7c7dd4 Merge branch '2.7.x' 2 years ago
Phillip Webb 0ef03d725f Merge branch '2.6.x' into 2.7.x 2 years ago
Phillip Webb a431ae04e6 Polish 2 years ago
Andy Wilkinson 70f7258341 Simplify JacksonAutoConfiguration as we now require Jackson 2.14
See gh-33086
2 years ago
Andy Wilkinson 60917bd114 Remove tests for Jackson 2.11
Closes gh-33086
2 years ago
Phillip Webb 32b9945632 Polish 2 years ago
Phillip Webb 0d5c13cb28 Polish 'Add reflection hints for PropertyNamingStrategies'
See gh-33080
2 years ago
Ralf Ueberfuhr e9bca3e6de Add reflection hints for PropertyNamingStrategies
See gh-33080
2 years ago
Andy Wilkinson c314d62030 Merge branch '2.7.x'
Closes gh-33067
2 years ago
Andy Wilkinson 0e70c33725 Merge branch '2.6.x' into 2.7.x
Closes gh-33066
2 years ago
dreis2211 34902f5a02 Fix possible type pollution in ConditionEvaluationReport
See gh-32916
2 years ago
Andy Wilkinson a19f1a733e Correct crash handling in condition report logging listener
Closes gh-33027
2 years ago
Andy Wilkinson 3a2703e8f6 Upgrade to Jakarta Mail 2.1 and switch to Eclipse Angus RI
Closes gh-33059
Closes gh-33050
2 years ago
Phillip Webb 95557ddbc6 Start building against Spring Integration 6.0.0-RC2 snapshots
See gh-33009
2 years ago
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
2 years ago
Andy Wilkinson bf468ab808 Polish tests to make use of @ParamterizedTest
Update tests to use @ParamterizedTest to reduce duplication.
2 years ago
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.
2 years ago
Andy Wilkinson 7e6bc3fdca Adapt to breaking API change in Spring Integration
See gh-33009
2 years ago
Andy Wilkinson 61c9a1540f Start building against Spring Batch 5.0.0-RC2 snapshots
See gh-32935
2 years ago
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.
2 years ago
Moritz Halbritter dd2bec267c Revert "Fix build"
This reverts commit 50599c5046.
2 years ago
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.
2 years ago
Moritz Halbritter 5bf088d88b Add runtime hints for Liquibase migration file
Closes gh-32926
2 years ago
Johnny Lim 5067aab552 Polish
See gh-32840
2 years ago
Andy Wilkinson b9e176ce1a Inject Jackson modules rather than retrieving them manually
Fixes gh-32863
2 years ago
Moritz Halbritter 65c68ba64e Reinstate old flyway bean method
Closes gh-32849
2 years ago
Moritz Halbritter cd5d2ad3e8 Revert "Extract Flyway configuration mapping in separate class"
This reverts commit cf4117856b.
2 years ago
Moritz Halbritter cf4117856b Extract Flyway configuration mapping in separate class
Closes gh-32849
2 years ago
Scott Frederick eeac08e50e Remove references to WebSecurityConfigurerAdapter from javadoc
Closes gh-32879
2 years ago
Phillip Webb a59b6cb1f3 Polish 2 years ago
Phillip Webb 0f405c06bf Merge branch '2.7.x' 2 years ago
Phillip Webb f44531a7a2 Merge branch '2.6.x' into 2.7.x 2 years ago
Phillip Webb 92b513dc8d Polish 2 years ago
Phillip Webb 4be3218cb6 Merge branch '2.7.x' 2 years ago
Andy Wilkinson 99edda735e Polish 2 years ago
Andy Wilkinson bed313746b Correct property names to align with changes in 3.0
See gh-32837
2 years ago
Andy Wilkinson a606b26920 Merge branch '2.7.x'
Closes gh-32837
2 years ago
Andy Wilkinson 032487117b Merge branch '2.6.x' into 2.7.x
Closes gh-32836
2 years ago
Andy Wilkinson fe51e03019 Support IPv6 addresses in spring.redis.sentinel.nodes
Fixes gh-32762
2 years ago
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
2 years ago
Madhura Bhave ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2 years ago
Phillip Webb 2e74878ba4 Downgrade to OpenSAML 4.0.1
See gh-32604
2 years ago
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
2 years ago
Andy Wilkinson a87aca2744 Merge branch '2.7.x'
Closes gh-32782
2 years ago
Andy Wilkinson a19e394ebb Merge branch '2.6.x' into 2.7.x
Closes gh-32781
2 years ago
Henning Poettker 4ed072a06b Upgrade MySQL Connector/J and use new Maven identifiers
See gh-32747
2 years ago
Phillip Webb 02cd910f5a Merge branch '2.7.x'
Closes gh-32774
2 years ago
Phillip Webb fbd416adc6 Merge branch '2.6.x' into 2.7.x
Closes gh-32773
2 years ago
Phillip Webb b02c702ad1 Polish 'Use more specific bean method return types in KafkaAutoConfiguration'
See gh-32770
2 years ago
yuanhao18 c498ad0320 Use more specific bean method return types in KafkaAutoConfiguration
Update `KafkaAutoConfiguration` so that more specific bean types are
returned.

See gh-32770
2 years ago
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
2 years ago
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
2 years ago
Andy Wilkinson 3ab4606584 Make runScripts method of DB initializer more extensible
Closes gh-29137
2 years ago
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
2 years ago
Madhura Bhave 263433cd81 Populate base for embedded LDAPContextSource
Fixes gh-23030
2 years ago
Andy Wilkinson 3eb3d79104 Log condition evaluation report during AOT processing
Closes gh-32109
2 years ago
Andy Wilkinson 8e35f2ae92 Separate report logging from context initialization and events
See gh-32109
2 years ago
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
2 years ago
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
2 years ago
Brian Clozel da7128ce7e Upgrade to Thymeleaf 3.1.0-M3
See gh-32628
2 years ago
Brian Clozel 0f3b94592b Temporarily suppress warnings on R2DBC deprecation
See gh-32601
See spring-projects/spring-data-relational#1350
2 years ago
Andy Wilkinson 7e47d3bbd6 Polish "Rework Spring Session auto-configuration to use customizers"
See gh-32554
2 years ago
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
2 years ago
Brian Clozel c8c73b195d Switch to Spring Batch 5.0.0-SNAPSHOT
See gh-32618
2 years ago
Stephane Nicoll 4ffc421b3c Adapt to Spring Framework API change 2 years ago
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
2 years ago
Andy Wilkinson 5199ffe6a9 Allow auto-configured Rabbit Stream Environment to be customized
Closes gh-32580
2 years ago
Andy Wilkinson 0ae7e935c3 Allow user to replace auto-configured Data JDBC beans
Closes gh-32571
2 years ago
Andy Wilkinson e6568596b9 Make max header size config consistent across web servers
Closes gh-29382
2 years ago
Andy Wilkinson 4f86f685c5 Reinstate support for Infinispan
Closes gh-32556
2 years ago
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
2 years ago
Andy Wilkinson 803d353d49 Fix formatting of R2dbcDataAutoConfiguration
See c2b8d3d.
2 years ago
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
2 years ago
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2 years ago
Andy Wilkinson 0bfa9cd704 Upgrade to Logback 1.4 and SLF4J 2.0
Closes gh-12649
2 years ago
Andy Wilkinson 7d583939ff Auto-configure stream template and env irrespective of listener type
Closes gh-32477
2 years ago
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
2 years ago
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
2 years ago
Scott Frederick f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2 years ago
Andy Wilkinson 2977373505 Polish "Add property to configure Spring Session Redis repository type"
See gh-32205
2 years ago
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
2 years ago
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
2 years ago
dreis2211 bac7d62476 Fix Spring Batch deprecations
See gh-32419
2 years ago
Andy Wilkinson 2b3ef96156 Merge branch '2.7.x'
Closes gh-32407
2 years ago
Andy Wilkinson a800f7d77c Merge branch '2.6.x' into 2.7.x
Closes gh-32406
2 years ago
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
2 years ago