Commit Graph

4649 Commits

Author SHA1 Message Date
Andy Wilkinson
1087827b9a Merge branch '3.0.x' into 3.1.x
Closes gh-37805
2023-10-10 11:27:37 +01:00
Andy Wilkinson
5fcdee6bb5 Merge branch '2.7.x' into 3.0.x
Closes gh-37804
2023-10-10 11:26:39 +01:00
Andy Wilkinson
6df5389d76 Use RedisSeralizer.java(ClassLoader) factory method
Closes gh-37800
2023-10-10 11:25:22 +01:00
Andy Wilkinson
31008def76 Polish "Instrument user-created DataSource for checkpoint-restore"
See gh-37630
2023-10-10 10:27:10 +01:00
Olga MaciaszekSharma
4b5e50ba94 Instrument user-created DataSource for checkpoint-restore
See gh-37630
2023-10-10 10:26:15 +01:00
Andy Wilkinson
48059417b5 Upgrade to Kafka 3.6.0
Closes gh-37777
2023-10-09 13:46:52 +01:00
Moritz Halbritter
0a16ec17e9 Add property to enable key verification on PEM SSL bundles
Closes gh-37727
2023-10-05 09:49:49 +02:00
Moritz Halbritter
fc9c1c0964 Fix ordering related issue in ReactorAutoConfigurationTests
See gh-34201
2023-10-04 11:00:02 +02:00
Moritz Halbritter
5b129ceb09 Switch reactor context propagation from auto to limited
- Polish
- Fix @since tags
- Add a test case
- Update context-propagation version

Closes gh-34201
2023-10-04 09:37:45 +02:00
Moritz Halbritter
30f29dead8 Revert "Temporarily remove auto-config for Reactor context propagation"
This reverts commit 88de3cc089.

See gh-34201
2023-10-04 09:12:27 +02:00
Phillip Webb
560527945b Add background preinitializers for Tomcat and JDK ZoneId
Closes gh-37670
2023-10-03 17:28:44 -07:00
Andy Wilkinson
12108e58e9 Merge branch '3.1.x'
Closes gh-37664
2023-10-03 16:47:11 +01:00
Andy Wilkinson
8cf686d925 Merge branch '3.0.x' into 3.1.x
Closes gh-37663
2023-10-03 16:27:19 +01:00
Andy Wilkinson
6353603d63 Avoid exposing Jetty's WebSocketUpgradeFilter as a bean
When the filter is exposed as a bean (directly or through a
registration bean), it's picked up by the auto-configuration of
MockMvc. This causes a problem as MockMvc does not call init on a
filter before it's used and WebSocketUpgradeFilter fails with a
NullPointerException if its doFilter method is called when its init
method has not been called.

This commit reworks the WebSocket auto-configuration to use a
ServletContextInitalizer to register WebSocketUpgradeFilter rather
than a FilterRegistrationBean. This ensure that the filter is still
registered at the required position in the chain (last filter before
the servlet) while also preventing it from being registered with the
auto-configured MockMvc in tests.

Closes gh-37660
2023-10-03 16:13:24 +01:00
Andy Wilkinson
7d40a45b50 Merge branch '3.1.x'
Closes gh-37662
2023-10-03 11:21:29 +01:00
Andy Wilkinson
a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
2023-10-03 11:05:51 +01:00
Andy Wilkinson
931584f8af Merge branch '2.7.x' into 3.0.x
Closes gh-37659
2023-10-03 10:28:51 +01:00
Johnny Lim
c9932bb73a Use AssertJ's fail, not JUnit's
This commit also updates Checkstyle to prevent use of JUnit's
assertions from being reintroduced.

See gh-37655
2023-10-03 10:11:12 +01:00
Andy Wilkinson
4493958f13 Improve conditions for enabling WebFlux security
This commit correct a mistake where AuthenticationManager was used
instead of ReactiveAuthenticationManager. It also expands the
conditions so that WebFlux security will be enabled when the user
has defined their own SecurityWebFilterChain. In such a situation
no other security-related beans may be needed to use WebFlux
security as things may have been configured directly using the DSL.

