Commit Graph

1106 Commits

Author SHA1 Message Date
Scott Frederick
bb4226397a Merge branch '3.0.x' into 3.1.x
Closes gh-36541
2023-07-24 16:05:57 -05:00
Scott Frederick
c5d2415834 Merge branch '2.7.x' into 3.0.x
Closes gh-36540
2023-07-24 16:04:28 -05:00
Scott Frederick
90be62bc7a Update Docker images used for launch script tests
Closes gh-24349
2023-07-24 15:46:30 -05: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
Phillip Webb
ae6b1f91f6 Merge branch '3.1.x' 2023-07-18 10:32:06 +01:00
Phillip Webb
28b5b7a218 Merge branch '3.0.x' into 3.1.x 2023-07-18 10:32:01 +01:00
Phillip Webb
9d91dbc4e5 Use explicit matchers following Spring Security 6.0.5 upgrade
See gh-36293
2023-07-18 10:31:41 +01:00
Phillip Webb
49f82717d1 Merge branch '3.1.x' 2023-07-18 10:17:17 +01:00
Phillip Webb
30cc2a48c7 Merge branch '3.0.x' into 3.1.x 2023-07-18 10:16:56 +01:00
Phillip Webb
0233178855 Use explicit matchers following Spring Security 6.0.5 upgrade
See gh-36293
2023-07-18 09:49:11 +01:00
Andy Wilkinson
c3e2c9d684 Polish "Support Jetty in ClientHttpRequestFactories"
See gh-36116
2023-07-04 17:49:07 +01:00
Johnny Lim
7c77e1bb85 Polish 'Log correlation IDs when Micrometer tracing is being used'
See gh-36158
2023-07-02 20:08:45 +01:00
Andy Wilkinson
6d8ca7286a Merge branch '3.1.x'
Closes gh-36128
2023-06-30 08:26:26 +01:00
Andy Wilkinson
a268c6433e Merge branch '3.0.x' into 3.1.x
Closes gh-36127
2023-06-30 08:26:12 +01:00
Andy Wilkinson
93f8bd2170 Merge branch '2.7.x' into 3.0.x
Closes gh-36126
2023-06-30 08:25:53 +01:00
Andy Wilkinson
996252f929 Stop using deprecated classifier property
Closes gh-36125
2023-06-30 08:22:14 +01:00
Andy Wilkinson
e8cbb9ae1b Stop using deprecated JavaExec property in spring-boot-smoke-test-ant
Closes gh-36086
2023-06-27 11:17:50 +01:00
Andy Wilkinson
dbb24286ff Separate stopping and destruction so web server can be restarted
Previously, when a Servlet-based WebServer was stopped it would also
stop the ServletContext. This led to problems as Tomcat and Undertow
would then not allow a restart. Jetty would allow a restart but
duplicate servlet registrations would then be attempted.

This commit modifies the WebServer lifecycle to separate stopping
and destruction for both servlet and reactive web servers. This
allows a WebServer's stop() implementation to leave some components
running so that they can be restarted. To completely shut down a
WebServer destroy() must now be called.

Both Tomcat and Jetty WebServers have been updated to stop their
network connections when stop() is called but leave other components
running. This works with both servlet and reactive web servers.

Note that an Undertow-based Servlet web server does not support
stop and restart. Once stopped, a Servlet Deployment cannot be
restarted and it does not appear to be possible to separate the
lifecycle of its network connections and a Servlet deployment.

Reactor Netty and Undertow-based reactive web servers can now also
be stopped and then restarted. Calling stop() stops the whole server
but this does not cause a problem as there's no (application-exposed)
ServletContext involved. There may be room to optimize this in the
future if the need arises.

Closes gh-34955
2023-06-26 20:58:59 +01:00
Scott Frederick
47cc65d912 Merge branch '3.1.x'
Closes gh-36056
2023-06-23 16:12:58 -06:00
Scott Frederick
c277517953 Polish "Add SslAutoConfiguration to slice test annotations"
See gh-36038
2023-06-23 16:11:49 -06:00
Eddú Meléndez
321c526bf7 Add SslAutoConfiguration to slice test annotations
`SslAutoConfiguration` has been added to `cassandra`, `couchbase`,
`elasticsearch`, `mongo` and `redis` slice test annotations.

See gh-36038
2023-06-23 15:51:42 -06: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
Jonatan Ivanov
228b8eb8e4
Polish log correlation docs
Docs related to gh-33280 (log correlation) and
gh-35593 (application name in each log line) need some polishing:
- Fix project names
- Show how to avoid having the application name duplicated in logs
- Call out that a trailing space is needed in the correlation pattern

Closes gh-36035
See gh-33280
See gh-35593
2023-06-22 14:51:02 -07:00
Phillip Webb
493777d3c9 Include the application name on each log line when it is available
Update Logback and Log4J2 so that they include the application name on
each log line. If `spring.application.name` had not been set, or if
`logging.include-application-name` is `false` then the name is not
logged.

Closes gh-35593
2023-06-22 00:40:51 -07:00
Moritz Halbritter
23979e6ccf Enable LoaderIntegrationTests on Java 21 2023-06-15 10:13:19 +02:00
Andy Wilkinson
9b88128e3b Merge branch '3.0.x' into 3.1.x 2023-06-14 18:19:53 +01:00
Andy Wilkinson
4694e20628 Merge branch '2.7.x' into 3.0.x 2023-06-14 18:19:43 +01:00
Andy Wilkinson
7d07c0d09c Polish configuration related to predictive test selection
Most notably, this commit splits the tests that use Spring REST Docs
out into a separate task for which predictive test selection is
disabled. This allows it to be cached and use Gradle's built-in
up-to-date checking, thereby avoiding the generation of new snippets
and the need to then run the asciidoctor and asciidoctorPdf tasks.

