Commit Graph

675 Commits

Author SHA1 Message Date
Andy Wilkinson 132bf686f8 Merge branch '2.7.x' 2022-02-22 20:13:28 +00:00
Andy Wilkinson 2d9177dd9d Merge branch '2.6.x' into 2.7.x
Closes gh-29955
2022-02-22 20:11:47 +00:00
Andy Wilkinson 3614c8d1f8 Merge branch '2.5.x' into 2.6.x
Closes gh-29954
2022-02-22 20:08:31 +00:00
Andy Wilkinson 1e8d29f7aa Configure Kotlin compilation JVM target by convention
Closes gh-29952
2022-02-22 18:11:51 +00:00
Moritz Halbritter d42f675959 Merge branch '2.7.x' 2022-02-21 10:36:05 +01:00
Moritz Halbritter d7b229d3c7 Rename AutoConfigurationLoader to ImportCandidates
Move the class to a more suitable package, and load the files from
META-INF/spring/<fqn>.imports

See gh-29872
2022-02-21 10:34:38 +01:00
Moritz Halbritter 42808ff13c Merge branch '2.7.x'
# Conflicts:
#	spring-boot-project/spring-boot-actuator-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-autoconfigure/src/main/resources/META-INF/spring.factories
#	spring-boot-project/spring-boot-test-autoconfigure/src/main/resources/META-INF/spring.factories
2022-02-17 10:56:23 +01:00
Moritz Halbritter 7c96294641 Move our auto-configurations from spring.factories to new file
Closes gh-29873
2022-02-17 10:18:46 +01:00
Moritz Halbritter 303979fb65 Merge branch '2.7.x' 2022-02-17 09:17:35 +01:00
Moritz Halbritter 7d68b58c8f Load auto-configurations from META-INF/spring-boot
Implements a new AutoConfigurationLoader, which loads
auto-configurations from a file in META-INF/spring-boot.

Adapts the AutoConfigurationImportSelector to use the new loader.

Adapts the ImportAutoConfigurationImportSelector to use the new loader.

Adapts the metadata plugin in the build to additionally load the
auto-configurations from the new file.

Updates the documentation for auto-configurations and test slices.

Closes gh-29872
2022-02-17 09:17:23 +01:00
Phillip Webb ff4b92a3ba Update copyright year of changed files 2022-02-16 20:44:54 -08:00
Stephane Nicoll 39e230b5d6 Merge branch '2.6.x' into 2.7.x 2022-02-16 16:51:37 +01:00
Stephane Nicoll 78797572ac Merge branch '2.5.x' into 2.6.x 2022-02-16 16:51:27 +01:00
Stephane Nicoll fa6a1463d0 Polish 2022-02-16 16:51:16 +01:00
Moritz Halbritter fdb1010cbc Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
2022-02-16 15:48:27 +01:00
Moritz Halbritter 8e99788fc8 Migrate auto-configurations to @AutoConfiguration
Closes gh-29871
2022-02-16 13:55:16 +01:00
Stephane Nicoll 587b278bb4 Merge branch '2.7.x' 2022-02-16 11:27:10 +01:00
Stephane Nicoll 719fb2e8e5 Upgrade to Jetty 9.4.45.v20220203
Closes gh-29843
2022-02-16 09:46:10 +01:00
Stephane Nicoll dc171c6462 Upgrade to Jetty 9.4.45.v20220203
Closes gh-29791
2022-02-14 13:43:43 +01:00
Stephane Nicoll a99582a3bb Upgrade to Jetty 9.4.45.v20220203
Closes gh-29771
2022-02-14 13:43:23 +01:00
Stephane Nicoll 3b4832445b Merge branch '2.7.x' 2022-02-05 14:02:00 +01:00
Stephane Nicoll 098a57affb Upgrade to R2DBC Borca-RELEASE
See gh-28524
2022-02-05 13:37:20 +01:00
Stephane Nicoll 8c8c9c5f28 Upgrade to H2 2.1.210
H2 2.x contains several important changes such as moving the primary key
generation mechanism to a sequence-based identifier. This commit fixes
a number of tests that were failing.

