Commit Graph

45587 Commits (root-patch-6)
 

Author SHA1 Message Date
Phillip Webb 7ad4a9817d Rewrite nested jar support code and remove Java 8 support
Rewrite nested jar code to better align with the implementations
provided in Java 17. This update makes two fundamental changes to
the previous implementation:

- Resource cleanup is now handled using the `java.lang.ref.Cleaner`

- Jar URLs now use the form `jar:nested:/my.jar/!nested.jar!/entry`

Unlike the previous `jar🫙/my,jar!/nested.jar!/entry` URL format,
the new format is compatible with Java's default Jar URL handler.
Specifically, it now only uses a single `jar:` prefix and it no longer
includes multiple `!/` separators.

In addition to the changes above, many of the ancillary classes have
also been refactored and updated to create cleaner APIs.

Closes gh-37668
1 year ago
Phillip Webb 75ddb9fa47 Fix test failure caused by PropertiesLoader class reference
See gh-37667
1 year ago
Phillip Webb df7dde1467 Add classic loader module and the ability to easily switch implementations
Closes gh-37669
1 year ago
Phillip Webb 55b5610dd9 Add Maven and Gradle option for the loader implementation to use
Add properties to the Maven and Gradle plugins so that users can
switch between the two loader modules.

See gh-37669
1 year ago
Phillip Webb a89057b7c7 Reintroduce spring-boot-loader modules
Restore the `spring-boot-loader` with the previous loader code so
that we can develop it further.

See gh-37669
1 year ago
Phillip Webb aeb6537f57 Rename spring-boot-loader to spring-boot-loader-classic
Rename the `spring-boot-loader` module to `spring-boot-loader-classic`
so that we can introduce an alternative loader implementation.

See gh-37669
1 year ago
Phillip Webb c22548982a Relocate launcher classes
Create alternative launcher classes under the package
`org.springframework.boot.loader.launch` and use them in favor
of the previous location.

This update is designed to improve compatibility with future
changes in the loader.

Closes gh-37667
1 year ago
Scott Frederick f947bad3f7 Merge branch '3.1.x'
Closes gh-37666
1 year ago
Ivo Smid f2a4336ea1 Increase the socket timeout for remote connections to Docker daemon
The default socket timeout with HttpClient 5 is not long enough
in some cases where Docker images are built that require the
GraalVM native image compiler to run in a buildpack. This commit
increases the timeout to 30 minutes.

Fixes gh-37665

Co-authored-by: Scott Frederick <sfrederick@vmware.com>"
1 year ago
Andy Wilkinson 12108e58e9 Merge branch '3.1.x'
Closes gh-37664
1 year ago
Andy Wilkinson 8cf686d925 Merge branch '3.0.x' into 3.1.x
Closes gh-37663
1 year ago
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
1 year ago
Andy Wilkinson 7d40a45b50 Merge branch '3.1.x'
Closes gh-37662
1 year ago
Andy Wilkinson a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
1 year ago
Andy Wilkinson 931584f8af Merge branch '2.7.x' into 3.0.x
Closes gh-37659
1 year ago
Andy Wilkinson 26ff1e907f Merge pull request #37655 from izeye
* gh-37655:
  Use AssertJ's fail, not JUnit's

Closes gh-37655
1 year ago
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
1 year ago
Phillip Webb 3d6859e80f Use the term "uber jar" in reference documentation and javadoc
Update reference documentation and javadoc to use the term "uber jar"
rather than "fat jar".

Closes gh-37653
1 year ago
Phillip Webb 780f75d5a2 Polish 1 year ago
Phillip Webb e3036dcb99 Merge branch '3.1.x'
Closes gh-37658
1 year ago
Phillip Webb 904bd52260 Merge branch '3.0.x' into 3.1.x
Closes gh-37657
1 year ago
Phillip Webb 7bb60fc7c7 Merge branch '2.7.x' into 3.0.x
Closes gh-37656
1 year ago
Phillip Webb ed4ab667a1 Enable LoaderIntegrationTests on aarch64
Closes gh-37654
1 year ago
Phillip Webb 932355adbf Polish adoc formatting 1 year ago
Moritz Halbritter 4cb8077587 Merge pull request #37626 from jonatan-ivanov
* pr/37626:
  Add auto-configuration for CountedAspect and TimedAspect