It also updates spring-boot-smoke-test-junit-vintage to disable
predictive test selection so that we can continue to assert that
the some tests were executed.

See gh-35869
2023-06-14 18:15:04 +01:00
Moritz Halbritter
8cc428c0b5 Merge branch '3.0.x' 2023-06-07 10:17:49 +02:00
Moritz Halbritter
372af21313 Merge branch '2.7.x' into 3.0.x 2023-06-07 10:17:14 +02:00
Moritz Halbritter
140e806357 Enable LoaderIntegrationTests on Java 20
See gh-35758
2023-06-07 10:16:54 +02:00
Eddú Meléndez
127f852cf9 Polish spring-boot-smoke-test-data-mongo
Remove `@ImportAutoConfiguration(SslAutoConfiguration.class)`, since
`SslAutoConfiguration.class` is already provided as an
auto-configuration with `@SpringBootTest`

See gh-35655
2023-05-30 17:11:53 -05: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
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
Moritz Halbritter
27169bde8b Merge branch '3.0.x' 2023-05-03 13:07:12 +02:00
Moritz Halbritter
c2dd20f4ea Merge branch '2.7.x' into 3.0.x 2023-05-03 13:07:00 +02:00
Moritz Halbritter
f5eb76074b Disable loader integration tests on aarch64 linux and mac
See gh-35229
2023-05-03 11:32:39 +02:00
Moritz Halbritter
f3d0bc7a99 Disable launch script integration tests on aarch64 linux and mac
See gh-35229
2023-05-03 11:32:33 +02:00
Phillip Webb
8427e813af Support import of idomatic testcontainer declaration classes
Add an `@ImportTestcontainers` annotation which can be used to import
idomatic testcontainer declaration classes.

Closes gh-35245
2023-05-03 00:28:36 -07:00
Phillip Webb
26566d4a30 Allow testcontainer beans to also contribute properties
Allow `Container` bean definitions to inject a `DynamicPropertyRegistry`
so that they can contribute environment properties.

Closes gh-35201
2023-05-03 00:27:13 -07:00
Scott Frederick
a4b81e4326 Polish smoke tests
See gh-35042
2023-05-02 16:34:56 -05:00
Scott Frederick
5ac6a3d90b Add smoke test to verify MongoDB SSL connections
See gh-35042
2023-05-02 15:11:09 -05:00
Scott Frederick
3bb271e320 Add smoke test to verify Redis SSL connection
See gh-34815
2023-05-02 13:52:50 -05:00
Phillip Webb
eabce52b93 Fix TestSampleSessionRedisApplication
Update the `@ServiceConnection` annotation to include the
service connection name.

See gh-35168
2023-05-01 22:13:49 -07:00
Stephane Nicoll
f874c027d8 Polish "Fix dependency management for spring-boot-testcontainers"
See gh-35119
2023-04-25 10:08:20 +02:00
Stephane Nicoll
a323bd90a8 Polish "Reintroduce support for ActiveMQ"
See gh-35048
2023-04-19 13:08:14 +02:00
Phillip Webb
5ac48f5f15 Add testcontainers service connection auto-configuration
Add auto-configuration for `Container` beans that are also
annotated with `@ServiceConnection`. This commit allow
testcontainers to be used at development time and a new section
has been added to the documentation to describe the feature.

Closes gh-35022
2023-04-17 00:49:43 -07:00
Phillip Webb
81a972af8d Refactor testcontainers service connections
Update restcontainers service connections support so that
technology specific `@ServiceConnector` annotations are not longer
required.

A single `@ServiceConnector` annotation can now be used to create
all `ConnectionDetail` beans.

Closes gh-35017
2023-04-17 00:45:39 -07:00
Phillip Webb
11dac5b5b7 Create dedicated spring-boot-testcontainers module
Create a dedicated testcontainers module containing the service
connectors code.

Closes gh-34757
2023-04-17 00:42:31 -07:00
Phillip Webb
00dc942e94 Migrate to Spring Security lambda config
Closes gh-35011
2023-04-14 17:39:48 -07:00
Andy Wilkinson
d4980ea993 Always define connection details beans
Closes gh-34776
2023-04-13 18:02:35 +01:00
Phillip Webb
e9a198a68f Merge branch '3.0.x' 2023-04-12 22:16:35 -07:00
Phillip Webb
8d2f550f8c Merge branch '3.0.x' 2023-04-10 21:14:42 -07:00
Phillip Webb
3ba3558cff Merge branch '2.7.x' into 3.0.x 2023-04-10 21:14:34 -07:00
Phillip Webb
3e9a136143 Polish gradle formatting 2023-04-10 21:14:09 -07:00
Phillip Webb
463701db18 Merge branch '3.0.x' 2023-04-10 16:22:57 -07:00
Phillip Webb
d442bfbeff Polish 2023-04-10 16:22:11 -07:00
Phillip Webb
bb80232fbc Merge branch '3.0.x' 2023-04-07 19:19:04 -04:00
Phillip Webb
25e0954b90 Revert "Set correct Eclipse WTP facet version"
This reverts commit d394ad3d3d.
2023-04-07 19:18:57 -04:00
Phillip Webb
d4c9d265ec Merge branch '3.0.x' 2023-04-07 19:04:19 -04:00
Phillip Webb
d394ad3d3d Set correct Eclipse WTP facet version 2023-04-07 19:03:50 -04:00
Stephane Nicoll
f264e3c65e Upgrade to Hibernate 6.2.0.Final
Closes gh-34876
2023-04-06 16:25:23 +02:00
Andy Wilkinson
95f45eab1f Create service connections from Testcontainers-managed containers
Building upon the auto-configuration support for service connections,
this commit adds support for deriving connection details from a
Testcontainers-managed container. Several service-specific
annotations have been introduced. These annotations can be used on a
container field to indicate that it is a source of the details for
a service connection.

