Commit Graph

4463 Commits

Author SHA1 Message Date
Moritz Halbritter e4c38e59a9 Implement SimpleAsyncTaskExecutorBuilder
The SimpleAsyncTaskExecutorBuilder can be used to create
SimpleAsyncTaskExecutor. It will be auto-configured into the context.
SimpleAsyncTaskExecutorCustomizer can be used to customize the built
SimpleAsyncTaskExecutor.

If virtual threads are enabled:
- SimpleAsyncTaskExecutor will use virtual threads
- SimpleAsyncTaskExecutorBuilder will be used as the application task
  executor

A new property 'spring.task.execution.simple.concurrency-limit' has been
added to control the concurrency limit of the SimpleAsyncTaskExecutor

Closes gh-35711
2023-07-31 14:08:00 +02:00
Moritz Halbritter 32c91af440 Add ThreadPoolTaskExecutorBuilder and deprecate TaskExecutorBuilder
Closes gh-36637
2023-07-31 11:51:17 +02:00
Moritz Halbritter 1347b998e6 Remove @ConditionalOnVirtualThreads
See gh-36624
See gh-35892
2023-07-28 14:28:16 +02:00
Moritz Halbritter 9e212875c3 Remove VirtualThreads bean
Reverts eeb1e1fc35

See gh-36615
See gh-36387
2023-07-28 14:28:15 +02:00
Moritz Halbritter bf48819222 Implement @ConditionalOnThreading
Closes gh-36624
2023-07-28 14:28:15 +02:00
Moritz Halbritter b1a3dad16c Configure virtual threads on the RabbitMQ listener
Closes gh-36387
2023-07-27 16:32:53 +02:00
Moritz Halbritter eeb1e1fc35 Add VirtualThreads bean and auto-configuration
This bean is only in the context if virtual threads are enabled. It can
be used to get access to the virtual thread executor.
2023-07-27 16:32:51 +02:00
Moritz Halbritter 3cc9a3bb32 Remove duplicate applicationTaskExecutor bean method
See gh-35710
2023-07-27 11:27:29 +02:00
Moritz Halbritter 39f6b85039 Polish 2023-07-27 09:14:04 +02:00
Moritz Halbritter 9cb5763794 Add property to set changeConsumerThreadName for Kafka
Closes gh-36343
2023-07-26 13:59:19 +02:00
Moritz Halbritter 49ae8c0998 Auto-configure Kafka's threadNameSupplier
Closes gh-36344
2023-07-26 13:59:19 +02:00
Stephane Nicoll b0438b0f03 Polish "Allow custom RSocket WebsocketServerSpecs to be defined"
See gh-29567
2023-07-26 13:45:26 +02:00
Leo Li f840141652 Allow custom RSocket WebsocketServerSpecs to be defined
See gh-29567
2023-07-26 13:42:06 +02:00
Stephane Nicoll 54066791f9 Polish "Add RabbitMQ container forceStop property"
See gh-36539
2023-07-26 11:20:36 +02:00
Gary Russell 8b716a2f6c Add RabbitMQ container forceStop property
See gh-36539
2023-07-26 11:16:52 +02:00
Johnny Lim 96c9915f12 Polish
See gh-36565
2023-07-26 10:00:56 +02:00
Andy Wilkinson b476d368db Polish "Make HikariDataSource participate in checkpoint-restore"
See gh-36422
2023-07-25 17:19:58 +01:00
Christoph Strobl 9240f971fb Make HikariDataSource participate in checkpoint-restore
See gh-36422
2023-07-25 16:27:56 +01:00
Andy Wilkinson 14d2675aab Add `@ConditionalOnCheckpointRestore`
Closes gh-36536
2023-07-25 16:27:46 +01:00
Moritz Halbritter 6050fff078 Auto-configure observability for R2DBC
The new ConnectionFactoryDecorator can be used to decorate the
ConnectionFactory built by the ConnectionFactoryBuilder.

The new R2dbcObservationAutoConfiguration configures a
ConnectionFactoryDecorator to attach a ObservationProxyExecutionListener
to ConnectionFactories. This enables Micrometer Observations for R2DBC
queries.

Closes gh-33768
2023-07-25 17:01:55 +02:00
Stephane Nicoll d04daf9184 Merge branch '3.1.x'
Closes gh-36533
2023-07-24 16:32:10 +02:00
Stephane Nicoll a607056b98 Merge branch '3.0.x' into 3.1.x
Closes gh-36532
2023-07-24 16:31:56 +02:00
Stephane Nicoll 259fac57a9 Merge branch '2.7.x' into 3.0.x
Closes gh-36531
2023-07-24 16:29:56 +02:00
Stephane Nicoll 854c162966 Polish "Fail fast if job name does not exist"
See gh-36060
2023-07-24 16:21:44 +02:00
Akshay Dubey c38cd74542 Fail fast if job name does not exist
See gh-36060
2023-07-24 16:15:04 +02:00
Stephane Nicoll 740ed18fa7 Merge branch '3.1.x'
Closes gh-36530
2023-07-24 16:10:20 +02:00
Stephane Nicoll 89066b4d1e Merge branch '3.0.x' into 3.1.x
Closes gh-36529
2023-07-24 16:09:32 +02:00
Stephane Nicoll 73cc54ad34 Prevent PostConstruct to be used in production code
Closes gh-36528
2023-07-24 16:08:50 +02:00
Christoph Dreis 343c9c6f7e Remove references to Atomikos and Bitronix
See gh-35562
2023-07-21 16:23:14 +01:00
Andy Wilkinson 290ef3ccf6 Merge branch '3.1.x'
Closes gh-36493
2023-07-21 15:28:23 +01:00
Andy Wilkinson c38bca04c4 Merge branch '3.0.x' into 3.1.x
Closes gh-36492
2023-07-21 15:28:02 +01:00
Andy Wilkinson 6a2a3e2b26 Merge branch '2.7.x' into 3.0.x
Closes gh-36491
2023-07-21 15:06:34 +01:00
Andy Wilkinson 5a0f1bbe9b Polish "Correct description of overrides for spring.redis.url"
See gh-36477
2023-07-21 14:47:54 +01:00
Johnny Lim 1effd3723f Correct description of overrides for spring.redis.url
See gh-36477
2023-07-21 14:47:25 +01:00
Andy Wilkinson 3affb3342e Deprecate auto-configuration for InfluxDB
Closes gh-35190
2023-07-20 13:31:10 +01:00
Stephane Nicoll 311fa6272d Polish "Add service connection for Testcontainers ActiveMQ"
This also adds support for Docker Compose.