Closes gh-37504
2023-09-30 09:06:00 +01:00
Andy Wilkinson
426e31695f Merge branch '3.1.x' 2023-09-29 15:14:32 +01:00
Andy Wilkinson
385e6278b7 Merge branch '3.0.x' into 3.1.x 2023-09-29 15:14:17 +01:00
Andy Wilkinson
26b9602596 Merge branch '2.7.x' into 3.0.x 2023-09-29 15:14:09 +01:00
Andy Wilkinson
0205b875a0 Polish 2023-09-29 15:13:58 +01:00
Andy Wilkinson
76eb5ba8c2 Merge branch '3.1.x'
Closes gh-37633
2023-09-29 15:02:19 +01:00
Andy Wilkinson
c4bccb2429 Merge branch '3.0.x' into 3.1.x
Closes gh-37632
2023-09-29 14:59:06 +01:00
Andy Wilkinson
04054b6670 Merge branch '2.7.x' into 3.0.x
Closes gh-37631
2023-09-29 14:58:52 +01:00
Andy Wilkinson
bfd1a29e53 Exclude AbstractTransactionAspect from lazy init
Fixes gh-37506
2023-09-29 14:16:27 +01:00
Andy Wilkinson
6d3594db49 Add execution listeners to auto-configured transaction managers
Closes gh-36770
2023-09-29 09:54:04 +01:00
Andy Wilkinson
1a22415c01 Expand customization to any type of TransactionManager
Closes gh-37628
2023-09-29 09:54:03 +01:00
Andy Wilkinson
96986a6b51 Break cycle between TransactionManagerCustomizers and TransactionManager
Closes gh-36801
2023-09-29 09:53:34 +01:00
Scott Frederick
228041666b Merge branch '3.1.x'
Closes gh-37622
2023-09-28 16:11:31 -05:00
Scott Frederick
fad43adf14 Polish "Support IPv6 addresses when configuring RabbitMQ using properties"
See gh-37619
2023-09-28 16:07:25 -05:00
csk8167
c1972f6db6 Support IPv6 addresses when configuring RabbitMQ using properties
See gh-37619
2023-09-28 16:06:39 -05:00
shin-mallang
8eac7a91f6 Remove duplicate code in NettyWebServerFactoryCustomizer
Since the PropertyMapper's alwaysApplyingWhenNonNull() has already been
called, the subsequent whenNonNull() is unnecessary.

See gh-37434
2023-09-28 09:51:51 +02:00
Sreekara Reddy
8fad59466c Don't call setValidateConnectionOnBorrow on Oracle UCP datasource
See gh-37501
2023-09-28 09:10:59 +02:00
Phillip Webb
052757c2d8 Polish 2023-09-27 20:58:09 -07:00
Phillip Webb
3591f4d614 Restore test ensuring maxInboundMessageBodySize property matches default
See gh-37603
2023-09-27 18:21:24 -07:00
Andy Wilkinson
4e5f16f2bc Polish "Add config prop for Rabbit's max inbound message body size"
See gh-37603
2023-09-27 19:28:10 +01:00
Gary Russell
954f56287f Add config prop for Rabbit's max inbound message body size
See gh-37603
2023-09-27 19:28:10 +01:00
Andy Wilkinson
f9b4a1ea5b Merge branch '3.1.x' 2023-09-27 19:27:58 +01:00
Andy Wilkinson
6fb252b00c Polish 2023-09-27 19:26:18 +01:00
Andy Wilkinson
4e38469ba2 Merge branch '3.1.x'
Closes gh-37611
2023-09-27 18:16:00 +01:00
Andy Wilkinson
4a3901149b Fix additional metadata location for spring.jmx.registration-policy
Closes gh-37596
2023-09-27 18:15:05 +01:00
Andy Wilkinson
192fb346bc Merge branch '3.1.x'
Closes gh-37610
2023-09-27 18:12:33 +01:00
Andy Wilkinson
1bcd127ad0 Merge branch '3.0.x' into 3.1.x
Closes gh-37609
2023-09-27 18:10:04 +01:00
Andy Wilkinson
c486892a9b Fix additional metadata location for spring.webflux.multipart.streaming
Closes gh-37608
2023-09-27 18:09:14 +01:00
Andy Wilkinson
0d2eaa716c Polish "Add config prop for JMS listener's sessionTransacted flag"
See gh-37473
2023-09-27 15:07:36 +01:00
Vedran Pavic
79e2cb3ec1 Add config prop for JMS listener's sessionTransacted flag
This commit introduces `spring.jms.listener.session-transacted` property
in order to enable explicit configuration of `sessionTransacted` on the
`DefaultMessageListenerContainer`.