See gh-34658

Co-Authored-By: Phillip Webb <pwebb@vmware.com>
Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
2023-03-24 10:04:21 +00:00
Andy Wilkinson
f06536f642 Polish Authorization Server auto-configuration 2023-03-22 19:26:38 +00:00
Madhura Bhave
e6f602cec0 Polish "Add Spring Authorization Server support"
See gh-34003
2023-03-21 17:00:35 -07:00
Steve Riesenberg
25d77ee70b Add Spring Authorization Server support
See gh-34003
2023-03-21 17:00:35 -07:00
Andy Wilkinson
a878e6c91c Upgrade to Liquibase 4.20.0
Closes gh-34578
2023-03-10 19:32:14 +00:00
Phillip Webb
e7c668ac71 Merge branch '3.0.x' 2023-03-02 22:42:37 -08:00
Phillip Webb
d1f89db9a2 Merge branch '2.7.x' into 3.0.x 2023-03-02 22:10:01 -08:00
Phillip Webb
d39c94f437 Refine ConfigurationProcessorIntegrationTests resource detection logic 2023-03-02 21:52:53 -08:00
Phillip Webb
b07269a018 Merge branch '3.0.x' 2023-02-21 23:20:07 -08:00
Phillip Webb
c4de86c244 Merge branch '2.7.x' into 3.0.x 2023-02-21 23:17:57 -08:00
Phillip Webb
df5898a146 Reformat code following spring-javaformat upgrade 2023-02-21 22:53:27 -08:00
Moritz Halbritter
93a4e303be Fix flaky SampleJettyApplicationTests
See gh-33553
2023-01-31 12:22:01 +01:00
Moritz Halbritter
64c2320ce1 Polish "Merge pull request #33553 from michaelweidmann"
See gh-33553
2023-01-31 11:43:33 +01:00
Michael Weidmann
93d46d11e9 Add max http response header size configuration for tomcat and jetty
See gh-33553
2023-01-31 11:43:33 +01:00
Krzysztof Krason
6e46423983 Use diamond operators
See gh-33987
2023-01-26 20:35:08 -08:00
Phillip Webb
5120242996 Merge branch '2.7.x' into 3.0.x 2023-01-26 19:41:42 -08:00
Krzysztof Krason
a8958471f6 Switch anonymous inner classes to lambdas
See gh-33987
2023-01-26 19:34:22 -08:00
Andy Wilkinson
433364601d Merge branch '2.7.x' 2023-01-11 17:04:33 +00:00
Andy Wilkinson
3b2e5e5292 Remove references to https://repo.spring.io/release 2023-01-11 17:03:45 +00:00
Phillip Webb
a2ac38e203 Update copyright year of changed files 2023-01-09 15:46:07 -08:00
Krzysztof Krason
cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2023-01-09 11:10:20 +01:00
Phillip Webb
f588793445 Update copyright year of changed files 2022-12-22 01:00:42 -08:00
Phillip Webb
6d16aed36e Merge branch '2.7.x' 2022-12-21 22:26:57 -08:00
Phillip Webb
816728186a Clean ant lib folder before build
Update `spring-boot-smoke-test-ant` so that the ant lib folder is always
cleaned. Prior to this commit, it was possible for the folder to contain
stale artifacts.
2022-12-21 22:25:52 -08:00
Phillip Webb
c257f2b1d2 Merge branch '2.7.x' 2022-12-21 11:37:41 -08:00
Phillip Webb
e8e56dbb11 Remove spring-boot-smoke-test-webflux-ssl
Remove `spring-boot-smoke-test-webflux-ssl` since it's more of
an integration test than a smoke test. We could consider
relocating it to `spring-boot-integration-tests` but since we
have unit tests with a mock PCKCS11 security it's probably
best to see if we can get away without it.