See gh-35080
2023-07-20 13:03:41 +02:00
Eddú Meléndez 63121dd08a Add service connection for Testcontainers ActiveMQ
See gh-35080
2023-07-20 13:03:41 +02:00
Moritz Halbritter 54e99d68fa Auto-configure ObservationRegistry on ScheduledTaskRegistrar
The TaskSchedulingAutoConfiguration.taskScheduler auto-configuration now
no longer backs off on SchedulingConfigurer beans.

Closes gh-36119
2023-07-20 09:43:12 +02:00
Andy Wilkinson e0d021b710 Merge branch '3.1.x'
Closes gh-36446
2023-07-18 21:16:49 +01:00
Andy Wilkinson fe123e5b10 Fix handling of additional-hosts with Mongo
Closes gh-36441
2023-07-18 21:15:20 +01:00
Andy Wilkinson 283dc37db3 Make AnnotatedControllerConfigurer use applicationTaskExecutor
Closes gh-36388
2023-07-18 15:35:31 +01:00
Stephane Nicoll c6e47b86d7 Move Flyway configuration extension properties to dedicated namespace
This commit harmonizes the handling of ConfigurationExtension for
Flyway. The existing Oracle and SQLServer extensions are now mapped from
flway.oracle and flyway.sqlserver, respectively. The existing properties
have been deprecated in favor of the new location.

Closes gh-36444
2023-07-18 16:15:50 +02:00
Stephane Nicoll 8da706603e Add support for flyway.postgresql.transactional.lock
Closes gh-32629
2023-07-18 15:44:38 +02:00
Stephane Nicoll 71406977c2 Harmonize configuration of Flyway SQL Server extension
Closes gh-36440
2023-07-18 13:58:18 +02:00
Stephane Nicoll fb640c04e7 Upgrade to Flyway 9.20.1
Closes gh-36364

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
2023-07-18 13:58:17 +02:00
Andy Wilkinson d205d10519 Configure WebFlux's blocking execution to use applicationTaskExecutor
Closes gh-36331
2023-07-18 11:18:25 +01:00
Stephane Nicoll c19a0a76c0 Merge branch '3.1.x'
Closes gh-36421
2023-07-17 13:23:15 +02:00
Johnny Lim 9b38db6672 Polish PemSslBundleProperties
See gh-36281
2023-07-17 13:22:27 +02:00
Andy Wilkinson f33874e98e Allow auto-configured applicationTaskExecutor to use virtual threads
With this commit, when virtual threads are enabled, the auto-configured
applicationTaskExecutor changes from a ThreadPoolTaskExecutor to a
SimpleAsyncTaskExecutor with virtual threads enabled.

As before, any TaskDecorator bean is applied to the auto-configured
executor and the spring.task.execution.thread-name-prefix property is
applied. Other spring.task.execution.* properties are ignored as they
are specific to a pool-based executor.

Closes gh-35710
2023-07-17 10:01:16 +01:00
Stephane Nicoll 783bfb62e2 Merge branch '3.1.x'
Closes gh-36420
2023-07-17 10:04:14 +02:00
Stephane Nicoll d2912c6442 Update copyright year of changed files
See gh-36306
2023-07-17 09:40:57 +02:00
Christoph Dreis 8321887d6a Fix typos
See gh-36306
2023-07-17 09:40:16 +02:00
Andy Wilkinson f2a50919a9 Merge branch '3.1.x'
Closes gh-36410
2023-07-14 10:42:28 +01:00
Andy Wilkinson 3f4474031f Merge branch '3.0.x' into 3.1.x
Closes gh-36409
2023-07-14 10:42:05 +01:00
Pengfei-Lu 8697d9ddd5 Correct conditions on auto-configured JacksonJsonpMapper
See gh-36109

Signed-off-by: Pengfei-Lu <459360594@qq.com>
2023-07-13 18:10:21 +01:00
Andy Wilkinson 07be2990a2 Merge branch '3.1.x'
Closes gh-36294
2023-07-10 13:52:57 +01:00
Andy Wilkinson 0d06747b41 Fix problem with @ and : chars in Mongo username and password
Fixes gh-36261
2023-07-10 13:35:08 +01:00
Andy Wilkinson 3b90919313 Polish RestClient auto-config and tests
For consistency, replace webClient and WebClient with restClient and
RestClient. This also address a bean name clash between
RestClientAutoConfiguration's RestClient.Builder bean and
WebClientAutoConfiguration's WebClient.Builder bean that were both
previously named webClientBuilder.
2023-07-06 12:22:54 +01:00
Spencer Gibb 89880a773c Add RestClientAutoConfiguration to AutoConfiguration.imports
See gh-36249
2023-07-06 11:38:48 +01:00
Phillip Webb cfdc173e34 Add RestClient SSL support
Add `RestClientSsl` support class to help apply an `SslBundle` to a
`RestClient.Builder`.