Prior to this commit, `sessionTransacted` would be configured implicitly
based on presence of `JtaTransactionManager`.

See gh-37473
2023-09-27 15:06:52 +01:00
Andy Wilkinson
b7facec4a1 Rename spring.jms.listener.acknowledge-mode
Closes gh-37602
2023-09-27 14:41:09 +01:00
Andy Wilkinson
3adc70fd40 Polish "Add properties for JmsTemplate session's ack mode and transacted flag"
See gh-37500
2023-09-27 10:25:19 +01:00
Vedran Pavic
5ba4e2793d Add properties for JmsTemplate session's ack mode and transacted flag
See gh-37500
2023-09-27 10:19:45 +01:00
Andy Wilkinson
b63efd17b8 Merge branch '3.1.x'
Closes gh-37595
2023-09-27 09:48:01 +01:00
Andy Wilkinson
5015327886 Merge branch '3.0.x' into 3.1.x
Closes gh-37594
2023-09-27 09:47:49 +01:00
Andy Wilkinson
6b107530f5 Polish "Use Neo4jManagedTypes to populate the mapping context"
See gh-37574
2023-09-27 09:33:56 +01:00
Michael Simons
e0a5de01ca Use Neo4jManagedTypes to populate the mapping context
See gh-37574
2023-09-27 09:33:37 +01:00
Andy Wilkinson
ecc670772a Make user details service auto-configs back off more readily
Previously auto-configuration of a user details service (imperative
or reactive) would only back off on the presence of certain beans.
This led to situations where the im-memory service was
auto-configured and the default password was logged even though
another authentication mechanism was in use.

This commit updates the auto-configuration so that it backs off
when depending on Spring Security's OAuth2 Client and OAuth2
Resource Server modules. In the imperative case it will also back
off when depending on the SAML 2 provider.

Closes gh-35338
2023-09-26 16:47:19 +01:00
Andy Wilkinson
ab06d10d64 Fix checkpoint-restore with replaced or wrapped HikariDataSource
Closes gh-37580
2023-09-26 12:31:12 +01:00
Andy Wilkinson
ee9c74556d Make reactive security back off without authentication manager
If there's no authentication manager bean or no bean from which
one can be created, Spring Security's reactive support may fail to
bootstrap due to a null authentication manager.

This commit causes the auto-configuration that enables WebFlux
security to back off in the absence of an AuthenticationManager bean
and a ReactiveUserDetailsService (from which Spring Security can
create an AuthenticationManager) bean. Other reactive security
auto-configuration that can configure things such that WebFlux security
can be bootstrapped without an AuthenticationManager has been updated
to enable WebFlux security rather than relying on another
auto-configuration class to do so.

Fixes gh-37504
2023-09-25 15:31:45 +01:00
Andy Wilkinson
a7666ba8a5 Merge branch '3.1.x'
Closes gh-37554
2023-09-22 17:49:23 +01:00
Andy Wilkinson
c838c707d8 Merge branch '3.0.x' into 3.1.x
Closes gh-37553
2023-09-22 17:44:44 +01:00
Andy Wilkinson
e2982a3a07 Merge branch '2.7.x' into 3.0.x
Closes gh-37552
2023-09-22 17:44:30 +01:00
Andy Wilkinson
feae7be0a1 Polish "Fix handling of JMS listener concurrency properties"
See gh-37180
2023-09-22 17:43:57 +01:00
Vedran Pavic
366607f517 Fix handling of JMS listener concurrency properties
Update JMS listener concurrency configuration to set the same minimum
and maximum number of consumers when users specify only the minimum
using `spring.jms.listener.concurrency` property.

Prior to this commit, when using `spring.jms.listener.concurrency` to
set the minimum number of consumers without also specifying
`spring.jms.listener.max-concurrency` would result in effective
concurrency where the actual minimum number of consumers is always 1,
while the maximum number of consumers is the value of
`spring.jms.listener.concurrency`.

See gh-37180
2023-09-22 17:43:56 +01:00
Vedran Pavic
433bd337f4 Rename JMS listener minimum concurrency property
This commit renames `spring.jms.listener.concurrency` property to
`spring.jms.listener.min-concurrency` in order to better align it with
`spring.jms.listener.max-concurrency`.