See gh-32179
2022-12-21 10:19:03 -08:00
Moritz Halbritter
08659baeba Polish away public modifier on tests 2022-12-16 16:08:44 +01:00
Moritz Halbritter
725337f976 Make fields final
Closes gh-33537
2022-12-16 14:28:44 +01:00
Moritz Halbritter
a4779b7859 Merge branch '2.7.x'
Closes gh-33433
2022-12-01 13:33:43 +01:00
cdanger
716a839d54 Fix bug in webserver start when loading PKCS#11 KeyStore
See gh-32179
2022-12-01 11:53:51 +01:00
Andy Wilkinson
5a3972fee7 Merge branch '2.7.x'
Closes gh-33297
2022-11-22 12:02:15 +00:00
Andy Wilkinson
f638c0070a Merge branch '2.6.x' into 2.7.x
Closes gh-33296
2022-11-22 12:01:42 +00:00
Andy Wilkinson
673d301b88 Make Ant smoke test more robust
Closes gh-33295
2022-11-22 12:01:21 +00:00
Stephane Nicoll
656c4b9390 Polish 2022-11-11 18:29:35 +01:00
Madhura Bhave
8cb615e9b6 Remove workarounds for SecurityContextRepository 2022-11-10 14:23:17 -08:00
Madhura Bhave
f4cf722c27 Align default security filter dispatcher types with Spring Security
Fixes gh-33090
2022-11-10 13:53:47 -08:00
Phillip Webb
82254e3b4d Update smoketests to test isolated actuator object mapper use
See gh-32297
See gh-20291
2022-11-09 22:17:16 -08:00
Phillip Webb
32b9945632 Polish 2022-11-08 23:15:30 -08:00
Andy Wilkinson
b357239861 Upgrade to Jakarta Activation 2.1.0
Closes gh-33045
2022-11-08 11:01:17 +00:00
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
2022-11-07 17:33:38 +00:00
Phillip Webb
d7941c6315 Polish 2022-11-05 18:44:57 -07:00
Phillip Webb
9856286a2d Refine actuator httpexhanges naming
See gh-32885
2022-10-28 12:50:59 -07:00
Phillip Webb
3e50836b1a Rename httptrace endpoint and related classes to httpexchanges
Rename `/actuator/httptrace` to `/actuator/httpexchanges` to better
describe its purpose and to remove confusion with distribute tracing.

This change also takes the opportunity to improve the code by making
the `HttpExchange` class (previously `HttpTrace`) fully immutable.

Closes gh-32885

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
2022-10-27 16:34:42 -07:00
Johnny Lim
5067aab552 Polish
See gh-32840
2022-10-27 16:33:14 +02:00
Phillip Webb
4be3218cb6 Merge branch '2.7.x' 2022-10-25 15:48:26 -07:00
Phillip Webb
c8676a81de Merge branch '2.6.x' into 2.7.x 2022-10-25 15:48:04 -07:00
Scott Frederick
c22e76632c Add Build-Jdk-Spec to jar and war manifest when building with Gradle
This commit adds a `Build-Jdk-Spec` attribute to the manifest in a
jar or war file built with the Spring Boot Gradle plugin. This
aligns the Gradle plugin's behavior with the default Maven plugin
behavior.

This removes the need to set a `BP_JVM_VERSION` environment variable
when invoking Cloud Native Buildpacks, as the Paketo buildpacks will
honor `Build-Jdk-Spec` in a jar or war manifest to determine the
default JVM version.

Fixes gh-32829
2022-10-25 15:48:05 -05:00
Andy Wilkinson
99edda735e Polish 2022-10-25 12:57:58 +01:00
Madhura Bhave
ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2022-10-19 11:46:27 -07:00
Phillip Webb
2e74878ba4 Downgrade to OpenSAML 4.0.1
See gh-32604
2022-10-19 11:46:27 -07:00
Madhura Bhave
cedd553b83 Remove error page security filter
Spring Security now re-applies the authorization rules
to the error page by default. Additionally, it configures
RequestAttributeSecurityContextRepository as the default for
stateless applications allowing those applications to have access
to the original authentication during an error dispatch.

Closes gh-31703
2022-10-19 11:46:27 -07:00
Andy Wilkinson
4f86f685c5 Reinstate support for Infinispan
Closes gh-32556
2022-10-04 11:32:56 +01:00
Phillip Webb
e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2022-10-04 00:29:22 -07:00
Brian Clozel
a0735eb3fb Migrate remaining usage of httpclient API
This commit migrates our remaining usage of the httpclient 4.x to use
instead httpclient5, now that the 4.x support has been removed in
`RestTemplate`.

Closes gh-32461
2022-09-29 18:55:42 +02:00
Brian Clozel
5fb2a50ad0 Adapt build dependencies to httpclient5
As htttpclient 4.x is not supported anymore by `RestTemplate`, this
commit changes such dependencies to httpclient5 instead. In some cases,
the httpclient 4.x was transitively brought by a non-Spring dependency.

See gh-32461
2022-09-29 18:55:41 +02:00
Scott Frederick
2e4529df27 Remove image banner smoke test
See gh-28883
2022-09-29 09:59:27 -05:00
Stephane Nicoll
72fc1f0018 Merge branch '2.7.x'
Closes gh-32512
2022-09-27 08:30:44 +02:00
Stephane Nicoll
9a004a6508 Merge branch '2.6.x' into 2.7.x
Closes gh-32511
2022-09-27 08:30:37 +02:00
Johnny Lim
975affc497 Enable LoaderIntegrationTests with Java 19
See gh-32501
2022-09-27 08:30:13 +02:00
Vedran Pavic
230f2cda84 Migrate to AuthorizationFilter in Spring Security auto-config
This commit updates Servlet based Spring Security auto-configuration
to use AuthorizationFilter, which is intended to supersede
FilterSecurityInterceptor.

See gh-31255
2022-09-22 13:53:54 +01:00
Scott Frederick
f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2022-09-21 14:50:15 -05:00
Andy Wilkinson
2977373505 Polish "Add property to configure Spring Session Redis repository type"
See gh-32205
2022-09-21 17:16:29 +01:00
Vedran Pavic
3093380e35 Add property to configure Spring Session Redis repository type
With Spring Session moving to RedisSessionRepository as the preferred
session repository, Spring Boot auto-configuration should make it
possible to easily switch back to the previous default
(RedisIndexedSessionRepository).