See gh-36213
2023-07-05 21:22:52 +01:00
Phillip Webb 5e01c66552 Add RestClient HttpMessageConverters support
Update `RestClientAutoConfiguration` to apply `HttpMessageConverters`
configuration.

See gh-36213
2023-07-05 21:17:42 +01:00
Phillip Webb 2d2f050262 Polish 'Add initial support for RestClient'
See gh-36213
2023-07-05 21:17:23 +01:00
Arjen Poutsma a1a5acf128 Add initial support for RestClient
Introduce initial support for Spring Framework's `RestClient`, in the
form of a `RestClientCustomizer` and `RestClientAutoConfiguration`.

See gh-36213
2023-07-05 21:16:02 +01:00
Andy Wilkinson 4feaa28fd1 Polish "Support custom token validators for OAuth2"
See gh-35874
2023-07-05 14:01:08 +01:00
Roman Golovin 7500dab321 Support custom token validators for OAuth2
See gh-35874
2023-07-05 11:48:48 +01:00
Andy Wilkinson ce8253ea95 Merge branch '3.1.x'
Closes gh-36238
2023-07-05 09:51:35 +01:00
Andy Wilkinson c9f8d92656 Merge branch '3.0.x' into 3.1.x
Closes gh-36237
2023-07-05 09:47:43 +01:00
Andy Wilkinson 2350d9c870 Adapt to Data changes missed due to predictive test selection
See gh-36190
2023-07-04 12:39:52 +01:00
Andy Wilkinson 5a9ca67fba Start building against Spring Framework 6.2.0-M2 snapshots
See gh-36198
2023-07-04 10:20:33 +01:00
Andy Wilkinson ec8e1e2c95 Start building against Spring Data Bom 2023.1.0 snapshots
See gh-36190
2023-07-04 09:44:53 +01:00
Phillip Webb 77245c3bd0 Merge branch '3.1.x'
Closes gh-36164
2023-07-02 19:47:24 +01:00
Phillip Webb 1f68db06ba Merge branch '3.0.x' into 3.1.x
Closes gh-36163
2023-07-02 19:47:17 +01:00
Phillip Webb f1b0d76d9b Merge branch '2.7.x' into 3.0.x
Closes gh-36162
2023-07-02 19:46:45 +01:00
Phillip Webb b6990940b1 Polish 'Choose SAML party based on entity ID rather than always using first'
See gh-35902
2023-07-02 19:02:08 +01:00
Lasse Lindqvist 864af59adc Choose SAML party based on entity ID rather than always using first
Update `Saml2RelyingPartyRegistrationConfiguration` so that
`RelyingPartyRegistrations` uses `collectionFromMetadataLocation`
rather than `fromMetadataLocation` and searches candidates for a
matching entity ID.

Prior to this commit, it was possible for the wrong provider to be
used if multiple candidates existed in the returned metadata.

See gh-35902
2023-07-02 18:54:34 +01:00
Andy Wilkinson 8fa80426b4 Merge branch '3.1.x'
Closes gh-36133
2023-06-30 11:26:49 +01:00
Johnny Lim 58a9961a31 Name methods consistently in KafkaConnectionDetails
See gh-35733
2023-06-30 11:26:25 +01:00
Scott Frederick c22cbb0e2d Merge branch '3.1.x'
Closes gh-36124
2023-06-29 16:55:19 -06:00
Scott Frederick 0a51c466f4 Merge branch '3.0.x' into 3.1.x
Closes gh-36123
2023-06-29 16:54:45 -06:00
Andy Wilkinson abaade28ea Merge branch '3.1.x'
Closes gh-36122
2023-06-29 18:10:52 +01:00
Andy Wilkinson e2f8fcf292 Merge branch '3.0.x' into 3.1.x
Closes gh-36121
2023-06-29 18:10:33 +01:00
Andy Wilkinson 6effd6061c Provide hints when template auto-config is excluded
Fixes gh-35682
2023-06-29 18:09:30 +01:00
Andy Wilkinson b5a131d966 Merge branch '3.1.x'
Closes gh-36100
2023-06-27 20:31:16 +01:00
Andy Wilkinson ba8b1717fb Merge branch '3.0.x' into 3.1.x
Closes gh-36099
2023-06-27 20:30:47 +01:00
Andy Wilkinson 79cd3a027a Merge branch '2.7.x' into 3.0.x
Closes gh-36098
2023-06-27 20:30:24 +01:00
Andy Wilkinson 9e1f2c4257 Tolerate Flway 9.20
Closes gh-36029
2023-06-27 20:22:24 +01:00
Andy Wilkinson 98d459d76c Revert "Merge branch '3.1.x'"
See gh-36092
2023-06-27 14:16:20 +01:00
Andy Wilkinson 6851904651 Merge branch '3.1.x'
Closes gh-36092
2023-06-27 14:03:09 +01:00
Andy Wilkinson 9a57611ef5 Merge branch '3.0.x' into 3.1.x
Closes gh-36091
2023-06-27 14:02:57 +01:00
Andy Wilkinson ffbef7bb80 Test server.max-http-request-header-size with Undertow
Closes gh-36047
2023-06-27 13:50:04 +01:00
Andy Wilkinson b645eb32ac Remove deprecated code that was to be removed in 3.2
Closes gh-36034
2023-06-23 18:14:22 +01:00
Andy Wilkinson 357c67a999 Merge branch '3.1.x' 2023-06-23 15:58:51 +01:00
Andy Wilkinson 3f7fe25cb9 Merge branch '3.0.x' into 3.1.x
Closes gh-36044
2023-06-23 15:58:36 +01:00
Andy Wilkinson 2fae5de245 Merge branch '2.7.x' into 3.0.x
Closes gh-36043
2023-06-23 15:50:02 +01:00
Andy Wilkinson d2966e1cbf Polish "Replace calls to verifyComplete() to avoid indefinite blocking"
See gh-35915
2023-06-23 12:38:12 +01:00
ThomazPassarelli f9da30faf1 Replace calls to verifyComplete() to avoid indefinite blocking
See gh-35915
2023-06-23 12:16:26 +01:00
Phillip Webb 212acf44f7 Merge branch '3.1.x' 2023-06-21 12:28:20 -07:00
Phillip Webb 7a2fc9e636 Fix checkstyle violation
See gh-35914
2023-06-21 12:27:56 -07:00
Phillip Webb 2ce36b15b3 Merge branch '3.1.x' 2023-06-21 12:11:07 -07:00
Phillip Webb 3c7fbf3423 Polish 'Apply SslConfigurer in addition to configured mappers'
See gh-35914
2023-06-21 12:10:36 -07:00
Fernando Cappi e6b5322f3e Apply SslConfigurer in addition to configured mappers
Update `ReactorClientHttpConnectorFactory` to that SSL configuration
is applied in addition to any configured mappers.

