This commit updates `TaskExecutionAutoConfiguration` to permit the
auto-configuration of a `TaskExecutor` even if a user-defined `Executor`
bean is present.
Such `Executor` may have been created for totally unrelated reason, and
it may or may not be an `AsyncTaskExecutor`. The default behavior has
not changed, but this commit provides a new property,
`spring.task.execution.mode` that can be set to `force` to
auto-configure the `TaskExecutor` anyway.
Because this mode made it so that two `Executor` will be present in the
context, this commit also automatically configures an `AsyncConfigurer`
if none is present already to make sure task processing uses the
auto-configured TaskExecutor.
Closes gh-44659
Prior to this commit, the SSL file hot reloading feature would
create file watchers for all configured locations and would resolve
symbolic links if they're found as registrations.
This arrangement would work for typical Let's Encrypt setups, but
would not get notified of consecutive changes for k8s setups.
Kubernetes uses a mix of symlinks and atomic file moves to update
secrets.
This commit not only tracks changes to symlinks targets, but also
to the original symlink.
Closes gh-44807
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
[brian.clozel@broadcom.com: apply code conventions]
Signed-off-by: Brian Clozel <brian.clozel@broadcom.com>
1. Rename `TestConfiguration` to `TestJpaConfiguration` and remove unnecessary reference.
2. Use `withBean` instead of `withUserConfiguration` to avoid new configuration class.
3. Use kebab-case for configuration key
See gh-44800
Signed-off-by: Yanming Zhou <zhouyanming@gmail.com>
This commit updates DataSourceTransactionManagerAutoConfiguration to
explicitly states it should run after DataSourceAutoConfiguration.
Closes gh-44810
Previously, spring.groovy.template.configuration properties were
bound directly to GroovyMarkupConfigurer. This meant that the
properties had no description or default values in the metadata.
It also resulted in some duplicate where a specific
spring.groovy.template property was also provided.
This commit deprecates the spring.groovy.template.configuration.*
properties in favour of specific spring.groovy.template.* properties
that are mapped to the GroovyMarkupConfigurer.
Closes gh-44722
This commit isolates JmsAutoConfiguration tests so that they do not
rely on an actual broker. Some tests that are no longer relevant have
been adapted as well.
Closes gh-44734
META-INF/spring.factories and META-INF/spring/aot.factories in the
main source set are now checked. The checks verify that:
- Each class listed in the values exists in the source set's output
- The classes are listed alphabetically
- Nested classes are identified using their binary name
Closes gh-44676
Prior to these changes, auto-configured a DataSource required
spring-jdbc to be on the classpath even if the app made no use of any
of its features.
The changes largely remove the use of spring-jdbc during DataSoruce
auto-configure or disable some support (configuring an unpooled,
embedded database) in its absense. The extra unwrapping in
DataSourceBuilder has been removed as it appears to be redundant.
The existing test for deriving from an embedded database continues
to work without it.
Closes gh-43786
This commit allows EntityManagerFactoryBuilder to provide the JPA
properties to use according to the DataSource used to build the
EntityManagerFactory. Previously the JPA properties were computed only
once based on the primary data source, which was a problem since its
default DDL setting may be different.
EntityManagerFactoryBuilder takes a function that provides the JPA
properties based on a data source, rather than the properties
themselves. Constructors with the previous variant have been deprecated
as a result.
Closes gh-44516
This commit deprecates setObservationRegistry on
DefaultJmsListenerContainerFactoryConfigurer as it should not have been
made public in the first place. We want to make sure users don't
accidentally use it, and move it back to a package private method once
the deprecation period has run its course.
Closes gh-44466