This commit introduces spring.session.redis.repository configuration
property that allows selecting the desired Redis-backed session
repository implementation.

See gh-32205
2022-09-21 17:13:58 +01:00
Andy Wilkinson
64f4da80cb Align with breaking changes in latest Batch snapshots
Batch is now auto-configured to use the context's
PlatformTransactionManager and DataSource or `@BatchDataSource`.
When this does not meet the user's needs, they can use
`@EnableBatchProcessing` or sub-class `DefaultBatchConfiguration` to
take complete control with the auto-configuration backing off.

Closes gh-32330
2022-09-20 15:42:52 +01:00
dreis2211
bac7d62476 Fix Spring Batch deprecations
See gh-32419
2022-09-19 14:31:54 +02:00
Madhura Bhave
b44a7e242c Support Mongo's Stable API in MongoHealthIndicator
Closes gh-30849
2022-09-15 16:48:22 -07:00
Phillip Webb
7f5785182d Switch @SpringBootTest to UseMainMethod.NEVER by default
See gh-22405
2022-09-15 12:37:26 -07:00
Phillip Webb
48f3cd75d4 Refine SpringBootTest.useMainMethod support
Refine `SpringBootContextLoader` so that calls to the main method do
not exit early and the hook is only used when necessary.

See gh-22405
2022-09-15 10:48:58 -07:00
Phillip Webb
41e0bbf4bb Add SpringBootTest.useMainMethod support
Add a new `useMainMethod` attribute to `SpringBootTest` which can be
used to determine how the test should run. The three available options
are:

	- `ALWAYS`
	- `NEVER`
	- `WHEN_AVAILABLE`

The default is `WHEN_AVAILABLE` which will attempt to launch the test
using the `main` method if there is one.

The `SpringBootContextLoader` has been updated to use the new
`SpringApplicationHook` interface when the main method is being used.

Closes gh-22405
2022-09-14 22:37:37 -07:00
Stephane Nicoll
4f6c3ab2b0 Upgrade to JUnit Jupiter 5.9.0
Closes gh-32351
2022-09-14 15:18:40 +02:00
Andy Wilkinson
4e8e5f623b Adapt to recent deprecations in Spring Batch
See gh-32237
2022-09-13 17:44:50 +01:00
Andy Wilkinson
a896fd0a36 Merge branch '2.7.x' 2022-09-10 09:38:18 +01:00
Andy Wilkinson
dffce2553c Merge branch '2.6.x' into 2.7.x 2022-09-10 09:38:09 +01:00
Andy Wilkinson
9fe9f31af1 Polish 2022-09-10 09:38:03 +01:00
Andy Wilkinson
144abee80a Merge branch '2.7.x' 2022-09-10 09:35:08 +01:00
Andy Wilkinson
b512083b3a Merge branch '2.6.x' into 2.7.x 2022-09-10 09:34:57 +01:00
Andy Wilkinson
a262520f08 Disable LoaderIntegrationTests on Java 19 till it GAs
See gh-32280
2022-09-10 09:34:51 +01:00
Stephane Nicoll
aa6e52f029 Merge branch '2.7.x' 2022-09-10 10:32:20 +02:00
Stephane Nicoll
71fa410929 Merge branch '2.6.x' into 2.7.x 2022-09-10 10:32:12 +02:00
Stephane Nicoll
c3416ac97a Disable LoaderIntegrationTests with Java 19
See gh-32295
2022-09-10 10:31:48 +02:00
Phillip Webb
2f78d52c36 Merge branch '2.7.x' 2022-09-08 19:52:40 -07:00
Phillip Webb
55ad2b9371 Remove accidentally committed debug code 2022-09-08 19:52:01 -07:00
Phillip Webb
46be4a3f30 Merge branch '2.7.x' 2022-09-08 19:38:18 -07:00
Phillip Webb
e88a682220 Merge branch '2.6.x' into 2.7.x 2022-09-08 19:37:52 -07:00
Phillip Webb
6e239d551a Update Spring Batch to upstream API changes
Fix Spring Batch tests following upstream changes related to Spring
Batch issue 4130.

Closes gh-32237
2022-09-08 19:35:27 -07:00
Scott Frederick
da4de7d67d Generate the AutoConfiguration.imports file from annotations
This commit adds the `AutoConfigurationImportsAnnotationProcessor` to
the `spring-boot-autoconfigure-processor` annotation processor
module. When added to a project build, the annotation processor will
generate the
`org.springframework.boot.autoconfigure.AutoConfiguration.imports`
file automatically from `@AutoConfiguration`-annotated classes. It
also applies the annotation processor to the Spring Boot build.