Prior to this commit, SSL configuration would prevent configured
mappers from being applied.

See gh-35914
2023-06-21 12:10:36 -07:00
Andy Wilkinson 295702003d Merge branch '3.1.x' 2023-06-21 15:29:38 +01:00
Andy Wilkinson 7266d4863b Merge branch '3.0.x' into 3.1.x
Closes gh-36009
2023-06-21 15:29:23 +01:00
Andy Wilkinson 39c382713b Initialize WebSocket infrastructure when using WebFlux and Jetty
In Spring Framework 5.x with Jetty 9, the reactive
JettyRequestUpgradeStrategy was able to initialize Jetty's WebSocket
infrastructure itself. With Jetty 10 this is no longer possible and
Boot must perform the initialization as part of preparing the
reactive JettyWebServer.

This commit updates the reactive WebSocket auto-configuration to
initialize Jetty's WebSocket infrastructure as part of creating the
reactive JettyWebServer.

Fixes gh-33347
2023-06-21 14:59:50 +01:00
Andy Wilkinson 1e17d8eeea Upgrade to Liquibase 4.22.0
Closes gh-35956
2023-06-19 16:30:52 +01:00
Andy Wilkinson 454aae92d6 Upgrade to Flyway 9.19.4
Closes gh-35948
2023-06-19 16:07:41 +01:00
Phillip Webb 23eb7ec1f8 Merge branch '3.1.x' 2023-06-16 14:35:44 -07:00
Phillip Webb 5d6a507142 Merge branch '3.0.x' into 3.1.x 2023-06-16 14:35:23 -07:00
Phillip Webb 48e13af8c4 Merge branch '2.7.x' into 3.0.x 2023-06-16 14:34:54 -07:00
Phillip Webb b8d2c279ee Update copyright year of changed files 2023-06-16 14:32:43 -07:00
Phillip Webb 854b29b8fb Polish 2023-06-16 14:32:14 -07:00
Phillip Webb 13f16da716 Merge branch '3.1.x' 2023-06-16 14:00:12 -07:00
Phillip Webb baddf4c857 Merge branch '3.0.x' into 3.1.x 2023-06-16 13:54:01 -07:00
Jonatan Ivanov 85934c3919
Merge branch '3.1.x'
Closes gh-35930
2023-06-16 13:03:08 -07:00
Johnny Lim 06157837e5
Polish
See gh-35872
2023-06-16 12:39:03 -07:00
Phillip Webb 691b549e36 Merge branch '2.7.x' into 3.0.x 2023-06-16 10:18:43 -07:00
Phillip Webb f3f8610539 Polish 2023-06-16 10:17:08 -07:00
Andy Wilkinson 2c06f274dc Merge branch '3.1.x' 2023-06-15 12:21:08 +01:00
Andy Wilkinson cb36df47c8 Merge branch '3.0.x' into 3.1.x
Closes gh-35905
2023-06-15 12:20:55 +01:00
Andy Wilkinson 6def7252d6 Merge branch '2.7.x' into 3.0.x
Closes gh-35904
2023-06-15 12:20:27 +01:00
Andy Wilkinson 088006ff60 Use ephemeral port for Hazelcast
When Hazelcast is started on a fixed port and that port is already in
use, it does not fail to start which makes the problem hard to
detect. A symptom of the problem is that clients will not be able to
connect and will either retry indefinitely or will timeout depending
on their configuration.

This commit updates the Hazelcast client tests to start the Hazelcast
instance on an ephemeral port and to customize the client
configuration with the instance's address before use. This should
allow the client tests to work reliably in an environment where
Hazelcast's default port is already in use.