Closes gh-29651

Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>
2022-02-05 13:36:53 +01:00
Stephane Nicoll b22e3d51dc Merge branch '2.7.x' 2022-02-04 10:10:29 +01:00
Henning Poettker e3d0f1feee Adjust IDENTITY in DDLs for H2 2.x compatibility
See gh-29200
2022-02-04 09:57:59 +01:00
Phillip Webb a282f912e6 Organize imports
Organize imports according to updated checkstyle rules.
2022-02-02 19:16:13 -08:00
Stephane Nicoll 41fb9cf562 Merge branch '2.7.x' 2022-02-01 11:15:49 +01:00
Stephane Nicoll f812b33cbd Merge branch '2.6.x' into 2.7.x
Closes gh-29613
2022-02-01 11:07:31 +01:00
Stephane Nicoll 136b5959c3 Merge branch '2.5.x' into 2.6.x
Closes gh-29612
2022-02-01 10:59:08 +01:00
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
2022-02-01 10:03:18 +01:00
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
2022-02-01 09:37:15 +01:00
Andy Wilkinson 35b5b5672d Merge branch '2.7.x' 2022-01-20 12:37:16 +00:00
Andy Wilkinson 2c049f2b40 Merge branch '2.6.x' into 2.7.x
Closes gh-29501
2022-01-20 12:36:49 +00:00
Madhura Bhave 3460c24a16 Ignore context path when calling privilege evaluator
Previously, the error page security filter passed the request's URI
to the privilege evaluator. This was incorrect in applications with
a custom context path as the privilege evaluator must be passed a
path that does not include the context path and the request URI
includes the context path.

This commit updates the filter to use UrlPathHelper's
pathWithinApplication instead. The path within the application does
not include the context path. In addition, pathWithinAppliation
also correctly handles applications configured with a servlet
mapping other than the default of /.

Closes gh-29299

Co-Authored-By: Andy Wilkinson <wilkinsona@vmware.com>
2022-01-20 12:36:18 +00:00
Andy Wilkinson 1fa541d4de Merge branch '2.7.x' 2022-01-19 17:24:42 +00:00
Andy Wilkinson fa9a4a6452 Merge branch '2.6.x' into 2.7.x 2022-01-19 17:24:29 +00:00
Andy Wilkinson 4c422b9f3c Merge branch '2.5.x' into 2.6.x 2022-01-19 17:24:17 +00:00
Andy Wilkinson b60612dabb Disable LoaderIntegrationTests when Docker's unavailable
Closes gh-29385
2022-01-19 17:23:30 +00:00
Phillip Webb 13f6729b37 Merge branch '2.7.x' 2022-01-18 18:49:08 -08:00
Phillip Webb e95c514fd5 Merge branch '2.6.x' into 2.7.x 2022-01-18 18:48:53 -08:00
Phillip Webb f6cdc27b2a Merge branch '2.5.x' into 2.6.x 2022-01-18 18:48:40 -08:00
Phillip Webb eca05c42fb Further refine LoaderIntegrationTests for CI
Update `LoaderIntegrationTests` to filter compatible JDKs early.

See gh-29385
2022-01-18 18:47:41 -08:00
Phillip Webb e18cbe5fe2 Merge branch '2.7.x' 2022-01-18 18:19:46 -08:00
Phillip Webb 8aacf4cb36 Merge branch '2.6.x' into 2.7.x 2022-01-18 18:19:07 -08:00
Phillip Webb 392de30390 Merge branch '2.5.x' into 2.6.x 2022-01-18 18:18:56 -08:00
Phillip Webb de8f8c3e64 Refine LoaderIntegrationTests for CI
Refine `LoaderIntegrationTests` to fix failures when CI builds are
running with later JDK versions.

See gh-29385
2022-01-18 18:16:47 -08:00
Phillip Webb 2d1854a682 Merge branch '2.7.x' 2022-01-18 17:42:34 -08:00
Phillip Webb 1f77533b09 Merge branch '2.6.x' into 2.7.x
Closes gh-29463
2022-01-18 17:37:10 -08:00
Phillip Webb 44537d4494 Merge branch '2.5.x' into 2.6.x
Closes gh-29462
2022-01-18 17:36:59 -08:00
Phillip Webb 3d908079ef Run LoaderIntegrationTests against multiple JDKs
Update `LoaderIntegrationTests` to run against OpenJDK 8, 11 and 17 as
well as Oracle JDK 17.

Closes gh-29385
2022-01-18 17:36:48 -08:00
Andy Wilkinson 26fecbe230 Upgrade to Thymeleaf and Security Extras 3.1.0-M1
Closes gh-49452
Closes gh-49453
2022-01-18 16:01:29 +00:00
Andy Wilkinson 12cd97a20c Reinstate support for Thymeleaf 2022-01-18 16:01:29 +00:00
Phillip Webb cb97aff1e7 Merge branch '2.7.x' 2022-01-14 13:57:35 -08:00
Phillip Webb 9278a502c7 Merge branch '2.6.x' into 2.7.x 2022-01-14 13:57:25 -08:00
Phillip Webb 14fe9347b5 Merge branch '2.5.x' into 2.6.x 2022-01-14 13:56:47 -08:00
Phillip Webb 3f7bf7d34f Modify SpringApplication Environment rather than setting it
Update `SpringBootContextLoader` so that when possible the
`SpringApplication` remains in control of creating the `Environment`
instance.