Closes gh-31228
2022-09-02 15:10:22 -05:00
Brian Clozel
4aa1efa2d8 Fix build with latest Spring for GraphQL changes 2022-09-01 11:26:04 +02:00
Stephane Nicoll
50c099334b Adapt deprecated getIpAddress call with getHost in Redis Tests
Closes gh-32147
2022-08-23 08:25:52 +02:00
Stephane Nicoll
b19f1cedb3 Merge branch '2.7.x'
Closes gh-32137
2022-08-22 16:09:07 +02:00
thegeekyasian
5b1c6381db Adapt deprecated getIpAddress call with getHost in Redis Tests
See gh-32131
2022-08-22 16:06:21 +02:00
Phillip Webb
4ec2e357d9 Merge branch '2.7.x'
See gh-32086
2022-08-17 12:49:52 -07:00
Phillip Webb
60e1cc510c Merge branch '2.6.x' into 2.7.x
See gh-32085
2022-08-17 12:48:21 -07:00
Phillip Webb
bd74344025 Revert "Don't close jar files early"
This reverts commit b42f056ddb.
2022-08-17 11:38:42 -07:00
Andy Wilkinson
0b9c2025fb Fix handling of String Java version in cache smoke test 2022-08-10 11:49:21 +01:00
Andy Wilkinson
f4ddd3b597 Fix EhCache smoke test when building with a toolchain 2022-08-09 21:58:35 +01:00
Stephane Nicoll
748a1c9dbf Revert "Add missing jaxb dependency for EhCache3 smoke test"
This revert a7f06e0 as the version of EhCache already depends on JAXB.
2022-08-09 09:37:09 +02:00
Stephane Nicoll
a7f06e0989 Merge branch '2.6.x' into 2.7.x 2022-08-09 09:26:17 +02:00
Stephane Nicoll
22a5ccfca7 Add missing jaxb dependency for EhCache3 smoke test
See gh-31137
2022-08-09 09:25:59 +02:00
Andy Wilkinson
ba93e6c0ed Restore support for Jersey
Closes gh-28637
2022-08-08 15:45:20 +01:00
Madhura Bhave
846340ad62 Fix redis prefix in tests
See gh-11574
2022-08-05 14:32:39 -07:00
Madhura Bhave
0991bd3983 Harmonize data configuration
Any classes that rely on Spring Data being on the classpath
have been moved under a data package.

Certain configuration properties have also been updated to
accurately reflect whether Spring Data is required for the
auto-configuration to work.

Closes gh-11574
2022-08-05 13:32:25 -07:00
Andy Wilkinson
c481299002 Merge branch '2.7.x'
Closes gh-31990
2022-08-04 15:46:44 +01:00
Andy Wilkinson
d8e6d9bed8 Merge branch '2.6.x' into 2.7.x
Closes gh-31989
2022-08-04 15:40:48 +01:00
Andy Wilkinson
329fa8d37d Run cache smoke tests against all cache providers
Closes gh-31137
2022-08-04 15:39:36 +01:00
Johnny Lim
6a4681baf5 Polish
See gh-31948
2022-08-02 15:14:23 +02:00
Brian Clozel
38f1bc9793 Reinstate Spring for GraphQL auto-configuration
This commit adds the Spring for GraphQL auto-configuration back
into Spring Boot 3.0, now that a 1.1.0 release is scheduled with the
required baseline. This release also needs GraphQL Java 19.0 as a
baseline.

Closes gh-31809
2022-08-01 14:33:25 +02:00
Phillip Webb
22144987e9 Update copyright year of changed files 2022-07-29 12:10:03 +01:00
Stephane Nicoll
c413f9adbe Merge branch '2.7.x'
Closes gh-31884
2022-07-27 09:23:39 +02:00
Stephane Nicoll
53a652ec65 Merge branch '2.6.x' into 2.7.x
Closes gh-31883
2022-07-27 09:23:05 +02:00
Stephane Nicoll
59139e632b Polish "Disable auto-detection in tests that start Hazelcast"
See gh-31863
2022-07-27 08:30:17 +02:00
Stephane Nicoll
782e3f75b6 Polish Hazelcast configuration
This commit updates the XSD to 4.2 and removes the "tcp-ip" network
option as it is disabled by default.

See gh-31863
2022-07-27 08:15:53 +02:00
Andy Wilkinson
3405a54f9e Exclude Jetty toolchain dependencies in favor of official API artifacts
Closes gh-31720
2022-07-14 13:55:26 +01:00
Andy Wilkinson
4bd3534b7d Adapt to change in Security's filtering behavior
Spring Security now filters every dispatch by default and not only
once-per-request. Security configuration has been updated in a number of
places to restore the old behavior as needed for the tests to pass.
gh-31703 has been opened to review this and to investigate if we can
now remove the error page security filter and rely on the filtering of
every dispatch instead.

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

See gh-31622
See spring-projects/spring-security#11466
2022-07-13 12:09:46 +01:00
Oliver Drotbohm
b10c57551c Upgrade to Hibernate 6.1.1.Final
This commit makes the following potentially breaking changes:

- Dependency management for modules that do not exist in Hibernate
  6.1 has been removed.
- Hibernate's modules are now in the org.hibernate.orm group. Users
  not using the starter or using modules that are not in the starter
  will have to update their build configuration accordingly.
- spring.jpa.hibernate.use-new-id-generator-mappings has been removed
  as Hibernate no longer supports switching back to the old ID
  generator mappings.

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>