Closes gh-35903
2023-06-15 12:19:34 +01:00
Moritz Halbritter 140c37ceba Enable virtual threads on Jetty
Closes gh-35703
2023-06-15 11:01:11 +02:00
Moritz Halbritter 3e4a9f5204 Add property to limit maximum connections for Jetty
Closes gh-35899
2023-06-15 09:42:51 +02:00
Moritz Halbritter f81787e65d Enable virtual threads on Tomcat
Closes gh-35704
2023-06-15 08:30:09 +02:00
Moritz Halbritter 6e604ad65c Implement @ConditionalOnVirtualThreads
Closes gh-35892
2023-06-15 08:30:09 +02:00
Scott Frederick 4950e2a6b7 Merge branch '3.1.x' 2023-06-13 16:42:38 -05:00
Scott Frederick 7e6452edee Fix Redis URL property userinfo parsing
Fixes gh-35850
2023-06-13 16:42:19 -05:00
Stephane Nicoll 8589401b65 Merge branch '3.1.x' 2023-06-10 10:23:45 +02:00
Stephane Nicoll 27ee605f91 Upgrade to Tomcat 10.1.9
Closes gh-35819
2023-06-10 10:11:29 +02:00
Stephane Nicoll 02a601eae3 Fix checkstyle violation 2023-06-10 08:52:54 +02:00
Scott Frederick 07c57577b0 Merge branch '3.1.x' 2023-06-09 12:01:25 -05:00
Scott Frederick 767ec4e22e Support encrypted PKCS8 private keys in SSL bundles
Properties `ssl.bundle.pem.mybundle.keystore.private-key-password`
and `ssl.bundle.pem.mybundle.truststore.private-key-password` have
been added for configuring the password required to decrypt an
encrypted private key.

Only PKCS8 private keys with encryption are supported. PKCS1 and EC
private keys with encryption are much more complex to decrypt, and
are not supported.

Fixes gh-35652
2023-06-09 11:52:36 -05:00
Stephane Nicoll 261cb721e9 Fix checkstyle violation 2023-06-09 17:02:10 +02:00
Andy Wilkinson 39276f8302 Adapt to deprecation of rejectIllegalHeader
Closes gh-35442
2023-06-09 15:48:18 +02:00
Andy Wilkinson b9f7df6cc2 Merge branch '3.0.x'
Closes gh-35789
2023-06-08 13:39:26 +01:00
Andy Wilkinson fba0aa805f Merge branch '2.7.x' into 3.0.x
Closes gh-35788
2023-06-08 13:37:27 +01:00
Andy Wilkinson 5e97f869d0 Remove unnecessary usage of Supplier
Closes gh-35787
2023-06-08 12:39:31 +01:00
Andy Wilkinson ce85290d01 Merge branch '3.0.x'
Closes gh-35773
2023-06-07 11:27:26 +01:00
Andy Wilkinson 51e980200a Merge branch '2.7.x' into 3.0.x
Closes gh-35772
2023-06-07 11:27:01 +01:00
Andy Wilkinson ca50cd8c8a Stop using an infinite timeout for connecting to Hazelcast
Closes gh-35771
2023-06-07 11:22:50 +01:00
Yanming Zhou 7a5f6d4123 Expose spring.ssl bundle keys
See gh-35667
2023-06-06 17:50:47 +02:00
Andy Wilkinson 3eaaf58536 Start building against Spring Data Bom 2023.0.1 snapshots
See gh-35750
2023-06-06 07:36:36 +01:00
Andy Wilkinson e9cd0c1f3a Restore compatibility with Flyway 9.0.x
Closes gh-35721
2023-06-05 20:48:46 +01:00
Andy Wilkinson d8078f1c12 Start building against Spring Data Bom 2022.0.7 snapshots
See gh-35738
2023-06-05 20:02:42 +01:00
rafaelrc7 ed47e09c13 Implement validity check to spring.rabbitmq.host config property
As discussed on issue #35628, at some point the host property accepted
multiple comma-separated hosts. However, this was not intended, and for
better clarification, it was decided to implement a clearer error
message for this situation.

See gh-35684
2023-06-05 09:56:06 +02:00
Scott Frederick f29a0d8c29 Merge branch '3.0.x'
Closes gh-35690
2023-05-31 17:12:19 -05:00
Scott Frederick 6a763f9be4 Merge branch '2.7.x' into 3.0.x
Closes gh-35689
2023-05-31 17:11:41 -05:00
Scott Frederick c847db77e6 Correct precedence in description of MongoDB properties
Closes gh-35686
2023-05-31 17:09:45 -05:00
Scott Frederick a02eb48528 Fix building of MongoDB connection string with authentication db
This commit restores the previous behavior of MongoDB auto-
configuration, where the value of the
`spring.data.mongodb.authentication-database` is set in the
credentials when provided.

Fixes gh-35567
2023-05-31 16:16:25 -05:00
Scott Frederick 593fa1dc42 Allow Mongo database property to override database in URI
This commit restores the previous behavior of MongoDB auto-
configuration, where the value of the `spring.data.mongodb.database`
property takes precedence over the database specified in a
`spring.data.mongodb.uri` property.

Fixes gh-35566
2023-05-31 11:20:53 -05:00
Scott Frederick 703883d302 Merge branch '3.0.x'
Closes gh-35610
2023-05-23 14:36:46 -05:00
Scott Frederick 72fd94f2b5 Align bean name with Spring Data Elasticsearch requirements
Fixes gh-33651
2023-05-23 14:36:02 -05:00
Stephane Nicoll 7a9bb55fdf Merge branch '3.0.x'
Closes gh-35589
2023-05-22 16:24:56 +02:00
Eddú Meléndez a3caf8102e Polish
See gh-35577
2023-05-22 15:43:14 +02:00
Andy Wilkinson 713d74d794 Merge branch '3.0.x'
See gh-35554
2023-05-18 09:32:06 +01:00
Andy Wilkinson 54e769be3a Polish
See gh-35553
2023-05-18 09:31:49 +01:00
Andy Wilkinson dd74f8caba Merge branch '3.0.x'
Closes gh-35554
2023-05-18 08:57:08 +01:00
Andy Wilkinson af9cd8cf0b Merge branch '2.7.x' into 3.0.x
Closes gh-35553
2023-05-18 08:56:49 +01:00
Phillip Webb 418dd1ba5b Return 406 status code if welcome page is not accepted
Add `WelcomePageNotAcceptableHandlerMapping` which will return
an HTTP 406 status if a suitable welcome page is found but
cannot be accepted for the request.