See gh-37451
2023-09-21 16:17:39 +02:00
Phillip Webb
f55184a998 Update copyright year of changed files 2023-09-20 17:16:31 -07:00
Phillip Webb
2075f6c685 Merge branch '3.1.x' 2023-09-20 17:16:13 -07:00
Phillip Webb
78eb8f90d1 Merge branch '3.0.x' into 3.1.x 2023-09-20 17:12:27 -07:00
Phillip Webb
9b5062e5bb Merge branch '2.7.x' into 3.0.x 2023-09-20 17:06:55 -07:00
Phillip Webb
b83e7b42bb Update copyright year of changed files 2023-09-20 16:05:44 -07:00
Moritz Halbritter
cc214aac40 Merge branch '3.1.x'
Closes gh-37483
2023-09-20 11:30:42 +02:00
Moritz Halbritter
b2dc52fc74 Merge branch '3.0.x' into 3.1.x
Closes gh-37482
2023-09-20 11:30:26 +02:00
Moritz Halbritter
5ec358099c Merge branch '2.7.x' into 3.0.x
Closes gh-37481
2023-09-20 11:29:38 +02:00
Moritz Halbritter
0ed455b058 Apply SAML2 sign-request even if metadata url is set
Closes gh-33747
2023-09-20 10:33:55 +02:00
Moritz Halbritter
8f52990c45 Merge branch '3.0.x' into 3.1.x
Closes gh-37457
2023-09-19 13:16:57 +02:00
Moritz Halbritter
99473362d8 Merge branch '2.7.x' into 3.0.x
Closes gh-37456
2023-09-19 13:16:40 +02:00
Moritz Halbritter
95690f7327 Fall back to all media types if encountering invalid Accept header
A warn log message is printed, and if log level is set to debug, the
exception stacktrace is logged, too.

Closes gh-37455
2023-09-19 09:52:02 +02:00
Moritz Halbritter
bc7414d106 Merge branch '3.1.x' 2023-09-18 16:09:23 +02:00
Moritz Halbritter
7d505dc5b3 Polish JavaDoc 2023-09-18 15:27:07 +02:00
Johnny Lim
8f4ccb0535 Polish
See gh-37393
2023-09-15 11:44:06 +01:00
Moritz Halbritter
73c25d7156 Provide RestClientSsl as a bean
Closes gh-37400
2023-09-15 10:41:37 +02:00
Moritz Halbritter
3b15d46455 Use virtual threads on Spring Data Redis if enabled
Closes gh-35942
2023-09-14 14:30:47 +02:00
Andy Wilkinson
4f6e50b55a Make Spring Pulsar's Caffeine cache provider available to test compile
See gh-34763
2023-09-14 13:01:21 +01:00
Andy Wilkinson
c5f7f11a13 Align with repackaging of CaffeineCacheProvider in Spring Pulsar
See gh-34763
2023-09-14 11:39:39 +01:00
Moritz Halbritter
92500720a7 Polish "Introduce configuration property for strict servlet compliance"
See gh-37242
2023-09-13 10:46:34 +02:00
Yanming Zhou
05b87c5fe8 Introduce configuration property for strict servlet compliance
The property is named spring.servlet.multipart.strict-servlet-compliance

See gh-37242
2023-09-13 10:42:22 +02:00
Johnny Lim
c2b78830ff Polish
See gh-37340
2023-09-13 10:26:54 +02:00
Mahmoud Ben Hassine
626d858d81 Update Batch tests
Related to: https://github.com/spring-projects/spring-batch/issues/4245

Closes gh-37348
2023-09-12 14:05:15 +02:00
Moritz Halbritter
8a1f6d4f32 Merge branch '3.1.x'
Closes gh-37335
2023-09-11 16:50:44 +02:00
Stephane Nicoll
24eadd70ed Adapt to Spring Framework API change
This commit adapts to API changes in Spring Framework, see
spring-projects/spring-framework#31117

Previously, the "autowired" executable to use for a bean was always
resolved, even if a custom code fragment didn't really need it. This
is key for binding of immutable configuration properties as we use an
instance supplier for it.

This changes means that the workaround added in maintenance releases
can be removed.

