Commit Graph

868 Commits

Author SHA1 Message Date
Stéphane Nicoll eba7a5a077 Update copyright year of changed files
See gh-42901
2024-10-29 13:35:35 +09:00
Tran Ngoc Nhan ff855d9421 Remove redundant null check
See gh-42901
2024-10-29 13:33:55 +09:00
Phillip Webb 36a22fcd59 Unify HTTP client redirect behavior and provide configuration option
Update `ClientHttpRequestFactoryBuilder` implementations to ensure
that all libraries have consistent redirect follow behavior. Following
of redirects is enabled by default.

The `ClientHttpRequestFactorySettings` may be used to change if
redirects should be followed. The `spring.http.client.redirects`
property may also be used to update the default behavior.

Closes gh-42879
2024-10-25 02:45:36 -07:00
Phillip Webb 367912707a Update RestTemplateBuilder to use ClientHttpRequestFactoryBuilder
Refactor the internals of `RestTemplateBuilder` so that the new
`ClientHttpRequestFactoryBuilder` is used to create
`ClientHttpRequestFactory` instance.

See gh-36266
2024-10-25 02:45:35 -07:00
Phillip Webb 0305d1e9d5 Adapt to upstream Spring Framework @MockitoBean changes 2024-10-23 11:11:55 -07:00
Phillip Webb 168d82e138 Polish 2024-10-18 10:47:52 -07:00
Andy Wilkinson 25082d33e7 Provide more control over access to endpoint operations
This commit reworks the support for enabling and disabling endpoints,
replacing the on/off support that it provided with a finer-grained
access model that supports only allowing read-only access to endpoint
operations in addition to disabling an endpoint (access of none) and
fully enabling it (access of unrestricted).

The following properties are deprecated:

- management.endpoints.enabled-by-default
- management.endpoint.<id>.enabled

Their replacements are:

- management.endpoints.access.default
- management.endpoint.<id>.access

Similarly, the enableByDefault attribute on @Endpoint has been
deprecated with a new defaultAccess attribute replacing it.

Additionally, a new property has been introduced that allows an
operator to control the level of access to Actuator endpoints
that is permitted:

- management.endpoints.access.max-permitted

This property caps any access that may has been configured for
an endpoint. For example, if
management.endpoints.access.max-permitted is set to read-only and
management.endpoint.loggers.access is set to unrestricted, only
read-only access to the loggers endpoint will be allowed.

Closes gh-39046
2024-10-17 13:56:44 +01:00
Moritz Halbritter d1976a48dc Upgrade to HttpClient5 5.4
Closes gh-42675
2024-10-17 09:51:39 +02:00
Andy Wilkinson 1b6b9efcb2 Reinstate init of Mockito mocks in test execution listener
Closes gh-42708
2024-10-16 10:22:31 +01:00
Stéphane Nicoll 2728344ccb Disable test temporarily
See https://github.com/spring-projects/spring-framework/issues/33690
2024-10-14 14:38:17 +02:00
Andy Wilkinson 31fada6d3e Start building against Spring Framework 6.2.0 snapshots
See gh-42562
2024-10-09 19:13:04 +01:00
Phillip Webb 7b3077280c Merge branch '3.3.x'
Closes gh-42441
2024-09-24 14:32:48 -07:00
Phillip Webb 100bedc07d Merge branch '3.2.x' into 3.3.x
Closes gh-42440
2024-09-24 14:29:09 -07:00
Phillip Webb ad72411e2b Apply conventions plugin to all subprojects
Closes gh-42438
2024-09-24 14:26:32 -07:00
Phillip Webb 72f379a5b2 Merge branch '3.2.x' into 3.3.x
Closes gh-42434
2024-09-24 13:01:05 -07:00
Phillip Webb eafe61c4ca Backport upgrade to Gradle 8.10.1
Cherry-pick commits d756bf4e86, 083ac67d13 and 162c929a80 to
upgrade to Gradle 8.10.1.

Closes gh-42433
2024-09-24 12:55:29 -07:00
Phillip Webb f5b6514bef Allow additional context interfaces to be defined for testing
Update `AssertableApplicationContext` and `ApplicationContextRunner`
implementations to support additional `ApplicationContext` interfaces.