Closes gh-37626
1 year ago
Jonatan Ivanov a454712dea Add auto-configuration for CountedAspect and TimedAspect
See gh-37626
1 year ago
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
1 year ago
Scott Frederick ff99de49c4 Configure a RestClient.Builder with RestClientTest
This commit adds support for configuring a `RestClient.Builder` and
`MockRestServiceServer` support for the `RestClient` when using
`@RestClientTest` sliced tests.

Closes gh-37033
1 year ago
Andy Wilkinson d725914cd5 Merge branch '3.1.x'
Closes gh-37636
1 year ago
Andy Wilkinson 1e4deed8ce Merge branch '3.0.x' into 3.1.x
Closes gh-37635
1 year ago
Andy Wilkinson 458418be29 Automatically register reflection hints for scanned WebListeners
Closes gh-36008
1 year ago
Andy Wilkinson 426e31695f Merge branch '3.1.x' 1 year ago
Andy Wilkinson 385e6278b7 Merge branch '3.0.x' into 3.1.x 1 year ago
Andy Wilkinson 26b9602596 Merge branch '2.7.x' into 3.0.x 1 year ago
Andy Wilkinson 0205b875a0 Polish 1 year ago
Andy Wilkinson 76eb5ba8c2 Merge branch '3.1.x'
Closes gh-37633
1 year ago
Andy Wilkinson c4bccb2429 Merge branch '3.0.x' into 3.1.x
Closes gh-37632
1 year ago
Andy Wilkinson 04054b6670 Merge branch '2.7.x' into 3.0.x
Closes gh-37631
1 year ago
Andy Wilkinson bfd1a29e53 Exclude AbstractTransactionAspect from lazy init
Fixes gh-37506
1 year ago
Andy Wilkinson 3e9a1cc1f8 Add Awaitility to spring-boot-starter-test
Closes gh-37195
1 year ago
Andy Wilkinson 6d3594db49 Add execution listeners to auto-configured transaction managers
Closes gh-36770
1 year ago
Andy Wilkinson 1a22415c01 Expand customization to any type of TransactionManager
Closes gh-37628
1 year ago
Andy Wilkinson 96986a6b51 Break cycle between TransactionManagerCustomizers and TransactionManager
Closes gh-36801
1 year ago
Moritz Halbritter 72a4e1ebae Honor timeout in ZipkinWebClientSender
Unfortunately there's no good way to configure connect and read timeout
separately, which works for all supported reactive clients. This
implementation applies a timeout through Reactor's timeout method. The
timeout from the properties is summed together and this is the applied
timeout. While not perfect, this is better than no timeout at all.

Closes gh-31496
1 year ago
Scott Frederick 619a0f3b35 Merge branch '3.1.x'
Closes gh-37624
1 year ago
Scott Frederick 6c16ff104e Merge pull request #37497 from JinseongHwang
* pr/37497:
  Use consistent capitalization in MySQL and MariaDB test names

Closes gh-37497
1 year ago
JinseongHwang 0b703f9007 Use consistent capitalization in MySQL and MariaDB test names
See gh-37497
1 year ago
Scott Frederick 228041666b Merge branch '3.1.x'
Closes gh-37622
1 year ago
Scott Frederick 667797f2a8 Merge pull request #37619 from jonasfugedi
* pr/37619:
  Polish "Support IPv6 addresses when configuring RabbitMQ using properties"
  Support IPv6 addresses when configuring RabbitMQ using properties

Closes gh-37619
1 year ago
Scott Frederick fad43adf14 Polish "Support IPv6 addresses when configuring RabbitMQ using properties"
See gh-37619
1 year ago