Commit Graph

33172 Commits

Author SHA1 Message Date
dreis2211
267283e3cd Handle null items as advertized in the Javadoc
See gh-22344
2020-07-16 14:17:53 +02:00
Andy Wilkinson
85d1f5396e Update JDK 14 CI image to use 14.0.2_12
Closes gh-22356
2020-07-16 11:02:57 +01:00
Andy Wilkinson
9454f934c7 Merge branch '2.3.x'
Closes gh-22355
2020-07-16 10:55:15 +01:00
Andy Wilkinson
f3e2e6c4ec Merge branch '2.2.x' into 2.3.x
Closes gh-22345
2020-07-16 10:54:41 +01:00
Andy Wilkinson
055f7f95be Merge branch '2.1.x' into 2.2.x
Closes gh-22347
2020-07-16 10:53:44 +01:00
Andy Wilkinson
831333f841 Update JDK 11 CI image to use 11.0.8_10
Closes gh-22348
2020-07-16 10:52:52 +01:00
Andy Wilkinson
e31f871b96 Update JDK 15 CI to use 2020-07-15-08-59
Closes gh-22346
2020-07-16 10:50:21 +01:00
Scott Frederick
f8cc0e53a4 Merge branch '2.3.x'
Closes gh-22352
2020-07-15 17:07:47 -05:00
Scott Frederick
1bc0d6fbe1 Merge branch '2.2.x' into 2.3.x
Closes gh-22351
2020-07-15 17:06:29 -05:00
Scott Frederick
e5ec6dfef0 Find nearest milestone for forward merge with .x pattern
Fixes gh-22350
2020-07-15 17:04:34 -05:00
Scott Frederick
e6318f83b2 Merge branch '2.3.x'
Closes gh-22349
2020-07-15 15:17:16 -05:00
Scott Frederick
bc88af8e53 Restore accidentally deleted line 2020-07-15 15:14:23 -05:00
Scott Frederick
210282260e Fail on bootBuildImage with launch script
This commit adds a check to the support code for the Gradle plugin
bootBuildImage task to ensure that the jar file that will be passed
to a builder is readable and has a valid directory. This prevents a
situation where the jar file cannot be read because it is prepended
with a launch script, and the builder does not receive any files to
process.

Notes have also been added to the Gradle plugin documentation to warn
against using a bootJar launchScript configuration and bootBuildImage
together, as well as caveats about launchScript that match the Maven
plugin documentation.

Fixes gh-22223
2020-07-15 14:58:11 -05:00
Andy Wilkinson
9652705ecc Merge pull request #22329 from fhanik
* gh-22329:
  Polish "Avoid using reflection when configuring Tomcat listener"
  Avoid using reflection when configuring Tomcat listener

Closes gh-22329
2020-07-15 11:51:44 +01:00
Andy Wilkinson
18a3459dc3 Polish "Avoid using reflection when configuring Tomcat listener"
See gh-22329
2020-07-15 11:19:52 +01:00
Filip Hanik
be7048b58f Avoid using reflection when configuring Tomcat listener
This benefits native image building and AOT compilation,
as reflection requires manual configuration.

See gh-22329
2020-07-15 11:19:27 +01:00
Andy Wilkinson
177b3918ee Merge branch '2.3.x'
Closes gh-22340
2020-07-15 10:49:27 +01:00
Andy Wilkinson
259ea65388 Merge branch '2.2.x' into 2.3.x
Closes gh-22339
2020-07-15 10:49:01 +01:00
Andy Wilkinson
d9882f2c88 Clarify the effects of ordering auto-configuration classes
Closes gh-22337
2020-07-15 10:48:01 +01:00
Andy Wilkinson
8abcb1b125 Polish 2020-07-14 17:22:31 +01:00
Andy Wilkinson
c9eead31d1 Avoid reflection when creating manual RootBeanDefinitions
Closes gh-22318
2020-07-14 17:21:44 +01:00
Stephane Nicoll
fe39a91290 Merge branch '2.3.x'
Closes gh-22331
2020-07-14 18:15:02 +02:00
Stephane Nicoll
7c733bf6d2 Merge pull request #22330 from dreis2211
* pr/22330:
  Avoid unnecessary allocations in ConditionMessage for NORMAL style

Closes gh-22330
2020-07-14 18:14:47 +02:00
dreis2211
de30e5c6ac Avoid unnecessary allocations in ConditionMessage for NORMAL style
See gh-22330
2020-07-14 18:12:17 +02:00
Andy Wilkinson
4d1a19f316 Broaden cast as registry may be a GenericApplicationContext
Closes gh-22318
2020-07-14 16:43:27 +01:00
Stephane Nicoll
3ceae84176 Merge branch '2.3.x' 2020-07-14 16:58:02 +02:00
Stephane Nicoll
603e65a629 Polish 2020-07-14 16:57:42 +02:00
Stephane Nicoll
7fd2284b22 Merge pull request #21219 from rodolphocouto
* pr/21219:
  Polish "Add additional properties to configure R2DBC pool"
  Add additional properties to configure R2DBC pool