Closes gh-42369
2024-09-18 23:47:13 -07:00
Andy Wilkinson d756bf4e86 Upgrade build to Gradle 8.10
Closes gh-41980
2024-08-23 12:41:05 +01:00
Phillip Webb f1987e6f8b Update copyright year of changed files 2024-08-19 16:45:34 -07:00
Moritz Halbritter 46150bae89 Merge branch '3.3.x'
Closes gh-41858
2024-08-14 17:20:59 +02:00
Moritz Halbritter 1d45016d8c Upgrade to spring-javaformat 0.0.43
Closes gh-41853
2024-08-14 16:32:41 +02:00
Scott Frederick cc3e62deaf Merge branch '3.3.x'
Closes gh-41850
2024-08-13 16:02:58 -05:00
Scott Frederick cae3a6a3e2 Merge branch '3.2.x' into 3.3.x
Closes gh-41849
2024-08-13 16:02:48 -05:00
Scott Frederick b43d97b359 Document the need to explicitly reset mock servers
When MockServerRestTemplateCustomizer and MockServerRestClientCustomizer
are used directly instead of via auto-configuration, it is necessary to
manually reset the MockRestServiceServer expectations between tests.

Closes gh-41848
2024-08-13 16:01:46 -05:00
Moritz Halbritter f4b4f4f0bf Make PID and application version available in the environment
Adds the following new properties:

- spring.application.pid
- spring.application.version

Refactors the ResourceBanner and the structured logging support to use
the new properties.

Closes gh-41604
2024-08-01 15:03:41 +02:00
Andy Wilkinson e201b94d4f Merge branch '3.3.x'
Closes gh-41616
2024-07-25 16:17:52 +01:00
Andy Wilkinson c642f6d268 Merge branch '3.2.x' into 3.3.x
Closes gh-41613
2024-07-25 16:16:35 +01:00
Andy Wilkinson 5f666eec5b Reduce warnings reported by Eclipse
Closes gh-41598
2024-07-25 14:55:00 +01:00
Phillip Webb 000600c68a Merge branch '3.3.x' 2024-07-22 18:41:53 +01:00
Stéphane Nicoll 2975a8ce3f Fix javadoc warning
The `@deprecated` tag cannot be used on module-info. This commit adapts
the deprecation notice accordingly.

Closes gh-41481
2024-07-14 11:33:46 +02:00
Andy Wilkinson cddf92e047 Polish "Deprecate @MockBean and @SpyBean"
See gh-39864
2024-07-12 13:49:11 +01:00
Jakob Wanger 24763940a0 Deprecate @MockBean and @SpyBean
- Deprecate Deprecate @MockBean and @SpyBean in favor of Spring
  Framework 6.2's @MockitoBean and @MockitoSpy
- Migrate usages of @MockBean and @SpyBean to @MockitoBean and
  @MockitoSpy

Signed-off-by: Jakob Wanger <jakobwanger@gmail.com>

See gh-39864
2024-07-12 12:18:01 +01:00
Stéphane Nicoll 156237227c Migrate MockMvc tests to MockMvcTester
See gh-41198
2024-07-03 15:09:10 +02:00
Phillip Webb d411d4347f Merge branch '3.3.x'
Closes gh-41222
2024-06-24 12:24:40 -07:00
Phillip Webb 726f71a1a8 Merge branch '3.2.x' into 3.3.x
Closes gh-41221
2024-06-24 12:24:27 -07:00
Phillip Webb 57f452fec1 Disable ReactorResourceFactory use of global resources in tests
Add `ContextCustomizerFactory` to automatically disable the use of
`ReactorResourceFactory` global resources in tests.

Fixes gh-38199
2024-06-24 11:22:11 -07:00
Andy Wilkinson b593734edd Merge branch '3.2.x' into 3.3.x
Closes gh-41191
2024-06-21 10:01:22 +01:00
Stéphane Nicoll 17ca0421e7 Upgrade to HtmlUnit 4.2.0 and Selenium HtmlUnit 4.20
Closes gh-41178
Closes gh-41179
2024-06-20 20:18:23 +01:00
Stéphane Nicoll 305bfb1641 Adapt to Mockito support in the Test Context Framework
This commit updates MockitoTestExecutionListener to not handle mocks
as this is already done in the listener provided by the core framework,
and registration can only happen once.

Integration tests have been left as-is to validate that the presence
of both listeners doesn't have an unwanted side effect.

See gh-41177
2024-06-20 20:18:07 +01:00
Stéphane Nicoll 2053e13c09 Adapt to new Placeholder resolution API
See gh-41177
2024-06-20 20:18:07 +01:00
Andy Wilkinson 6110e0ff43 Merge branch '3.2.x'
Closes gh-41184
2024-06-20 19:30:12 +01:00
Stéphane Nicoll e9eeac9028 Use Spring Framework's NoOpResponseErrorHandler
See spring-projects/spring-framework#32750