An additional mapper is used so that we don't need to change
the order of the `WelcomePageHandlerMapping`. It's possible
that users may have additional root handler mappings
registered to run after the `WelcomePageHandlerMapping`
and we still need to respect those.

Fixes gh-35552
2023-05-18 08:55:45 +01:00
Andy Wilkinson 75ffbc921d Account for new loggers property in FlywayPropertiesTets
See gh-35158
2023-05-18 08:03:25 +01:00
Phillip Webb e3aac5913e Polish property order
Keep "flyway teams" properties at the end.
2023-05-17 17:32:06 -07:00
Phillip Webb cf95ae92ea Allow flyway loggers to be configured and provide SLF4J default
Add `spring.flyway.loggers` property which can be used to configure
Flyway loggers and has a default value of "slf4j".

Closes gh-35158
2023-05-17 17:24:29 -07:00
Phillip Webb d7b4353e99 Polish "Add property defaults for Spring Authorization Server"
See gh-35460
2023-05-17 17:06:54 -07:00
Steve Riesenberg 42c3cba18e Add property defaults for Spring Authorization Server
See gh-35460
2023-05-17 17:06:39 -07:00
Phillip Webb ae90add7c7 Polish 2023-05-16 14:04:48 -07:00
Ben Gilbert 7674c55cd7 Align spring.flyway.execute-in-transaction property with Flyway default
See gh-35447
2023-05-16 15:05:48 -05:00
Andy Wilkinson f5ff8007be Adapt to deprecation of rejectIllegalHeader
Closes gh-35442
2023-05-16 19:46:43 +01:00
Brian Clozel b26115711f Remove unnecessary test for GraphQL Connection
This commit removes an unnecessary test that checks for the pagination
and Connection support in Spring for GraphQL. After a change in
spring-projects/spring-graphql#707, we no longer can test this in
isolation, nor does it make sense to test this integration that
deeply.

See gh-35449
2023-05-16 18:49:19 +01:00
Johnny Lim 4239b96943 Polish
See gh-35417
2023-05-15 11:33:10 +02:00
Johnny Lim e4bf2187bc Revert accidental author changes in FlywayAutoConfiguration
See commit 7ffacf43f3

See gh-35418
2023-05-15 11:27:37 +02:00
Moritz Halbritter aa0fa42ebd Merge branch '3.0.x'
Closes gh-35425
2023-05-15 11:22:13 +02:00
Moritz Halbritter 9e963bce58 Add Hibernate runtime hints
This adds hints for the two No JtaPlatform candidates as well as for
the naming strategies.

Closes gh-35423
2023-05-15 11:12:02 +02:00
Phillip Webb e3ed87d165 Merge branch '3.0.x' 2023-05-12 13:21:52 -07:00
Phillip Webb 92e420a098 Merge branch '2.7.x' into 3.0.x 2023-05-12 13:14:12 -07:00
Phillip Webb e9c4a5d663 Polish 2023-05-12 13:01:30 -07:00
Moritz Halbritter b70399e998 Merge branch '3.0.x' 2023-05-12 12:03:32 +02:00
Moritz Halbritter 7b4056df7f Merge branch '2.7.x' into 3.0.x 2023-05-12 12:00:11 +02:00
Moritz Halbritter 700e89097c Polish
See https://stackoverflow.com/questions/28671903/the-hashsett-removeall-method-is-surprisingly-slow
2023-05-12 11:57:33 +02:00
Steve Riesenberg 10feecbd08 Fix redirect to login page for token requests
Fixes an issue where auto-configuration for Spring Authorization Server
was overriding the default exception handling (AuthenticationEntryPoint)
resulting in anonymous requests to the token endpoint being redirected
to the Spring Security login page instead of returning 401 Unauthorized.

Auto-configuration now registers a defaultAuthenticationEntryPointFor
that is added to any other entry points already configured.