See gh-37337
2023-09-11 16:03:27 +02:00
Andy Wilkinson
14a59a33dc Test that GraphQL QueryDSL auto-config backs off without Query DSL
See gh-34974
2023-09-11 15:00:22 +01:00
Moritz Halbritter
e2d84fa462 Make SslStoreBundle implementations immutable
Closes gh-37222
2023-09-11 15:39:25 +02:00
Stephane Nicoll
078b399a93 Upgrade to Neo4j Java Driver 5.12.0
Closes gh-37324
2023-09-11 15:15:58 +02:00
Stephane Nicoll
18177451a9 Upgrade to Couchbase Client 3.4.10
Closes gh-37313
2023-09-11 15:15:57 +02:00
Brian Clozel
c951c4c212 Polish GraphQL auto-configuration changes
This commit fixes build issues, as the recent changes surfaced an
existing problem: QueryDsl auto-configurations were not guarded by
classpath conditions for QueryDsl Core.

See gh-34974
2023-09-11 12:55:27 +02:00
Andy Wilkinson
4085425f91 Polish "Support unwrapping in ValidatorAdapter"
See gh-37119
2023-09-11 11:03:33 +01:00
Zisis Pavloudis
eb6b151c41 Support unwrapping in ValidatorAdapter
See gh-37119
2023-09-11 10:42:32 +01:00
Andy Wilkinson
0242ba8a13 Merge branch '3.1.x' 2023-09-11 10:32:34 +01:00
Andy Wilkinson
7754dd290a Merge branch '3.0.x' into 3.1.x 2023-09-11 10:32:24 +01:00
Andy Wilkinson
994bafdfd9 Merge branch '2.7.x' into 3.0.x 2023-09-11 10:32:13 +01:00
Marten Deinum
5141e5c4ac Fix description of brokerUrl property in ArtemisProperties
Update description to refer to url instead of port.

See gh-37260
2023-09-11 10:31:19 +01:00
Stephane Nicoll
0206c30238 Upgrade to Couchbase Client 3.4.10
Closes gh-37297
2023-09-11 10:53:53 +02:00
Stephane Nicoll
a52d7e255b Upgrade to Couchbase Client 3.4.10
Closes gh-37289
2023-09-11 10:51:59 +02:00
Brian Clozel
16940518c1 Polish GraphQL QueryBE and QueryDSL auto-configurations
Closes gh-34974
2023-09-08 17:52:42 +02:00
Brian Clozel
32b65e85ae Add config property for GraphQL Schema Mapping Inspection
This commit adds a new `spring.graphql.schema.inspection.enabled`
property, which is `true` by default.
This property enables the logging at the INFO level of the GraphQL
Schema inspection report.
During startup, Spring for GraphQL will inspect the schema and report
fields and registrations that are unmapped in the application.

Closes gh-36252
2023-09-08 14:58:24 +02:00
dkswnkk
1d7c0108d0 Capitalize order constant in TomcatWebServerFactoryCustomizer
See gh-37211
2023-09-08 11:28:29 +02:00
Andy Wilkinson
ed5d16de84 Upgrade to Jetty 12
Closes gh-36073
2023-09-07 13:59:15 +01:00
Phillip Webb
d9af7cec14 Merge pull request #37197 from onobc
* pr/37197:
  Polish 'Add Pulsar ConnectionDetails support'
  Add Pulsar ConnectionDetails support

Closes gh-37197
2023-09-06 12:26:59 -07:00
Phillip Webb
750c597225 Polish 'Add Pulsar ConnectionDetails support'
See gh-37197
2023-09-06 12:18:09 -07:00
Chris Bono
089fef0392 Add Pulsar ConnectionDetails support
Add `ConnectionDetails` support for Apache Pulsar and provide adapters
for Docker Compose and Testcontainers.

See gh-37197
2023-09-06 12:12:25 -07:00
Moritz Halbritter
d84c81d18f Reduce logging in WelcomePageHandlerMapping on invalid Accept headers
Closes gh-37118
2023-09-06 14:23:27 +02:00
anessi
320dd0e24e Add virtual host support for Rabbit Stream
Add a new property 'spring.rabbitmq.stream.virtual-host' which can be
used to set a custom virtual host for streams.

See gh-37189
2023-09-06 10:17:51 +02:00
Chris Bono
6e7b845bdf Add support for Apache Pulsar
Add support for Apache Pulsar using the Spring for Apache Pulsar
project.

See gh-34763