Prior to this commit, we would always create the `Environment` in the
`SpringBootContextLoader` and then call `setEnvironment` on the
`SpringApplication`. This meant that the `ApplicationEnvironment`
classes were not used and that `isCustomEnvironment` was set to `true`
so no conversion was applied.

With the updated code, an `ApplicationListener` is used to mutate the
`Environment` instance and add the required test property sources.

Fixes gh-29169
2022-01-14 13:47:22 -08:00
Phillip Webb 13f257a706 Merge branch '2.7.x' 2022-01-12 15:44:47 -08:00
Phillip Webb 8147eb6d6d Merge branch '2.6.x' into 2.7.x 2022-01-12 15:43:44 -08:00
Phillip Webb e7fe371927 Merge branch '2.5.x' into 2.6.x 2022-01-12 15:43:11 -08:00
Phillip Webb 27ad0804f5 Update copyright year of changed files 2022-01-12 15:42:25 -08:00
Phillip Webb 3d6840e715 Merge branch '2.7.x'
Closes gh-29376
2022-01-12 15:32:51 -08:00
Phillip Webb fee45e056a Merge branch '2.6.x' into 2.7.x
Closes gh-29375
2022-01-12 15:32:34 -08:00
Phillip Webb 91d2b1b988 Merge branch '2.5.x' into 2.6.x
Closes gh-29374
2022-01-12 15:32:00 -08:00
Phillip Webb eb6b48fff0 Use side-effect free environment with tests rather than converting
Refine the logic introduced in 64270eca to use a side-effect free
Environment implementation rather than converting the Environment early.

Early conversion can cause condition evaluation issues if
`src/test/resources/application.properties` files are bound to the
`SpringApplication`. Specifically the `spring.main.web-application-type`
property can change the `Environment` type which must happen before
conditions are evaluated.

Fixes gh-29169
2022-01-12 14:21:52 -08:00
Phillip Webb 1b7db2750d Merge branch '2.7.x'
Closes gh-29373
2022-01-12 14:08:04 -08:00
Phillip Webb e1c84e2972 Merge branch '2.6.x' into 2.7.x
Closes gh-29372
2022-01-12 14:07:48 -08:00
Phillip Webb 72696cdb0f Merge branch '2.5.x' into 2.6.x
Closes gh-29371
2022-01-12 14:07:31 -08:00
Phillip Webb 7c16668bf3 Log Docker output to aid debugging
Add an SLF4J logger so that we can see real time output of the
Docker container.

See gh-29370
2022-01-12 14:03:27 -08:00
Stephane Nicoll 69d1c3674a Upgrade to latest Hazelcast 3.x in integration tests 2022-01-06 17:41:26 +01:00
Stephane Nicoll a780e87e9c Upgrade to Hazelcast 5.0.2
See gh-29265
2022-01-06 17:38:06 +01:00
Phillip Webb 06398eabed Merge branch '2.7.x' 2022-01-04 12:26:24 -08:00
Phillip Webb b25e92f3e2 Merge branch '2.6.x' into 2.7.x 2022-01-04 12:24:34 -08:00
Phillip Webb 760dcffd8b Merge branch '2.7.x' 2022-01-04 12:22:54 -08:00
Andy Wilkinson 1dbfcf8b57 Reinstate support for Spring Data Couchbase
Closes gh-28976
2022-01-04 16:38:16 +00:00
dreis2211 d8deee7cf6 Update to JDK 17 in launch script tests
See gh-29201
2022-01-04 16:24:12 +01:00
izeye 728206dba0 Polish GraphQL changes
See gh-29140
Closes gh-29194
2022-01-03 17:36:57 +01:00
Brian Clozel 88ee4fab36 Polish
See gh-29140
2021-12-21 10:33:51 +01:00
Brian Clozel f61c87c3a7 Revert "Merge branch '2.7.x'"
This reverts commit f0677a119c, reversing
changes made to 938d58f32c.
2021-12-21 09:05:06 +01:00
Brian Clozel f0677a119c Merge branch '2.7.x' 2021-12-21 09:04:10 +01:00
Brian Clozel c522a8007b Add smoke test for Spring GraphQL
See gh-29140
2021-12-21 08:34:49 +01:00
Madhura Bhave 48a6470ddb Merge branch '2.7.x' into main 2021-12-17 17:51:48 -08:00
Madhura Bhave d9d161cd6b Allow previously authorized users to access the error page
Prior to this commit, the `ErrorPageSecurityFilter` verified if
access to the error page was allowed by invoking the
`WebInvocationPrivilegeEvaluator` with the Authentication from the
`SecurityContextHolder`.
This meant that access to the error page was denied for a `null` Authentication
 or `AnonymousAuthenticationToken` in cases where the error page required