Closes gh-41183
2024-06-20 18:28:36 +01:00
Phillip Webb 9dda006a18 Merge branch '3.2.x' 2024-06-19 22:55:00 -07:00
Phillip Webb 2a4582b084 Update copyright year of changed files 2024-06-19 22:54:40 -07:00
Phillip Webb 147240aa0c Merge branch '3.2.x'
Closes gh-41080
2024-06-11 13:32:30 -07:00
Phillip Webb bcbcafaab2 Polish "Use method references when possible in test code"
See gh-40974
2024-06-11 12:58:04 -07:00
Ahmed Ashour 207327d97c Use method references when possible in test code
See gh-40974
2024-06-11 12:58:00 -07:00
Phillip Webb 255bcc28e6 Merge branch '3.2.x'
Closes gh-41077
2024-06-11 10:48:52 -07:00
Piyal Ahmed 17adcfc180 Use constructor rather than Collection.addAll
See gh-41053
2024-06-11 09:39:45 -07:00
Moritz Halbritter 000869c25d Merge branch '3.2.x'
Closes gh-41065
2024-06-11 15:01:29 +02:00
Donghoon Lee 8920c2f269 Fix typo in javadoc
See gh-41052
2024-06-11 15:01:06 +02:00
Andy Wilkinson f355080dc8 Merge branch '3.2.x'
Closes gh-40855
2024-05-21 15:48:15 +01:00
Andy Wilkinson 486ceecc9a Use the bean factory to get the type produced by a factory bean
Previously, we only looked at the OBJECT_TYPE_ATTRIBUTE on the
factory bean's definition. This did not work for situations
where the information's provided by the definition's target type
rather than the attribute.

Rather than manually considering the target type in addition to
the existing consideration of the attribute, we now ask the bean
factory for the type that will be produced by the factory bean
instead. This should insulate us from any changes and
enhancements in Framework in the future.

Fixes gh-40234
2024-05-21 15:27:59 +01:00
Moritz Halbritter 6697db257c Merge branch '3.2.x'
Closes gh-40614
2024-05-02 11:56:21 +02:00
Moritz Halbritter 2183b47e62 Merge branch '3.1.x' into 3.2.x
Closes gh-40612
2024-05-02 11:53:21 +02:00
Moritz Halbritter 1534bc8ad2 Polish "Avoid using OkHttp3ClientHttpRequestFactory in test"
See gh-40611
2024-05-02 11:45:23 +02:00
Stéphane Nicoll 20042576e9 Avoid using OkHttp3ClientHttpRequestFactory in test
See gh-40611
2024-05-02 11:45:20 +02:00
Phillip Webb 6963bd884b Merge branch '3.2.x' 2024-04-18 12:53:26 -07:00
Phillip Webb 38af8cd362 Merge branch '3.1.x' into 3.2.x 2024-04-18 12:52:54 -07:00
Phillip Webb 20db2b54c7 Update copyright year of changed files 2024-04-18 12:52:29 -07:00
Scott Frederick 813507b791 Merge branch '3.2.x'
Closes gh-40166
2024-04-03 16:32:13 -05:00
Scott Frederick 1c2a43d1e6 Merge branch '3.1.x' into 3.2.x
Closes gh-40165
2024-04-03 16:30:41 -05:00
Felix 8a42935dad Apply instanceof pattern matching
See gh-40085
2024-04-03 16:30:01 -05:00
Moritz Halbritter 35b39d3a44 Make spring-test available to compile classpath of consumers of spring-boot-test
Closes gh-39901
2024-03-26 13:45:51 +01:00
Andy Wilkinson 102215ee96 Upgrade to HttpClient5 5.3.1
Closes gh-39703
2024-02-22 10:10:05 +00:00
Phillip Webb f8a1dae835 Merge branch '3.2.x' 2024-02-21 15:27:57 -08:00
Phillip Webb 12de6aa46a Merge branch '3.1.x' into 3.2.x 2024-02-21 15:27:27 -08:00
Scott Frederick 51991d6f41 Merge branch '3.2.x'
Closes gh-39536
2024-02-13 13:11:50 -06:00
Scott Frederick 720e9cef16 Make RestTemplateBuilder more compatible with RestClient.Builder
When Spring Framework builds a `RestClient` from a `RestTemplate`, it
will use any `UriTemplateHandler` that has been set on the
`RestTemplate` if the provided `UriTemplateHandler` is also a
`UriBuilderFactory`. Prior to this commit, Spring Boot's
`RestTemplateBuilder#rootUri` set a `UriTemplateHandler` on the created
`RestTemplate`, but it was not a `UriBuilderFactory` so `RestClient`
would not consider it.

With this commit, `RestTemplateBuilder#rootUri` sets a
`UriTemplateHandler` that is also a `UriBuilderFactory` so that any
root URI that is set on the `RestTemplateBuilder` will be applied to a
`RestClient` also.