Closes gh-31674
2022-07-12 09:36:34 +01:00
Andy Wilkinson
f83f1a5fff Start building against Spring Integration 6.0.0-M4 snapshots
See gh-31624
2022-07-08 12:39:14 +01:00
Andy Wilkinson
e9136e023b Adapt to trailing slashes no longer being matched by default
See gh-31563
2022-07-07 14:16:20 +01:00
dreis2211
458f989cf3 Use switch expressions where appropriate
See gh-31527
2022-06-24 16:19:28 +01:00
Andy Wilkinson
631b1e0d76 Merge branch '2.7.x'
Closes gh-31526
2022-06-24 13:10:10 +01:00
Andy Wilkinson
1e08f545d0 Merge branch '2.6.x' into 2.7.x
Closes gh-31525
2022-06-24 13:05:06 +01:00
Andy Wilkinson
f49b16c645 Upgrade to Spring Java Format 0.0.34
Closes gh-31524
2022-06-24 12:57:52 +01:00
Stephane Nicoll
498f052a7a Fix deprecation warning 2022-06-23 11:53:56 +02:00
Phillip Webb
e6352eee32 Fix import that should have been replaced during merge
See gh-31502
2022-06-22 16:55:50 -07:00
Phillip Webb
b85469a5a5 Merge branch '2.7.x'
Closes gh-31502
2022-06-22 16:33:42 -07:00
Phillip Webb
d64f601dfd Merge branch '2.6.x' into 2.7.x
Closes gh-31501
2022-06-22 16:31:52 -07:00
Guirong Hu
3592292e4b Use ExceptionHandler when Spring MVC uses a different management port
Update `CompositeHandlerExceptionResolver` to search for beans in
all contexts. Note that `BeanFactoryUtils.beansOfTypeIncludingAncestors`
cannot not be used since we need to pick up all beans, even if they
have the same name.

See gh-31495
2022-06-22 16:13:26 -07:00
dreis2211
a639685053 Remove obsolete Java compatibility code
See gh-31452
2022-06-19 10:22:23 +02:00
Andy Wilkinson
3cf6dc25a8 Merge branch '2.7.x'
See gh-31403
2022-06-16 17:34:23 +01:00
Andy Wilkinson
f285d9e7cf Merge branch '2.6.x' into 2.7.x
See gh-31402
2022-06-16 17:33:53 +01:00
Andy Wilkinson
252cf94332 Fix requiresUnpack following Bouncy Castle upgrade
See gh-31400
2022-06-16 17:32:40 +01:00
Andy Wilkinson
d370d19e7a Merge branch '2.7.x'
Closes gh-31403
2022-06-16 12:14:52 +01:00
Andy Wilkinson
5e1cd28d3f Merge branch '2.6.x' into 2.7.x
Closes gh-31402
2022-06-16 12:14:28 +01:00
Lars Grefer
e8a1a0399a Upgrade to Bouncycastle 1.71
Closes gh-31400
2022-06-16 12:14:06 +01:00
Phillip Webb
d84557f1f9 Merge branch '2.7.x'
Closes gh-31396
2022-06-15 10:53:17 -07:00
Phillip Webb
bcbcc53a09 Merge branch '2.6.x' into 2.7.x
Closes gh-31395
2022-06-15 10:51:40 -07:00
Phillip Webb
b42f056ddb Don't close jar files early
Update `JarFile` and related classes so that `close()` is not longer
called early.

Prior to this commit, we would always immediately close the underlying
jar file to prevent file locking issues with our build. This causes
issues on certain JVMs when they attempt to verify a signed jar.

The file lock issues have now been solved by returning a custom input
stream from `JarUrlConnection` which captures and delegates the close
method.

Fixes gh-29356
2022-06-15 10:51:01 -07:00
Stephane Nicoll
b536b209ab Refine assertions on exception messages 2022-06-14 18:20:27 +02:00
Andy Wilkinson
d4be484d27 Upgrade to AssertJ 3.23.1
Closes gh-31331
2022-06-10 13:44:21 +01:00
Andy Wilkinson
ab93bc26c7 Merge branch '2.7.x'
Closes gh-31271
2022-06-08 12:18:36 +01:00
Andy Wilkinson
a0fee42740 Merge branch '2.6.x' into 2.7.x
Closes gh-31270
2022-06-08 12:09:14 +01:00
Andy Wilkinson
0834dc5b01 Polish "Update smoke tests to avoid conflicts with NAME environment variable"
See gh-31267
2022-06-08 12:08:40 +01:00
Vedran Pavic
95e0d6c0f7 Update smoke tests to avoid conflicts with NAME environment variable
This commit updates several smoke tests in order to avoid conflicts
with NAME environment variable that is present in WSL and causes
project build to fail. Previous attempt to fix this in 7da42d71 was
incomplete.