Co-authored-by: Phillip Webb <pwebb@vmware.com>
2023-09-05 17:01:51 -07:00
Moritz Halbritter
8f78acd548 Merge branch '3.1.x' 2023-09-05 15:28:23 +02:00
Moritz Halbritter
1962f4ecb7 Merge branch '3.0.x' into 3.1.x 2023-09-05 15:24:25 +02:00
Moritz Halbritter
a69ff3bd59 Merge branch '2.7.x' into 3.0.x 2023-09-05 15:21:51 +02:00
Moritz Halbritter
76e51bc92f Only enable needed Couchbase services in integration tests 2023-09-05 15:10:12 +02:00
Andy Wilkinson
41f66fa7ec Merge branch '3.1.x'
Closes gh-37159
2023-08-31 15:23:40 +01:00
Andy Wilkinson
c7063af63a Merge branch '3.0.x' into 3.1.x
Closes gh-37158
2023-08-31 15:23:21 +01:00
Andy Wilkinson
67e1ee5dcf Fix ordering of Jetty's WebSocketUpgradeFilter
Closes gh-37115
2023-08-31 15:22:26 +01:00
Moritz Halbritter
f1f4e9c008 Implement RestClientBuilderConfigurer
Closes gh-36265
2023-08-31 14:01:44 +02:00
Johnny Lim
30eacd553d Add Javadoc since for new setTaskExecutor method
See gh-37117
2023-08-30 11:30:23 +01:00
Stephane Nicoll
19df3934c6 Upgrade to Flyway 9.21.2
Closes gh-37076
2023-08-23 11:27:27 +02:00
Stephane Nicoll
0f20fc2bbe Merge branch '3.1.x' 2023-08-22 14:45:10 +02:00
Stephane Nicoll
10873b0e7c Merge branch '3.0.x' into 3.1.x 2023-08-22 14:45:02 +02:00
Stephane Nicoll
e8d329d99f Polish 2023-08-22 14:44:02 +02:00
Moritz Halbritter
450cd712c9 Merge branch '3.1.x'
Closes gh-37016
2023-08-17 12:18:46 +02:00
Moritz Halbritter
a6b63d285c Merge branch '3.0.x' into 3.1.x
Closes gh-37015
2023-08-17 12:18:11 +02:00
Moritz Halbritter
d3816651ce Merge branch '2.7.x' into 3.0.x
Closes gh-37014
2023-08-17 12:02:33 +02:00
Moritz Halbritter
dc62e5fbc3 Polish "Set max request header size on Netty when using HTTP/2"
See gh-36766
2023-08-17 11:50:18 +02:00
Nerses Aznauryan
ee5b23bb02 Set max request header size on Netty when using HTTP/2
Fix an issue that server.max-http-request-header-size doesn't have an
effect on Netty server with http2 enabled.

See gh-36766
2023-08-17 11:47:01 +02:00
Stephane Nicoll
37467c79d0 Polish "Reuse JOOQ helper to determine the dialect to use"
See gh-36991
2023-08-16 15:56:16 +02:00
Ramil Sayetov
36b5500ad0 Reuse JOOQ helper to determine the dialect to use
See gh-36991
2023-08-16 15:51:44 +02:00
Scott Frederick
73874911ad Adapt to changes in Spring Data snapshots
See gh-36680
2023-08-15 14:30:16 -05:00
Stephane Nicoll
85b4362ec6 Adapt to change in Spring Framework snapshots 2023-08-15 17:08:29 +02:00
Phillip Webb
2ef2529c93 Refine Flyway extension mapping
Change `ConfigurationExtensionMapper` to a helper class that can
create a `Consumer` to use with the `PropertyMapper`.