Fixes gh-39317
2024-02-13 13:10:55 -06:00
Moritz Halbritter 7f55cae90f Merge branch '3.2.x' 2024-02-12 10:19:46 +01:00
Moritz Halbritter 4387b79831 Merge branch '3.1.x' into 3.2.x 2024-02-12 10:18:46 +01:00
Moritz Halbritter 8ffcfc9b77 Harmonize style of igored exceptions across the codebase 2024-02-12 10:14:20 +01:00
Moritz Halbritter acf758aea9 Merge branch '3.2.x' 2024-01-25 11:06:36 +01:00
Moritz Halbritter c47430d842 Merge branch '3.1.x' into 3.2.x 2024-01-25 11:06:25 +01:00
Moritz Halbritter df755db1f3 Ensure that remaining mocks are closed before initializing a test
Closes gh-39271
2024-01-25 10:57:45 +01:00
Moritz Halbritter 9146ce5515 Merge branch '3.2.x' 2024-01-25 10:19:49 +01:00
Moritz Halbritter 36b70d7b16 Merge branch '3.1.x' into 3.2.x 2024-01-25 10:19:37 +01:00
Moritz Halbritter 930669888a Add more integration tests for MockitoTestExecutionListener 2024-01-25 10:18:59 +01:00
Phillip Webb 8f1a330dd5 Update copyright header of cleaned up code
See gh-39259
2024-01-23 10:18:50 -08:00
Tobias Lippert def7523398 Inline redundant if statements
See gh-39259
2024-01-23 09:07:35 -08:00
Tobias Lippert 9cdd0c3776 Remove unnecessary semicolons
See gh-39259
2024-01-23 09:07:29 -08:00
Moritz Halbritter 43296d019e Merge branch '3.2.x'
Closes gh-39273
2024-01-23 09:27:25 +01:00
Moritz Halbritter 46304a7821 Merge branch '3.1.x' into 3.2.x
Closes gh-39272
2024-01-23 09:24:29 +01:00
Moritz Halbritter c87d5eeb28 Ensure that remaining mocks are closed before initializing a test
Closes gh-39271
2024-01-23 09:17:17 +01:00
Andy Wilkinson 17e9f0cb8e Merge branch '3.2.x'
Closes gh-39093
2024-01-11 11:36:38 +00:00
Andy Wilkinson 7087897507 Merge branch '3.1.x' into 3.2.x
Closes gh-39091
2024-01-11 10:33:57 +00:00
Andy Wilkinson 45c32854a5 Fix Checkstyle upgrade
Closes gh-38746
2024-01-10 15:37:38 +00:00
Andy Wilkinson 28490738ae Revert "Upgrade to HttpClient5 5.3"
This reverts commit 31f3f31ac1.

See gh-39007
2024-01-05 11:40:41 +00:00
Andy Wilkinson 31f3f31ac1 Upgrade to HttpClient5 5.3
Closes gh-39007
2024-01-04 17:32:10 +00:00
Andy Wilkinson a1c7c0bccc Upgrade to AssertJ 3.25.1
Closes gh-38997
2024-01-04 17:26:35 +00:00
Phillip Webb 246a0e6f21 Merge branch '3.1.x'
Closes gh-38878
2023-12-19 23:10:49 -08:00
Yanming Zhou 8cb8999772 Ban call of URLEncoder.encode/URLDecoder.decode(String,String)
Add ArchUnit rules to ban the use of `URLEncoder` calls with String
charsets and use `Charset` calls instead.

See gh-38740
2023-12-19 23:10:18 -08:00
Phillip Webb 5354ad15b3 Merge branch '3.1.x'
Closes gh-38877
2023-12-19 22:51:48 -08:00
Yanming Zhou 8599e5a986 Remove unnecessary `toString()` calls
See gh-38739
2023-12-19 22:38:34 -08:00
Yanming Zhou 84f7c2dba9 Remove unnecessary `final` modifiers
See gh-38739
2023-12-19 22:38:14 -08:00
Moritz Halbritter 6330190913 Merge branch '3.1.x'
Closes gh-38728
2023-12-11 09:44:19 +01:00
Yanming Zhou ebfbc0ef05 Cleanup kotlin sources
1. remove unused imports
2. remove redundant semicolon
3. remove empty class body
4. remove redundant 'constructor' keyword
5. remove redundant 'Unit' return type
6. use non-null type if possible

See gh-38708
2023-12-11 09:23:42 +01:00
Moritz Halbritter 4a851c1c90 Merge branch '3.1.x' 2023-11-08 09:53:53 +01:00
Moritz Halbritter 357c2124c4 Merge branch '3.0.x' into 3.1.x 2023-11-08 09:53:40 +01:00
Moritz Halbritter 0a6b723098 Merge branch '2.7.x' into 3.0.x 2023-11-08 09:53:29 +01:00