See gh-31267
2022-06-08 11:34:19 +01:00
Andy Wilkinson
4bb5ba2bd0 Merge branch '2.7.x' 2022-05-26 18:26:52 +01:00
Andy Wilkinson
935d1264e0 Merge branch '2.6.x' into 2.7.x 2022-05-26 18:13:08 +01:00
Andy Wilkinson
3d203d0215 Polish 2022-05-26 17:30:39 +01:00
Andy Wilkinson
5dfa5adb75 Merge branch '2.7.x'
Closes gh-31178
2022-05-26 15:54:58 +01:00
Andy Wilkinson
455ee0ce22 Merge branch '2.6.x' into 2.7.x
Closes gh-31177
2022-05-26 15:53:38 +01:00
Andy Wilkinson
ee45fd2fc8 Remove redundant throws declarations from internal APIs
Closes gh-31176
2022-05-26 15:47:35 +01:00
Scott Frederick
4a8e48f07a Merge branch '2.7.x' 2022-05-06 14:49:08 -05:00
Scott Frederick
108b3314db Merge branch '2.6.x' into 2.7.x
Closes gh-30889
2022-05-06 14:44:57 -05:00
Scott Frederick
b0bedc332a Use Testcontainers in Spring Session Reactive smoke tests
Closes gh-30888
2022-05-06 14:38:35 -05:00
Scott Frederick
4f3771f88a Merge branch '2.7.x' 2022-05-05 16:08:18 -05:00
Scott Frederick
7f4b78469e Merge branch '2.6.x' into 2.7.x 2022-05-05 15:59:37 -05:00
Scott Frederick
51343139c2 Remove empty files
See gh-30875
2022-05-05 15:58:55 -05:00
Scott Frederick
03d17dd04a Merge branch '2.7.x' 2022-05-05 15:39:27 -05:00
Scott Frederick
576b72a7a1 Merge branch '2.6.x' into 2.7.x
Closes gh-30877
2022-05-05 15:37:29 -05:00
Scott Frederick
6098b0c91f Merge branch '2.5.x' into 2.6.x
Closes gh-30876
2022-05-05 15:36:57 -05:00
Scott Frederick
8fe47aaebd Remove smoke tests that do nothing without a server
Fixes gh-30875
2022-05-05 15:35:38 -05:00
Scott Frederick
7f395941c7 Add timezone offset to default logging date format patterns
Closes gh-28654
2022-05-03 17:09:27 -05:00
Andy Wilkinson
541ab69aff Merge branch '2.7.x' 2022-05-03 15:18:20 +01:00
Andy Wilkinson
4cd850cfc0 Merge branch '2.6.x' into 2.7.x
Closes gh-30851
2022-05-03 15:17:13 +01:00
Andy Wilkinson
fa327a783d Merge branch '2.5.x' into 2.6.x
Closes gh-30850
2022-05-03 15:14:00 +01:00
Andy Wilkinson
4fd2e0c916 Polish "Fix typos"
See gh-30773
2022-05-03 14:09:53 +01:00
Andy Wilkinson
f6d24dc1a8 Fix typos
See gh-30773
2022-05-03 14:09:37 +01:00
Moritz Halbritter
85a4c94dea Merge branch '2.7.x' 2022-04-25 15:32:08 +02:00
Moritz Halbritter
b406971094 Remove hyphen from asserting-party
spring.security.saml2.relyingparty.registration.*.asserting-party.* is
now named spring.security.saml2.relyingparty.registration.*.assertingparty.*

Closes gh-30785
2022-04-25 15:26:38 +02:00
Andy Wilkinson
061d86e037 Reinstate Session Redis smoke test
See gh-30673
2022-04-25 13:18:56 +01:00
Phillip Webb
c7374fd415 Update copyright year of changed files 2022-04-20 15:30:20 -07:00
Moritz Halbritter
1950d06585 Merge branch '2.7.x' 2022-04-20 08:26:35 +02:00
Moritz Halbritter
6c400daa48 Rename 'identityprovider' property to 'asserting-party'
Rename spring.security.saml2.relyingparty.registration.*.identity-provider.*
to spring.security.saml2.relyingparty.registration.*.asserting-party.*

The old property names are still supported, but will lead to a warning
in the logs.

Closes gh-30642
2022-04-20 08:25:58 +02:00
Brian Clozel
21eab010de Disable Redis Session smoke test
This commit temporarily disables the Redis Session smoke test, as it
relies on the Session Actuator endpoint being present.

Since spring-projects/spring-session#1711, the default session
repository contributed is not of type `FindByIndexNameSessionRepository`
and thus cannot support the Session endpoint use case.

Until gh-30673 is resolved, this test is disabled.

See gh-30673
2022-04-15 16:44:23 +02:00
Andy Wilkinson
9658661bd4 Merge branch '2.7.x' 2022-04-14 14:53:40 +01:00
Andy Wilkinson
7789a18d23 Merge branch '2.6.x' into 2.7.x
Closes gh-30667
2022-04-14 14:51:22 +01:00
Andy Wilkinson
d4348279a7 Merge branch '2.5.x' into 2.6.x
Closes gh-30666
2022-04-14 14:51:09 +01:00
Andy Wilkinson
8f1b8622ba Ensure that webEnvironment=NONE creates non-web context
Previously, if spring.main.web-application-type was configured in
application.properties to servlet or reactive, setting
webEnvironment=NONE on @SpringBootTest would not work correctly and
a servlet or reactive web application context would be created
based on the value of spring.main.web-application-type.

This commit updates the test context bootstapper to set
spring.main.web-application-type to none when webEnvironment has been
set to none. This is done in the merged context configuration's
property source properties which are applied to the environment in a
high-precedence test property source that will override configuration
in application.properties.

Closes gh-29695
2022-04-14 14:44:30 +01:00
Andy Wilkinson
b871a1e457 Merge branch '2.7.x' 2022-04-12 08:51:47 +01:00
Andy Wilkinson
48f8021d88 Migrate @Local*Port annotations to spring-boot-test
Closes gh-29589
2022-04-12 08:48:43 +01:00
Brian Clozel
d476d8e37b Move GraphQL test document files
After changes performed in spring-projects/spring-graphql#338, GraphQL
test documents now have a different test location.
2022-04-04 16:43:47 +02:00
dreis2211
eea4611553 Fix references to JDK 1.8 in READMEs
See gh-30447
2022-03-28 09:38:24 +02:00
Andy Wilkinson
a59f60c614 Merge branch '2.7.x' 2022-03-25 11:15:08 +00:00
Andy Wilkinson
aad59efef2 Merge branch '2.6.x' into 2.7.x
Closes gh-30430
2022-03-25 11:14:57 +00:00
Andy Wilkinson
344aa405ae Merge branch '2.5.x' into 2.6.x
Closes gh-30429
2022-03-25 11:14:46 +00:00
Andy Wilkinson
e36ac6c155 Polish "Enable Java 18 for LoaderIntegrationTests"
See gh-30422
2022-03-25 11:02:57 +00:00