See gh-36364
2023-08-14 09:25:58 -07:00
Phillip Webb
8edec21a6f Update copyright year of changed files 2023-08-13 20:44:44 -07:00
Phillip Webb
407fa780c8 Polish 2023-08-13 20:44:44 -07:00
Phillip Webb
d73d8f8e4f Merge branch '3.1.x' 2023-08-13 19:15:56 -07:00
Phillip Webb
155300525e Polish 2023-08-13 19:15:38 -07:00
Phillip Webb
848a61a3a8 Merge branch '3.0.x' into 3.1.x 2023-08-13 18:50:33 -07:00
Phillip Webb
9805723415 Update copyright year of changed files 2023-08-13 18:50:13 -07:00
Phillip Webb
a0089c5c76 Merge branch '2.7.x' into 3.0.x 2023-08-13 18:44:36 -07:00
Phillip Webb
46773dd5df Update copyright year of changed files 2023-08-13 18:19:05 -07:00
Phillip Webb
527b2f2cac Polish 2023-08-13 18:18:48 -07:00
Andy Wilkinson
b581ab0d3a Upgrade to Flyway 9.21.1
Closes gh-36887
2023-08-09 20:45:32 +01:00
Andy Wilkinson
6c3c8398d0 Upgrade to Elasticsearch Client 8.9.0
Closes gh-36886
2023-08-09 20:45:31 +01:00
Andy Wilkinson
3c7d400f0d Merge branch '3.1.x'
Closes gh-36866
2023-08-09 13:01:43 +01:00
Andy Wilkinson
cac157b2a6 Merge branch '3.0.x' into 3.1.x
Closes gh-36865
2023-08-09 13:01:33 +01:00
Andy Wilkinson
7c77668372 Merge branch '2.7.x' into 3.0.x
Closes gh-36864
2023-08-09 13:01:23 +01:00
Andy Wilkinson
c1f2efe00c Document that spring.security.filter properties are Servlet-only
Closes gh-33551
2023-08-09 12:56:33 +01:00
Moritz Halbritter
5b00d5f89b Auto-configure SimpleAsyncTaskScheduler when virtual threads are enabled
This auto-configures a new SimpleAsyncTaskSchedulerBuilder bean in the
context. This bean is configured to use virtual threads, if enabled.

SimpleAsyncTaskSchedulerCustomizers can be used to customize the built
SimpleAsyncTaskScheduler.

If virtual threads are enabled, the application task scheduler is
configured to be a SimpleAsyncTaskScheduler.

Adds a new configuration property spring.task.scheduling.simple
.concurrency-limit

Closes gh-36609
2023-08-09 13:43:08 +02:00
Stephane Nicoll
38dbc644ae Add auto-configuration for JdbcClient
Closes gh-36579
2023-08-09 11:18:25 +02:00
Moritz Halbritter
b5a48e926d Handle timeout of latch await in tests 2023-08-08 13:12:48 +02:00
Moritz Halbritter
62fb45f75f Replace contains/put/get pattern with computeIfAbsent 2023-08-08 13:12:47 +02:00
Moritz Halbritter
7bb337aeb1 Polish tests 2023-08-08 13:12:47 +02:00
Moritz Halbritter
ed9169501e Polish 2023-08-08 13:12:47 +02:00
Stephane Nicoll
acf6bb644a Merge branch '3.1.x'
Closes gh-36773
2023-08-07 14:09:07 +02:00
Stephane Nicoll
10fecc855c Merge branch '3.0.x' into 3.1.x
Closes gh-36772
2023-08-07 14:08:57 +02:00
Stephane Nicoll
e7706b4201 Merge branch '2.7.x' into 3.0.x
Closes gh-36771
2023-08-07 14:08:48 +02:00
Stephane Nicoll
5e11bac1da Polish "Configure ActiveMQConnectionFactory properly without spring-jms"
See gh-36767
2023-08-07 14:05:31 +02:00
Eddú Meléndez
bcfaad2cb8 Configure ActiveMQConnectionFactory properly without spring-jms
Previously, if spring-jms is not available and a non-pool connection
factory is requested (the default), no `CachingConnectionFactory` is
created. This commit makes sure to separate the two conditions, so
that a connection factory can be obtained even if spring-jms is not
on the classpath.

See gh-36767
2023-08-07 14:03:27 +02:00
Moritz Halbritter
1a8b8ce26e Revert "Revise synchronized blocks"
This reverts commit 497bbf9c2d.
2023-08-03 17:26:31 +02:00
Moritz Halbritter
d93d05ade2 Revert "Use virtual threads in BackgroundPreinitializer if enabled"
This reverts commit 4bbc336321.
2023-08-03 17:24:56 +02:00
Marc Becker
36e31c0612 Add resource hints for MessageSource
This only registers the default locations, not the one users can provide
via 'spring.messages.basename'.

This is similar to the approach taken for schema.sql and data.sql
in class SqlInitializationScriptsRuntimeHints.