Closes gh-21219
2020-07-14 16:54:26 +02:00
Stephane Nicoll
c8b67becce Polish "Add additional properties to configure R2DBC pool"
See gh-21219
2020-07-14 16:52:07 +02:00
Rodolpho Couto
0d41596a42 Add additional properties to configure R2DBC pool
See gh-21219
2020-07-14 16:52:07 +02:00
Andy Wilkinson
972aab18f9 Merge branch '2.3.x'
Closes gh-22328
2020-07-14 15:08:42 +01:00
Andy Wilkinson
0566c29e34 Merge pull request #22112 from dreis2211
* gh-22112:
  Cleanup temporary files after Maven plugin execution

Closes gh-22112
2020-07-14 15:08:35 +01:00
dreis2211
021d9b59cb Cleanup temporary files after Maven plugin execution
See gh-22112
2020-07-14 15:08:19 +01:00
Andy Wilkinson
2642b04073 Merge branch '2.3.x'
Closes gh-22327
2020-07-14 15:00:51 +01:00
Andy Wilkinson
9dea67f78f Merge pull request #22294 from dreis2211
* gh-22294:
  Reduce started threads in OnClassCondition

Closes gh-22294
2020-07-14 15:00:23 +01:00
dreis2211
60e7146326 Reduce started threads in OnClassCondition
Prior to this commit, OnClassCondition started a thread even if the number of
passed autoconfiguration class candidates never exceeded 1. This commit only
starts a thread if there is actually work to split in half.

See gh-22294
2020-07-14 14:59:53 +01:00
Andy Wilkinson
2af550ef73 Avoid using reflection with manual bean definitions
Closes gh-22318
2020-07-14 14:11:51 +01:00
Andy Wilkinson
e3b839a48a Merge branch '2.3.x'
Closes gh-22326
2020-07-14 11:40:52 +01:00
Andy Wilkinson
196d20537a Merge branch '2.2.x' into 2.3.x
Closes gh-22325
2020-07-14 11:38:34 +01:00
Andy Wilkinson
9558779dd4 Replace ConfigurationPropertiesBeanDefinitionValidator with a FailureAnalyzer
Previously, regular bean definitions for configuration properties classes
that attempt to use constructor binding were detected in a bean factory
post-processor, ConfigurationPropertiesBeanDefinitionValidator. This
validation examined every standard bean definition and failed if it
encountered one for a class that should have used constructor binding.
There were two downsides to this approach:

1. Reflection used to identify if the bean should be using constructor
   binding triggered class loading that could prevent subsequent
   instrumentation by a load-time weaver.
2. The cost of the validation was incurred when there was no
   misconfiguration to report.

This commit replaces ConfigurationPropertiesBeanDefinitionValidator
with a failure analyzer. This failure analyzer only runs once a failure
has occurred and the application context is not going to complete
refresh. This avoids causing problems with subsequent instrumentation
and also avoids the cost of validation and error reporting unless there
is an error.

Fixes gh-20798
2020-07-14 11:37:54 +01:00
Andy Wilkinson
2643c60c5a Merge branch '2.3.x'
Closes gh-22316
2020-07-13 14:16:45 +01:00
Andy Wilkinson
f52cdf10b3 Update WebServerInitEvent docs to reflect ordering w.r.t. refresh
Closes gh-22277
2020-07-13 12:51:07 +01:00
Andy Wilkinson
3d2f67f0be Merge branch '2.3.x'
Closes gh-22304
2020-07-10 15:36:49 +01:00
Andy Wilkinson
f18b657ff9 Fix handling of DOCKER_HOST that begins with unix://
Fixes gh-22300
2020-07-10 15:31:55 +01:00
Brian Clozel
0f264b68e8 Add option to configure PathPatternParser
As of Spring Framework 5.3, it is now possible to use `PathPatternParser`
to parse and match request mapping path patterns, as an alternative to
the current default `AntPathMatcher`.

This new implementation has been used for a while in Spring WebFlux and
it’s been designed for consistency and performance.

This commit introduces a new configuration property for opting-in this
new variant:

`spring.mvc.pathmatch.matching-strategy=path_pattern_parser`

The default option is still `ant_path_matcher` for now, but we might
change the default in future versions since Spring Framework considers
it the best choice for modern applications.

There are several behavior differences with this new variant:

* double wildcards `"**"` are rejected when used in the middle patterns,
this is only allowed as the last matching segment in a pattern.

* it is incompatible with some path matching options, like
suffix-pattern, registered-suffix-pattern or configuring a Servlet
prefix on the `DispatcherServlet` (`spring.mvc.servlet.path=/test`)

This commit introduces two `FailureAnalyzer` implementations to guide
developers when facing those issues.

Closes gh-21694
2020-07-09 21:34:00 +02:00
Andy Wilkinson
2d91a096db Merge branch '2.3.x'
Closes gh-22293
2020-07-09 16:02:42 +01:00
Andy Wilkinson
794ded5286 Test the Gradle plugin against Gradle 6.5.1
Closes gh-22292
2020-07-09 16:01:52 +01:00
Andy Wilkinson
64c1190c9b Merge branch '2.3.x'
Closes gh-22291
2020-07-09 15:53:47 +01:00
Andy Wilkinson
c963720aee Upgrade to Gradle 6.4.1
Closes gh-22290
2020-07-09 15:53:02 +01:00
Andy Wilkinson
0dfb9bb783 Merge branch '2.3.x'
Closes gh-22289
2020-07-09 15:31:26 +01:00