authenticated access. This prevented authorized users from accessing the
error page in case the Authentication wasn't retrievable for the error dispatch,
which is the case for `@Transient` authentication or stateless session policy.

This commit updates the `ErrorPageSecurityFilter` to check access to the error page
only if the error is an authn or authz error in cases where an authentication object
is not found in the SecurityContextHolder. This makes the error response consistent
when bad credentials or no credentials are used while also allowing access to previously
authorized users.

Fixes gh-28953
2021-12-17 16:58:58 -08:00
Phillip Webb 7981a82785 Merge branch '2.7.x' 2021-12-16 13:50:15 -08:00
Phillip Webb f676602c96 Merge branch '2.5.x' into 2.6.x 2021-12-16 13:49:12 -08:00
Phillip Webb 783981ba98 Merge branch '2.4.x' into 2.5.x 2021-12-16 13:48:25 -08:00
Phillip Webb d336a96b7f Update web.xml xsd references to for 3.1 version
See gh-29075
2021-12-16 13:45:12 -08:00
Phillip Webb 003fb229fd Merge branch '2.7.x' 2021-12-16 13:07:22 -08:00
Phillip Webb c0023118a9 Merge branch '2.7.x'
Closes gh-29079
2021-12-15 22:19:36 -08:00
Phillip Webb 6e01c3edbe Merge branch '2.5.x' into 2.6.x
Closes gh-29077
2021-12-15 22:17:22 -08:00
Phillip Webb 17363d1b3a Merge branch '2.4.x' into 2.5.x
Closes gh-29076
2021-12-15 22:16:37 -08:00
Phillip Webb 1749c893dc Update web-app version to 3.1
Update the web-app version specified in `web.xml` to 3.1 in order to
make Eclipse happy.

Closes gh-29075
2021-12-15 22:14:52 -08:00
Andy Wilkinson 3b23c542a0 Test servlet 3.1 compatibility in deployment tests
Closes gh-28906
2021-12-09 12:24:43 +00:00
Andy Wilkinson fe7b13ec46 Upgrade to Spring Framework 6 and Jakarta EE 9
Closes gh-28619
Closes gh-28620
Closes gh-28621
Closes gh-28622
Closes gh-28623
Closes gh-28624
Closes gh-28625
Closes gh-28626
Closes gh-28627
Closes gh-28628
Closes gh-28629
Closes gh-28630
Closes gh-28631
Closes gh-28632
Closes gh-28633
Closes gh-28634
Closes gh-28635
Closes gh-28636
Closes gh-28638
Closes gh-28639
Closes gh-28640
Closes gh-28644
Closes gh-28645
Closes gh-28650
Closes gh-28711
Closes gh-28866
Closes gh-28867
Closes gh-28868
Closes gh-28872

See gh-28641
See gh-28642
See gh-28643
See gh-28646
See gh-28647
See gh-28648
See gh-28649
See gh-28721
See gh-28869
See gh-28871
2021-11-30 20:32:16 +00:00
Andy Wilkinson b6ba46942b Remove Atmosphere sample to prepare for Servlet 5 upgrade
Closes gh-28786
2021-11-30 15:55:49 +00:00
Andy Wilkinson c25890354b Remove Hazelcast 3 smoke test to prepare for Hazelcast 5 upgrade
Closes gh-28827
2021-11-30 15:55:49 +00:00
Andy Wilkinson 90e8a7da3a Remove Hibernate 5.2 smoke test to prepare for EE 9 upgrade
Closes gh-28826
2021-11-30 15:55:49 +00:00
Andy Wilkinson 28bce49057 Remove Jetty 10 smoke tests to prepare for Jetty 11 upgrade
Closes gh-28825
2021-11-30 15:55:48 +00:00
Andy Wilkinson ba19440f8c Drop support for EhCache 3 until it supports Jakarta EE 9
Closes gh-28800
2021-11-30 15:55:48 +00:00
Andy Wilkinson a17d6f9791 Drop support for Infinispan until it is Jakarta EE 9 compatible
Closes gh-28799
2021-11-30 15:55:48 +00:00
Scott Frederick 015dca1956 Remove support for Thymeleaf
Closes gh-28611
2021-11-30 15:55:47 +00:00