See gh-36682
2023-08-03 12:56:06 +01:00
Andy Wilkinson
8ce5fb5f06 Merge branch '3.1.x'
Closes gh-36701
2023-08-03 12:44:43 +01:00
Andy Wilkinson
664581eb90 Merge branch '3.0.x' into 3.1.x
Closes gh-36700
2023-08-03 12:44:26 +01:00
Andy Wilkinson
c6dc505932 Auto-configure JsonpMapper even with user-defined transport
Closes gh-36698
2023-08-03 12:44:13 +01:00
Moritz Halbritter
4bbc336321 Use virtual threads in BackgroundPreinitializer if enabled
Closes gh-36695
2023-08-03 11:16:16 +02:00
Andy Wilkinson
48813a0e5b Merge branch '3.1.x'
Closes gh-36697
2023-08-03 10:11:43 +01:00
Andy Wilkinson
12a2c615a9 Merge branch '3.0.x' into 3.1.x
Closes gh-36696
2023-08-03 10:10:22 +01:00
Andy Wilkinson
803c155e69 Order default customizers so that they can be overridden
Closes gh-36674
2023-08-03 10:09:27 +01:00
Moritz Halbritter
497bbf9c2d Revise synchronized blocks
- Replace synchronized with Lock when guarding long-running operations
- Remove unnecessary synchronization in FileSystemWatcher
- Replace HashMap with ConcurrentHashMap in Restarter
- Remove unnecessary locking on AtomicBoolean in
  SpringApplicationBuilder
- Remove unnecessary locking in SimpleFormatter

Closes gh-36670
2023-08-03 09:23:46 +02:00
Andy Wilkinson
77e382ec64 Polish "Add support for using an AuthTokenManager with Neo4j"
See gh-36650
2023-08-02 14:30:03 +01:00
Michael Simons
1f0a3901b2 Add support for using an AuthTokenManager with Neo4j
Neo4j Java driver introduced support for an `AuthTokenManager` that can
be used to define expiring tokens for authentication with a database.

This commit adds an `ObjectProvider<AuthTokenManager> authTokenManagers`
parameter to the corresponding auto configuration class. If the provider
resolves to a unique object, that `AuthTokenManager` will have precedence
over any static token.

See gh-36650
2023-08-02 14:30:03 +01:00
Stephane Nicoll
a223834d57 Polish "Order auto-configured ProblemDetailsExceptionHandler beans"
See gh-36288
2023-08-02 15:28:01 +02:00
Maurice Zeijen
9955ee7e8a Order auto-configured ProblemDetailsExceptionHandler beans
Add `@Order(0)` to the WebMVC and Webflux
`ProblemDetailsExceptionHandler` beans. This makes it easier to create
custom `@ControllerAdvice` beans that must be ordered before or after
the `ProblemDetailsExceptionHandler`.

See gh-36288
2023-08-02 15:27:44 +02:00
Moritz Halbritter
3a9fadf30f Enable virtual threads for Kafka listener
Closes gh-36396
2023-08-02 10:59:19 +02:00
Scott Frederick
f2ad08c292 Add since version to deprecated config properties
See gh-36482
2023-08-01 16:13:22 -05:00
Andy Wilkinson
806aa45279 Merge branch '3.1.x'
Closes gh-36661
2023-08-01 18:14:03 +01:00
Andy Wilkinson
0d646d7c26 Polish "Support ServiceConnection beans in slice tests"
See gh-36037
2023-08-01 18:12:53 +01:00
Stephane Nicoll
75bb862255 Remove dead code 2023-08-01 16:51:48 +02:00
Moritz Halbritter
19859a9023 Simplify TaskExecutionAutoConfiguration 2023-08-01 15:40:05 +02:00
Moritz Halbritter
4ba7463d75 Polish 2023-08-01 15:34:52 +02:00
Moritz Halbritter
51008a7d39 Add ThreadPoolTaskSchedulerBuilder and deprecate TaskSchedulerBuilder
Closes gh-36651
2023-08-01 10:32:58 +02:00
Stephane Nicoll
922f66a85d Merge branch '3.1.x'
Closes gh-36654
2023-07-31 17:16:17 +02:00
Michael Simons
ef3b99ee51 Fix test declaration in Neo4jAutoConfigurationTests
The test was annotated `@Bean`, must be `@Test`.

See gh-36649
2023-07-31 17:12:57 +02:00
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