See gh-35368
2023-05-10 11:32:06 +02:00
Christoph Dreis 6086e81ccd Fix configuring replica set via PropertiesMongoConnectionDetails
See gh-35370
2023-05-10 11:23:19 +02:00
Moritz Halbritter 9f787050b4 Merge branch '3.0.x'
Closes gh-35381
2023-05-10 11:08:33 +02:00
Moritz Halbritter 53d2a9fb34 Merge branch '2.7.x' into 3.0.x
Closes gh-35380
2023-05-10 10:58:03 +02:00
Moritz Halbritter ec4d52e381 Add ReactiveResponseConsumer classpath check to http5 auto-configuration
Closes gh-34964
2023-05-10 10:47:08 +02:00
Moritz Halbritter 0ebb32e7f0 Merge branch '3.0.x'
Closes gh-35379
2023-05-10 10:28:57 +02:00
Moritz Halbritter 7e50485b23 Merge branch '2.7.x' into 3.0.x
Closes gh-35378
2023-05-10 10:28:47 +02:00
Moritz Halbritter 947ac8df73 Map MinIdle and MaxValidationTime to R2DBC pools
Closes gh-34724
2023-05-10 10:16:43 +02:00
Stefano Cordio d802ca017b Small assertions improvements
See gh-34796
2023-05-10 08:38:07 +02:00
Johnny Lim ff9fd1abeb Polish
See gh-35185
2023-05-10 08:31:36 +02:00
Christoph Dreis 2d1a403605 Fix javadoc in OAuth2AuthorizationServerPropertiesMapper
See gh-35366
2023-05-09 16:38:45 +01:00
Andy Wilkinson 2b6b178560 Merge branch '3.0.x'
Closes gh-35362
2023-05-09 12:24:04 +01:00
Andy Wilkinson 6c1c8fb405 Merge branch '2.7.x' into 3.0.x
Closes gh-35361
2023-05-09 12:23:49 +01:00
Andy Wilkinson 7427e2d527 Polish "Fix test for backing off when a TransactionManager is already defined"
See gh-35336
2023-05-09 12:04:38 +01:00
davin111 cf5500fc78 Fix test for backing off when a TransactionManager is already defined
See gh-35336
2023-05-09 12:03:06 +01:00
Scott Frederick a474e54cf3 Merge branch '3.0.x'
Closes gh-35244
2023-05-05 16:20:41 -05:00
Scott Frederick cf180fa1cc Merge branch '2.7.x' into 3.0.x
Closes gh-35243
2023-05-05 16:07:23 -05:00
Scott Frederick 5d91c24f63 Update Couchbase image tag used in tests
Closes gh-35228
2023-05-05 14:45:58 -05:00
Marc Leroux b61834c92d Replace Mockito argument captors with assertArg
See gh-35015
2023-05-05 11:34:55 +02:00
Scott Frederick 1143396531 Add smoke tests to verify Couchbase SSL connections
See gh-34811
2023-05-04 17:09:52 -05:00
Scott Frederick d4107a8185 Add smoke tests to verify Cassandra SSL connections
See gh-25602
2023-05-04 16:11:28 -05:00
Phillip Webb 8e18862582 Merge branch '3.0.x' 2023-05-02 15:41:26 -07:00
Phillip Webb 8d1fb3be4f Fix index error on test
See gh-35241
2023-05-02 15:41:07 -07:00
Phillip Webb a890323758 Merge branch '3.0.x' 2023-05-02 14:52:42 -07:00
Phillip Webb 0f242ab3f7 Merge branch '2.7.x' into 3.0.x 2023-05-02 14:52:16 -07:00
Phillip Webb 6b646f6a8e Update copyright year of changed files 2023-05-02 14:52:12 -07:00
Phillip Webb cd5f0dff21 Merge branch '3.0.x'
Closes gh-35242
2023-05-02 14:51:24 -07:00
Phillip Webb 722cbc66c6 Merge branch '2.7.x' into 3.0.x
Closes gh-35241
2023-05-02 14:51:13 -07:00
Phillip Webb 5ef0ee0ed4 Prevent early initialization of SessionRepository beans
Replace `SessionRepositoryFilterConfiguration` filter registration bean
with a `DelegatingFilterProxyRegistrationBean` so that
`SessionRepository` beans are not initialized early.

Fixes gh-35240
2023-05-02 14:47:15 -07:00
Scott Frederick 3bb271e320 Add smoke test to verify Redis SSL connection
See gh-34815
2023-05-02 13:52:50 -05:00
Andy Wilkinson aafe343ce6 Merge branch '3.0.x'
Closes gh-35237
2023-05-02 16:19:54 +01:00
Andy Wilkinson 9a39bf284b Merge branch '2.7.x' into 3.0.x
Closes gh-35235
2023-05-02 16:19:30 +01:00
Andy Wilkinson 7c2c2ebb1b Make ApplicationAvailabilityBean receive events with lazy init
Fixes gh-35161
2023-05-02 16:19:08 +01:00
Moritz Halbritter 735c43ce9b Merge branch '2.7.x' into 3.0.x 2023-05-02 14:38:48 +02:00
Moritz Halbritter 312f0c17ed Set initial ElasticSearch heap size in integration tests 2023-05-02 14:37:13 +02:00
Moritz Halbritter 944d77491b Set initial heap size for ElasticSearch integration tests 2023-05-02 14:25:35 +02:00
Moritz Halbritter 1ce88f25b4 Merge branch '3.0.x' 2023-05-02 14:08:37 +02:00
Moritz Halbritter 037cb8c5b0 Merge branch '2.7.x' into 3.0.x 2023-05-02 13:57:37 +02:00
Moritz Halbritter c1cef099d2 Limit maximum heap of ElasticSearch in tests 2023-05-02 13:40:59 +02:00
Moritz Halbritter d7a9f87b64 Disable Neo4j tests on aarch64 linux and mac
See gh-35228
2023-05-02 13:40:59 +02:00
Moritz Halbritter 9f109fe785 Disable Couchbase integration tests on aarch64 linux and mac
See gh-35228
2023-05-02 13:40:59 +02:00
Andy Wilkinson 419d8c22b2 Merge branch '3.0.x'
Closes gh-35231
2023-05-02 11:58:58 +01:00
Andy Wilkinson 8f291abc2b Merge branch '2.7.x' into 3.0.x
Closes gh-35230
2023-05-02 11:58:33 +01:00
Juhan Aasaru 3b70286747 Correct list of annotations equivalent to @SpringBootApplication
See gh-35180
2023-05-02 11:57:18 +01:00
Andy Wilkinson b1d0433d74 Handle Kafka servers as strings and rely on Kafka's parsing
Closes gh-34770
2023-05-02 08:38:40 +01:00
Phillip Webb fc5339f81c Polish 2023-04-30 23:27:06 -07:00
Phillip Webb 403481ff96 Add 'required' parameter to ConnectionDetailsFactories
Update `ConnectionDetailsFactories` so that callers can now declare if
a result is required or not and improve exception hierarchy.

See gh-35168
2023-04-29 21:10:07 -07:00
Andy Wilkinson 09527995d1 Polish 2023-04-28 17:56:12 +01:00
Moritz Halbritter 176cc20c36 Polish FlywayConfiguration 2023-04-28 13:15:39 +02:00
Moritz Halbritter 27ab98b49d Polish ConnectionDetailsFactories 2023-04-28 13:15:39 +02:00
Andy Wilkinson d7da77bda8 Remove support for service connections to InfluxDB
Closes gh-35189
2023-04-28 09:49:39 +01:00
Scott Frederick 428434c873 Polish SslOptions usage
Change getter methods to return arrays, as this is how most client
library usages need the options.

See gh-34814
2023-04-27 16:37:46 -05:00
Scott Frederick 226c3005d4 Add SSL bundle support to Redis auto-configuration
Update Redis auto-configuration with Lettuce and Jedis drivers to
allow SSL configuration with an SSL bundle.

Closes gh-34815
2023-04-27 15:24:55 -05:00
Andy Wilkinson 9a0b5e0178 Merge branch '3.0.x'
Closes gh-35173
2023-04-26 12:48:50 +01:00
Andy Wilkinson 7ee1622995 Merge branch '2.7.x' into 3.0.x
Closes gh-35172
2023-04-26 12:48:16 +01:00
Andy Wilkinson 6b9bc012a5 Check that BPP and BFPP bean methods won't cause eager initialization
Closes gh-35164
2023-04-26 11:47:03 +01:00
Phillip Webb b5c9e7c06a Polish SslOptions usage
Add helper method and tighten usage so that exceptions are thrown when
options cannot be applied.

See gh-34814
2023-04-25 22:39:47 -07:00
Phillip Webb 423c60acfa Add SSL bundle support to Elasticsearch auto-configuration
Update Elasticsearch RestClient auto-configuration so that an SSL
can be configured via an SSL bundle.

Closes gh-35155
2023-04-25 17:20:05 -07:00
Phillip Webb 19221f00f3 Deprecate `spring.cassandra.ssl` configuration property
Deprecate the `spring.cassandra.ssl` configuration property in favor
of `spring.cassandra.ssl.enabled`.

See gh-25602
2023-04-24 16:39:55 -07:00
Scott Frederick ff35cc80d7 Allow Couchbase SSL to be enabled without custom trust material
Closes gh-35147
2023-04-24 14:51:58 -05:00
Scott Frederick 1d44b45b5d Deprecate Couchbase SSL keyStore properties
The properties `spring.couchbase.env.ssl.key-store`
and `spring.couchbase.env.ssl.key-store-password`
are deprecated in favor of configuring an SSL bundle with
`spring.couchbase.env.ssl.bundle`. The older properties
have somewhat confusing names, since they are used to
configure a trust store in Couchbase, and they don't
provide all the options that an SSL bundle provides.

Closes gh-35135
2023-04-24 14:45:40 -05:00
Andy Wilkinson 9cd04c55fb Merge branch '3.0.x'
Closes gh-35132
2023-04-24 16:01:51 +01:00
Andy Wilkinson 598e090e8f Merge branch '2.7.x' into 3.0.x
Closes gh-35131
2023-04-24 15:07:43 +01:00
Andy Wilkinson 90952a2dd9 Do not turn a null Flyway-specific password into an empty string
It prevents using PGPASS for authentication with Postgres.

Fixes gh-35110
2023-04-24 14:44:04 +01:00
Andy Wilkinson 7ffacf43f3 Use main DataSource when there are no migration-specific conn details
Fixes gh-35109
2023-04-24 13:18:56 +01:00
Phillip Webb 6ea2547de4 Add SSL bundle support to WebClient auto-configuration
Introduce `WebClientSsl` interface and auto-configuration to allow a
WebClient builder to have custom SSL configuration applied.

The previous `ClientHttpConnectorConfiguration` has been been changed
to now create `ClientHttpConnectorFactory` instances which can be used
directly or by `AutoConfiguredWebClientSsl`.

Closes gh-18556
2023-04-21 20:39:18 -07:00
Phillip Webb c59c8cc674 Change SslOptions to use null for defaults rather than empty sets
Update `SslOptions` so that `null` is used for default values rather
than empty sets. Most libraries use `null` to indicate defaults so
aligning our class makes things easier.

See gh-34814
2023-04-21 16:18:44 -07:00
Scott Frederick fd5fd1491a Add SSL bundle support to MongoDB auto-configuration
Update MongoDB auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-35042
2023-04-21 01:13:09 -07:00
Scott Frederick 1618aa2dac Add SSL bundle support to Couchbase auto-configuration
Update Couchbase auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-34811
2023-04-21 01:13:09 -07:00
Scott Frederick 682457377a Add SSL bundle support to Cassandra auto-configuration
Update Cassandra auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-25602
2023-04-21 01:13:09 -07:00
Scott Frederick 66db13b962 Refactor web server support to use SslBundles
Update Tomcat, Jetty, Undertow and Netty servers so that an SslBundle
is used to apply SSL configuration. Existing `Ssl` properties are
internally adapted to an `SslBundle` using the `WebServerSslBundle`
class. Additionally, if `Ssl.getBundle()` returns a non-null value the
the `SslBundles` bean will be used to find a registered bundle by name.

See gh-34814
2023-04-21 01:02:47 -07:00
Scott Frederick 8e1f24f98f Add SSL bundle auto-configuration support
Add auto-configuration for SSL bundles including new configuration
properties that can be used to define a bundle.

SSL bundle properties are provided under the `spring.ssl.bundle` key.
Currently `jks` and `pem` variants are support. Both are configured
as a `Map` where the bundle name is the key.

A typical example would be:

    spring:
      ssl:
        bundle:
          pem:
            mybundle
              key:
                password: secret
              keystore:
                certificate: classpath:mycert.pem
                private-key: classpath:mykey.pem

A `SslBundleRegistrar` interface is also provided to allow programmatic
contributions to the auto-configured `SslBundleRegistry`.

See gh-34814
2023-04-21 01:01:54 -07:00