Commit Graph

9737 Commits

Author SHA1 Message Date
Stephane Nicoll fa9890b381 Upgrade to Jaybird 3.0.9
Closes gh-21809
2020-06-10 10:22:28 +02:00
Stephane Nicoll 357ada7aa0 Upgrade to Jetty 9.4.29.v20200521
Closes gh-21808
2020-06-10 10:22:27 +02:00
Stephane Nicoll 544b688b62 Upgrade to Groovy 2.5.12
Closes gh-21807
2020-06-10 10:22:25 +02:00
Stephane Nicoll 4724839aea Upgrade to Tomcat 9.0.36
Closes gh-21806
2020-06-10 10:22:24 +02:00
Stephane Nicoll a07ccb0c39 Upgrade to Netty 4.1.50.Final
Closes gh-21805
2020-06-10 10:22:22 +02:00
Stephane Nicoll 27c94bd649 Upgrade to Micrometer 1.1.14
Closes gh-21804
2020-06-10 10:22:21 +02:00
Stephane Nicoll e88ae68430 Upgrade to Couchbase Client 2.7.15
Closes gh-21803
2020-06-10 10:22:19 +02:00
Stephane Nicoll 6534a9abaf Configure password-based authentication with Cassandra
This commit updates the Cassandra auto-configuration to configure
password-based authentication on the CqlSession directly.

Closes gh-21487
2020-06-10 09:57:47 +02:00
Madhura Bhave d30c0e8aec Merge branch '2.2.x' into 2.3.x
Closes gh-21798
2020-06-09 18:21:31 -07:00
Madhura Bhave 36faa1d42a Document using system properties in gradle plugin docs
Closes gh-21317
2020-06-09 16:07:54 -07:00
Stephane Nicoll a3d39c7f31 Start building against Spring Data Neumann-SR1 snapshots
See gh-21776
2020-06-09 16:31:27 +02:00
Stephane Nicoll 7fe85750fb Merge branch '2.2.x' into 2.3.x 2020-06-09 16:30:07 +02:00
Stephane Nicoll 6597c0c7f7 Start building against Spring Data Moore-SR8 snapshots
See gh-21775
2020-06-09 16:27:15 +02:00
Stephane Nicoll cc3575b3f4 Merge branch '2.1.x' into 2.2.x 2020-06-09 16:26:44 +02:00
Stephane Nicoll 79f0e38c54 Start building against Spring Data Lovelace-SR18 snapshots
See gh-21774
2020-06-09 16:16:34 +02:00
Stephane Nicoll 9a457527fd Polish test 2020-06-09 16:00:50 +02:00
Stephane Nicoll b378fbfa87 Start building against Spring Batch 4.2.3 snapshots
See gh-21784
2020-06-09 15:11:18 +02:00
Stephane Nicoll 8325ed0626 Start building against Spring Kafka 2.5.2 snapshots
See gh-21782
2020-06-09 15:10:37 +02:00
Stephane Nicoll a2bdbf01b0 Start building against Spring Integration 5.3.1 snapshots
See gh-21779
2020-06-09 15:09:56 +02:00
Stephane Nicoll 3383f48ee7 Upgrade to Spring Framework 5.2.7
Closes gh-21739
2020-06-09 15:09:03 +02:00
Stephane Nicoll 180e57a8d7 Start building against Spring Batch 4.2.3 snapshots
See gh-21783
2020-06-09 14:50:53 +02:00
Stephane Nicoll 7b4707aab5 Start building against Spring Kafka 2.3.9 snapshots
See gh-21781
2020-06-09 14:49:57 +02:00
Stephane Nicoll 5cde880562 Start building against Spring Integration 5.2.7 snapshots
See gh-21778
2020-06-09 14:49:17 +02:00
Stephane Nicoll 679816d3a4 Upgrade to Spring Framework 5.2.7
Closes gh-21738
2020-06-09 14:48:32 +02:00
Stephane Nicoll 36a05375c7 Start building against Spring Kafka 2.2.14 snapshots
See gh-21780
2020-06-09 14:23:58 +02:00
Stephane Nicoll 445a9a461b Start building against Spring Integration 5.1.11 snapshots
See gh-21777
2020-06-09 14:23:58 +02:00
Stephane Nicoll de6ee358fb Upgrade to Spring Framework 5.1.16
Closes gh-21729
2020-06-09 13:36:32 +02:00
Andy Wilkinson 8155cc5f23 Merge branch '2.2.x' into 2.3.x
Closes gh-21786
2020-06-09 11:02:23 +01:00
Andy Wilkinson a0f29edd4d Always initialize stompWebSocketHandlerMapping eagerly
Previously, when lazy initialization was enabled, STOMP-based WebSocket
messaging would not work as the stompWebSocketHandlerMapping bean was
not initialized and CONNECT requests would go unanswered.

This commit adds a LazyInitializationExcludeFilter that causes the
stompWebSocketHandlerMapping bean to always be initialized eagerly.
This triggers initialization of the WebSocket transport allowing
requests to be received and processed.

Fixes gh-19611
2020-06-09 11:02:02 +01:00
Stephane Nicoll e9f6dc9d9a Upgrade to Reactor Dysprosium-SR8
Closes gh-21731
2020-06-09 09:04:31 +02:00
Stephane Nicoll 3889e6336a Upgrade to Reactor Dysprosium-SR8
Closes gh-21730
2020-06-09 09:02:55 +02:00
Stephane Nicoll 10e0ca7dce Upgrade to Reactor Californium-SR19
Closes gh-21728
2020-06-09 09:01:13 +02:00
Scott Frederick 73aff08535 Improve tests for BasicErrorController
This commit improves the tests for BasicErrorController by decoupling
coverage for the include-message and include-binding-errors
parameters to ensure the options operate properly independent of
each other.

See gh-21702
2020-06-08 15:00:55 -05:00
Aurdo e2e52a11cc Fix BasicErrorController include parameter parsing
This commit fixes an error in BasicErrorController where the wrong
property was referenced for binding error inclusion.

See gh-21702
2020-06-08 15:00:55 -05:00
Phillip Webb b71bab2817 Document deprecations of Archive.iterator()
Closes gh-21695
2020-06-08 12:08:33 -07:00
Phillip Webb ddbecf62b3 Polish 'Fix Mustache to not ignore native fetcher'
See gh-21060
2020-06-08 11:10:57 -07:00
Dave Syer 5199c11e37 Fix Mustache to not ignore native fetcher
Alter the logic of `MustacheEnvironmentCollector` so that the
native fetcher is always consulted if it exists.

When the context is a map (as it is in a web View for instance) you
can't assume a non-null fetcher actually contains the property you are
searching for.

See gh-21060
2020-06-08 11:02:04 -07:00
Phillip Webb 47729be4e3 Polish 'Clarify documentation for probe ports'
See gh-21650
2020-06-08 10:42:01 -07:00
Hui Li e6ade05c2d Clarify documentation for probe ports
Update the reference documentation to provide a better description of
the port that should be used for Kubernetes probes.

See gh-21650
2020-06-08 10:41:41 -07:00
dreis2211 eeb1db2176 Use supplier assertions in availability indicator
See gh-21758
2020-06-08 10:29:28 -07:00
Andy Wilkinson 96ae4864a2 Merge branch '2.2.x' into 2.3.x
Closes gh-21762
2020-06-08 17:42:02 +01:00
Andy Wilkinson 2de906caf7 Polish "Clarify loss of defaults when adding custom mapping"
See gh-20716
2020-06-08 17:34:11 +01:00
Norio 9f009e4445 Clarify loss of defaults when adding custom mapping
See gh-20716
2020-06-08 17:31:26 +01:00
Andy Wilkinson a97c63661a Merge branch '2.2.x' into 2.3.x
Closes gh-21760
2020-06-08 17:08:07 +01:00
Andy Wilkinson 4a0e8217f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21759
2020-06-08 17:07:51 +01:00
Andy Wilkinson 5dce945e29 Document dispatcher-types configuration for secured error pages
Closes gh-19293
2020-06-08 17:06:42 +01:00
Andy Wilkinson fe265af252 Merge branch '2.2.x' into 2.3.x
Closes gh-21755
2020-06-08 14:43:39 +01:00
Andy Wilkinson 296da88e31 Merge branch '2.1.x' into 2.2.x
Closes gh-21754
2020-06-08 14:43:14 +01:00
Andy Wilkinson c96455f7cf Remove . from CLI's classpath on Unix-like platforms
Previously, the spring bash script added . to the classpath but the
Windows spring.bat script did not. This commit aligns the classpath
of the two scripts by removing . from the classpath in the bash
script.

Fixes gh-19910
2020-06-08 14:40:14 +01:00
Andy Wilkinson 020a47ba3e Document support for Gradle 5
Closes gh-15358
2020-06-08 14:29:07 +01:00
Andy Wilkinson 82b531b49e Merge branch '2.2.x' into 2.3.x 2020-06-08 11:35:53 +01:00
Andy Wilkinson 8da1e3addb Merge branch '2.1.x' into 2.2.x 2020-06-08 11:35:10 +01:00
Andy Wilkinson 6a9450ee8b Polish 2020-06-08 11:34:56 +01:00
Phillip Webb f8982bdc14 Polish 'Support userInfo in elasticsearch URI'
See gh-21381
2020-06-07 11:56:18 -07:00
Evgeniy Cheban a72179aa4f Support userInfo in elasticsearch URI
See gh-21381
2020-06-07 10:38:41 -07:00
Phillip Webb abaca95467 Merge branch '2.2.x' into 2.3.x
Closes gh-21744
2020-06-07 10:27:35 -07:00
Phillip Webb bfe1c281f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21743
2020-06-07 10:25:33 -07:00
Phillip Webb 70e0a27949 Drop the use of the term "white list"
Closes gh-21737
2020-06-07 10:22:35 -07:00
Stephane Nicoll 9fd6ff7e88 Start building against Spring Framework 5.2.7 snapshots
See gh-21739
2020-06-07 11:14:02 +02:00
Stephane Nicoll 4c26c7d043 Start building against Spring Framework 5.2.7 snapshots
See gh-21738
2020-06-07 10:54:38 +02:00
Stephane Nicoll d4c8fa9b2a Start building against Spring Framework 5.1.16 snapshots
See gh-21729
2020-06-07 10:37:47 +02:00
Phillip Webb c11abf48d9 Polish 'Allow beans without public constructors to load'
See gh-20929
2020-06-06 12:05:50 -07:00
Vlad Kisel d8d8f9cf0b Allow beans without public constructors to load
Allow `BeanDefinitionLoader` to load classes that don't have public
constructors. The constraint was first introduced in d82c50804f to
solve an issue with anonymous Groovy classes but causes particular
problems with `@SpringBootTest`.

See gh-20929
2020-06-06 11:59:47 -07:00
dreis2211 2b5569f054 Polish
See gh-21732
2020-06-06 11:07:21 -07:00
Stephane Nicoll 44f375c508 Start building against Reactor Dysprosium-SR8 snapshots
See gh-21731
2020-06-06 09:57:21 +02:00
Stephane Nicoll f4f9df3d10 Start building against Reactor Dysprosium-SR8 snapshots
See gh-21730
2020-06-06 09:26:15 +02:00
Stephane Nicoll 0b0187cd0d Start building against Reactor Californium-SR19 snapshots
See gh-21728
2020-06-06 08:48:15 +02:00
Phillip Webb 2f973ebc33 Fix default Launcher.isExploded() result
Fix the default implementation of `Launcher.isExploded` which should
have returned `true`.

Fixes gh-21575
2020-06-05 19:32:06 -07:00
Phillip Webb 47c1928189 Polish 'Optimize SystemEnvironmentPropertyMapper'
Introduce a new `ConfigurationPropertyName.ofIfValid` method to
save us needing to throw and catch an exception unnecessarily.

See gh-21523
2020-06-05 16:11:52 -07:00
dreis2211 0378de7b30 Optimize SystemEnvironmentPropertyMapper
See gh-21523
2020-06-05 16:11:28 -07:00
dreis2211 f8d6d9a4b0 Call append only when necessary
See gh-21523
2020-06-05 16:11:11 -07:00
dreis2211 33deba4948 Use chars rather than strings
Update `SystemEnvironmentPropertyMapper` to use single chars
rather than strings whenever possible.

See gh-21523
2020-06-05 15:52:18 -07:00
Phillip Webb cc50605687 Merge branch '2.2.x' into 2.3.x 2020-06-05 15:36:44 -07:00
Phillip Webb 0a05b4c9fd Update copyright year of changed files 2020-06-05 15:36:09 -07:00
Phillip Webb 9a235197dc Propagate manifest to exploded jars
Update `LaunchedURLClassLoader` so that packages defined from exploded
archive folders have manifest attributes applied to them. Prior to this
calling `package.getImplementationTitle()` would only return the a
manifiest attribute when running non-exploded.

The root cause of this issue is the way that `URLClassLoader` handles
the different URL types. For URLs that reference a jar the manifest is
available. For URLs that reference a folder it isn't. When running
exploded we use a URL that references to the `BOOT-INF/classes` folder
directly. To fix the issue we now attempt to detect when `definePackage`
is being called directly, and replace `null` entries with actual
manifest values.

Fixes gh-21705
2020-06-05 15:28:16 -07:00
Stephane Nicoll 400a168ce9 Merge branch '2.2.x' into 2.3.x
Closes gh-21720
2020-06-05 16:41:24 +02:00
dreis2211 9bb22ffb69 Remove usages of deprecated Connector.setAttribute()
See gh-21671
2020-06-05 16:32:42 +02:00
Stephane Nicoll 79a5ca2941 Merge branch '2.2.x' into 2.3.x 2020-06-05 16:25:24 +02:00
Stephane Nicoll eb38eeaf30 Polish 2020-06-05 16:25:12 +02:00
Toshiaki Maki 0cd526c266 Fix event name in documentation
See gh-21692
2020-06-05 14:51:53 +02:00
Stephane Nicoll 4624bf6552 Polish "Add reference to rocketmq-spring-boot-starter"
See gh-21653
2020-06-05 14:49:19 +02:00
ThierrySquirrel c547567882 Add reference to rocketmq-spring-boot-starter
See gh-21653
2020-06-05 14:49:19 +02:00
Andy Wilkinson 24138c104c Use highlightjs for syntax highlighting in Asciidoctor's HTML output
Closes gh-21701
2020-06-04 20:25:29 +01:00
Phillip Webb 4d37430bfe Use servlet context that can access classloader
Update `SpringBootServletInitializer` to use the `ServletContext` that
was provided to the initial `onStartup` call rather than the
one from the `ServletContextEvent`. This allows the `getClassLoader()`
call to complete without throwing an `UnsupportedOperationException`.

Fixes gh-21684
2020-06-03 19:18:12 -07:00
Scott Frederick 29253264b4 Improve Docker API 5xx error messages
This commit improves the error messages returned by the Spring Boot
build plugins when a 5xx status code is returned from the Docker
API while attempting to build an image. If the error response has
contents containing a JSON structure with a "message" key, the value
associated with that key will be included in the exception message
and in the build plugin output error.

Fixes gh-21515
2020-06-03 16:53:44 -05:00
Andy Wilkinson daeca9f332 Restore Boot 2.2's compile-scoped dependencies
Fixes gh-21507
2020-06-03 12:55:11 +01:00
Andy Wilkinson 210e565741 Use dirMode and fileMode to configure CLI archive entry permissions
Closes gh-21453
2020-06-03 11:46:01 +01:00
Andy Wilkinson a2bfdb5b33 Merge branch '2.2.x' into 2.3.x
Closes gh-21663
2020-06-03 08:13:44 +01:00
Andy Wilkinson 29c2a0471d Add Oracle DB dependency management under com.oracle.database
Closes gh-20333
2020-06-03 08:06:26 +01:00
Phillip Webb e39d7971fb Merge branch '2.2.x' into 2.3.x 2020-06-02 22:48:01 -07:00
Phillip Webb 864daab03a Merge branch '2.1.x' into 2.2.x 2020-06-02 22:47:41 -07:00
Phillip Webb b5fe3c3494 Refine YAML type restriction error
Closes gh-21596
2020-06-02 22:46:47 -07:00
Phillip Webb ebb3f5f286 Merge branch '2.2.x' into 2.3.x
Closes gh-21660
2020-06-02 22:28:39 -07:00
Phillip Webb 4fc0dec6c4 Support wrapped random property sources
Update `SpringConfigurationPropertySource` so that wrapped random
property sources can be used. It's assumed that wrapped random
sources will use the name of the source as the prefix.

Closes gh-21595
2020-06-02 22:22:40 -07:00
Madhura Bhave 2dc8048d08 Add missing since tags
Closes gh-21576
2020-06-02 17:22:46 -07:00
Phillip Webb 2589f980d5 Merge branch '2.2.x' into 2.3.x
Closes gh-21655
2020-06-02 10:58:36 -07:00
Phillip Webb 09a47c9aad Fix containsDescendantOf for random sources
Fix the `containsDescendantOf` logic for random property sources to
ensure that ancestors are correctly matched.

Closes gh-21654
2020-06-02 10:57:48 -07:00
Andy Wilkinson f0bc8ee73c Fix version placeholder replacement in Gradle plugin docs
Closes gh-21640
2020-06-02 08:59:14 +01:00
Madhura Bhave 1f28141f3e Use the right property in test 2020-06-01 15:15:53 -07:00
Phillip Webb 4dff0beb80 Merge branch '2.2.x' into 2.3.x
Closes gh-21645
2020-06-01 15:07:26 -07:00
Phillip Webb 14e6c734a9 Merge branch '2.1.x' into 2.2.x
Closes gh-21643
2020-06-01 14:45:39 -07:00
Phillip Webb 95031295b9 Restore TomcatReactiveWebServerFactoryTests
Restore tests that were previously ignored due to a framework bug.

Closes gh-19702
2020-06-01 14:19:20 -07:00
Madhura Bhave d3f72326d0 Merge branch '2.2.x' into 2.3.x
Closes gh-21642
2020-06-01 13:49:59 -07:00
Madhura Bhave 573cb98d90 Make management security configuration back off when SAML present
Fixes gh-21620
2020-06-01 13:39:46 -07:00
Andy Wilkinson 3d143e59e7 Fix inclusion of version-specific content in Gradle plugin's docs
Fixes gh-21610
2020-06-01 17:47:42 +01:00
Andy Wilkinson b1777b9dee Use stable file repository for testing snapshot layers
Closes gh-21629
2020-06-01 16:28:33 +01:00
Scott Frederick 7722394e19 Provide better error message if Docker is not running
Previously, if the Spring Boot build plugins got a connection error
when attempting to communicate with a Docker daemon (for example,
when the daemon isn't running), the error message made it appear that
the daemon returned an HTTP error code. This commit makes a connection
error distinct from an HTTP error response code to make it easier for
the user to diagnose the root cause of the problem.

Fixes gh-21554
2020-05-29 12:37:06 -05:00
Andy Wilkinson d3ef6f2382 Prepare 2.3.x branch 2020-05-28 09:56:01 +01:00
Phillip Webb a84b7bccf1 Merge branch '2.2.x' 2020-05-27 19:19:51 -07:00
Phillip Webb 14c9804c5c Fix checkstyle issues 2020-05-27 19:19:11 -07:00
Phillip Webb 1c3f147c1e Merge branch '2.2.x'
Closes gh-21598
2020-05-27 16:47:40 -07:00
Phillip Webb af90604030 Merge branch '2.1.x' into 2.2.x
Closes gh-21597
2020-05-27 16:45:08 -07:00
Phillip Webb 587b840666 Restrict use of custom YAML types
Update `YamlJsonParser` and `OriginTrackedYamlLoader` to ensure that
custom types cannot be loaded.

Closes gh-21596
2020-05-27 16:36:46 -07:00
Andy Wilkinson f17f1255a4 Do not change availability on close unless context is active
Previously, an AvailabilityChangeEvent was published when the servlet
and reactive web server application contexts were closed, irrespective
of whether or not the context was active. This caused problems when
the context was not active due to a refresh failure as the event
publication could then trigger bean creation and post-processing that
relied upon beans that had been destroyed when cleaning up after the
refresh failure. The most commonly seen symptom was a missing
importRegistry bean that is required by ImportAwareBeanPostProcessor.

This commit updates the two web server application contexts to only
publish the availability change event if the context is active.

Fixes gh-21588
2020-05-27 20:05:45 +01:00
Stephane Nicoll b5673db6fa Fix dependency management for Kafka
Kafka 2.5 no longer provides artifacts for Scala 2.11

Closes gh-21589
2020-05-27 16:11:24 +02:00
Stephane Nicoll 4317b29b9a Tolerate change in method format
This commit polishes the assertions of the NoSuchMethodError failure
analyzer as the method format changes according to the JDK.

See gh-21587
2020-05-27 15:25:50 +02:00
dreis2211 b498d3903f Upgrade to Testcontainers 1.14.2
See gh-21581
2020-05-27 14:49:09 +02:00
Stephane Nicoll 35121f182e Harmonize Period conversion support
Closes gh-21574
2020-05-27 14:48:32 +02:00
Andy Wilkinson 744b4d7c26 Include type hierarchy in NoSuchMethodError failure analysis
Closes gh-21587
2020-05-27 11:00:10 +01:00
Stephane Nicoll b21c09020d Polish "Polish duration support javadoc"
See gh-21579
2020-05-26 18:21:18 +02:00
OrangeDog 1a87fce416 Polish duration support javadoc
See gh-21579
2020-05-26 18:12:11 +02:00
Stephane Nicoll 9cf448863a Restore RestClientBuilderCustomizer in its original location
This commit restores RestClientBuilderCustomizer in the rest package in
a deprecated fashion so that the upgrade from 2.2 is smoother.

Closes gh-21572
2020-05-26 16:55:09 +02:00
Andy Wilkinson ba23368440 Configure attributes on productionRuntimeClasspath
Previously, the productionRuntimeClasspath configuration was created
without any attributes. This caused problems with multi-project
dependency resolution as there was insufficient information for Gradle
to determine which variant of a dependency should be used by the
productionRuntimeClasspath configuration.

This commit updates the configuration to have three attributes, each
configured with the same values as those of Gradle's own
runtimeClasspathConfiguration.

Fixes gh-21549
2020-05-26 15:12:21 +01:00
Stephane Nicoll 069c31a074 Map connection and read timeouts for New Relic again
Closes gh-21440
2020-05-26 15:20:33 +02:00
Stephane Nicoll 53bf65df47 Merge branch '2.2.x'
Closes gh-21563
2020-05-25 15:30:43 +02:00
Bram De Cneudt 591d234e43 Fix links for Apache Camel starter
See gh-21540
2020-05-25 15:28:40 +02:00
Toshiaki Maki b4817c85b1 Fix default value for spring.data.jpa.repositories.bootstrap-mode
See gh-21492
2020-05-25 15:11:17 +02:00
Stephane Nicoll b9a1a70fcc Merge branch '2.2.x'
Closes gh-21562
2020-05-25 14:59:19 +02:00
Stephane Nicoll 77981ac2ae Polish "Use the container IP address for tests using TestContainer"
See gh-21480
2020-05-25 14:29:24 +02:00
olivier lamy 0c2bf70bb8 Use the container IP address for tests using TestContainer
See gh-21480
2020-05-25 14:03:18 +02:00
Stephane Nicoll 1d2d76b051 Merge branch '2.2.x'
Closes gh-21560
2020-05-25 13:52:10 +02:00
Stephane Nicoll afcb5d54b2 Polish "Fix uri tag for empty path"
See gh-21392
2020-05-25 13:51:40 +02:00
Jon Schneider f78f2d57e1 Fix uri tag for empty path
See gh-21392
2020-05-25 13:41:19 +02:00
Brian Clozel 18e0db6326 Document health probes config property in Actuator section
This commit mentions the `management.health.probes.enabled`
configuration property in the Kubernetes Probes section of the Actuator
chapter.

Enabling this property is required if we need to expose Kubernetes
Probes in a non-Kubernetes environment.

Fixes gh-21505
2020-05-22 22:23:41 +02:00
Brian Clozel a12a3054c9 Optimize UrlPathHelper configuration for Spring MVC
Prior to this commit, Spring Boot would auto-configure Spring MVC and
would keep the default `UrlPathHelper` configuration.
Since Spring Boot is in charge of configuring the `DispatcherServlet`
and its mapping, it is in a position to optimally configure the
`UrlPathHelper` depending on the chosen mapping.

This commit sets the `alwaysUseFullPath` property of `UrlPathHelper` if
the Servlet mapping is `"/"`. This is more efficient since this
configuration requires less processing of the request path.

Closes gh-21499
2020-05-22 18:50:24 +02:00
Brian Clozel 525e03d3b5 Add welcome page support for Spring WebFlux
This commit adds the support for static and templated welcome pages with
Spring WebFlux. The implementation is backed by a `RouterFunction`
that's serving a static `index.html` file or rendering an `index` view.

Closes gh-9785
2020-05-22 14:20:06 +02:00
Scott Frederick ed4a7d4ba0 Use default tag when pulling run image
Prior to this commit, a default tag of 'latest' was used when no tag
was included in the builder image name used when building an image in
the Maven and Gradle plugins, but the tag for the run image was left
empty if it was not provided. This resulted in errors when pulling
the run image from an image repository. This commit applies the
same tag defaulting logic to the run image name.

Fixes gh-21532
2020-05-21 17:28:59 -05:00
Madhura Bhave 146ebf107c Merge branch '2.2.x'
Closes gh-21529
2020-05-20 17:42:39 -07:00
Moritz do Rio Schulze 1e168a2145 Fix typo in section 4.30.6
See gh-21485
2020-05-20 17:41:50 -07:00
dreis2211 62deec715f Avoid allocations in ConfigFileApplicationListener
See gh-21509
2020-05-20 17:38:17 -07:00
Scott Frederick 07d842b51d Polish maven build image command line example 2020-05-20 16:06:48 -05:00
Scott Frederick a5c42ce4c4 Polish `Add gradle build image command line example`
See gh-21490
2020-05-20 15:53:03 -05:00
Dave Syer 88a32d2fb9 Add gradle build image command line example
See gh-21490
2020-05-20 15:52:52 -05:00
Scott Frederick c5fd09d06d Merge branch '2.2.x'
Closes gh-21522
2020-05-20 13:00:30 -05:00
Scott Frederick 4a812fc29c Fix log name in ServletWebServerApplicationContext
Fixes gh-21354
2020-05-20 12:59:13 -05:00
Andy Wilkinson 14ba7442d9 Ensure that spring-boot-parent is imported into generated pom
Fixes gh-21518
2020-05-20 16:55:41 +01:00
Andy Wilkinson beb7cb4b81 Preserve property ordering in SpringIterableConfigurationPropertySource
Fixes gh-21470
2020-05-18 15:16:10 +01:00
wonwoo 25723be26f Polish
See gh-21481
2020-05-18 12:22:13 +01:00
Andy Wilkinson ee758fa670 Use HTTPS for license links
This commit updates the MavenPublishingConventions to use HTTPS to
link to the Apache license. The configuration of NoHTTP has also
been reworked so that it will correctly find usch uses of http://
URLs.

Closes gh-21459
2020-05-15 16:33:11 +01:00
Andy Wilkinson 3f56f97e03 Merge branch '2.2.x'
Closes gh-21472
2020-05-15 16:21:33 +01:00
Andy Wilkinson 4a896f2272 Merge branch '2.1.x' into 2.2.x
Closes gh-21471
2020-05-15 16:20:23 +01:00
Andy Wilkinson fdc63d71fe Use HTTPS when linking to groovy-lang.org
Closes gh-21466
2020-05-15 16:18:23 +01:00
Phillip Webb eb3b0f82a3 Use http liquibase XSDs
Update the lquibase test to use `http://` rather than `https://` so that
it can be resolved from the local jar.
2020-05-14 17:55:10 -07:00
Brian Clozel 42d07a7acd Fix published Maven POMs
Prior to this commit, the published Maven POMs would not pass the Maven
Central mandatory checks.

This commit adds the missing project name and description metadata for
most artifacts. The Spring Boot Gradle plugin artifact was also missing
this information and this is now added in the plugin metadata itself.
This is also updating the project page URL which is now hosted directly
on spring.io.

Fixes gh-21457
2020-05-14 23:59:11 +02:00
Andy Wilkinson cea37819b8 Fix file permissions in the CLI's zip and tar distributions
Fixes gh-21451
2020-05-14 15:55:38 +01:00
Andy Wilkinson d0f16d6fe6 Merge branch '2.2.x'
Closes gh-21450
2020-05-14 12:53:04 +01:00
Andy Wilkinson c35ed9100b Only enforce spring-boot-parent's constraints internally
See gh-21350
2020-05-14 12:52:44 +01:00
Andy Wilkinson b78e4dacec Work around file handle leak when Undertow is stopped
There's a bug in Undertow that means it may leak a file handle is
the server is stopped immediately after a response to an SSL request
has been received. The stop processing races with Undertow's SSL
support tidying things up after sending the response. When the stop
processing wins, the tidying up fails with a NullPointerException that
prevents an input stream from being closed. On Windows, the input
stream remaining open prevents JUnit from being able to clean up its
temporary directory.

This commit uses Awaitility to wait for the file that's being served
over SSL to be deleted before stopping the server. On Windows, this
will delay the stop processing from beginning until after the tidy up
that's performed after sending the response has been completed,
hopefully eliminating the race condition that resulted in the input
stream being left open.

Fixes gh-21172
2020-05-14 12:45:37 +01:00
Stephane Nicoll e6376fcd6e Fix web services tests on JDK 11+
Closes gh-17274
2020-05-14 10:55:12 +02:00
Andy Wilkinson 96bd9daab7 Compile doc's Java examples and allow them to be imported into Eclipse
Closes gh-21445
2020-05-14 09:29:35 +01:00
Phillip Webb 194c9fac64 Polish 'Add @WebServiceClientTest slice test support'
See gh-17274
2020-05-14 00:21:50 -07:00
Dmytro Nosan a4104ab096 Add @WebServiceClientTest slice test support
Add `@WebServiceClientTest` and related test auto-configuration to allow
slice testing of Spring Web Service client applications.

See gh-17274
2020-05-14 00:21:50 -07:00
Stephane Nicoll f1c2dd6196 Upgrade to Spring Integration 5.3.0.RELEASE
Closes gh-21385
2020-05-14 07:34:45 +02:00
Stephane Nicoll d12ed468c8 Upgrade to Spring Session Dragonfruit-RELEASE
Closes gh-21386
2020-05-14 07:34:09 +02:00
Phillip Webb fd505e516f Merge branch '2.2.x'
Closes gh-21444
2020-05-13 19:11:29 -07:00
Phillip Webb 49a21ded7a Create endpoint beans as late as possible
Update `EndpointDiscoverer` so that `@Endpoint` and `@EndpointExtension`
beans are created as late as possible.

Prior to this commit, endpoint beans and extension beans would be
created during the discovery phase which could cause early bean
initialization. The problem was especially nasty when using an embedded
servlet container since `ServletEndpointRegistrar` is loaded as the
container is initialized. This would trigger discovery and load all
endpoint beans, including the health endpoint, and all health indicator
beans.

Fixes gh-20714
2020-05-13 19:10:54 -07:00
Madhura Bhave 5acd115cb3 Add redis sentinel password property
Closes gh-21353
2020-05-13 16:55:51 -07:00
Phillip Webb 038ae93406 Update copyright year of changed files 2020-05-13 16:48:51 -07:00
Phillip Webb 12381467da Polish 2020-05-13 16:48:51 -07:00
Madhura Bhave 4d521e712f Merge branch '2.2.x' 2020-05-13 13:55:44 -07:00
Madhura Bhave 27ada029b5 Revert "Expose property to configure OAuth2 provider configurationMetadata"
This reverts commit 7b79029949.

See gh-21375
2020-05-13 13:53:46 -07:00
Andy Wilkinson 6a3dec438c Upgrade to Spring Kafka 2.5.0.RELEASE
Closes gh-21387
2020-05-13 20:43:09 +01:00
Phillip Webb 6a1f61c1bf Merge branch '2.2.x' 2020-05-13 12:23:10 -07:00
Phillip Webb daed512076 Restore getUseRelativeRedirects in deprecated form
Restore the `getUseRelativeRedirects` method with a `Boolean` object
result and introduce `isUseRelativeRedirects` for the primitive boolean
variant.

See gh-20796
2020-05-13 11:36:24 -07:00
Phillip Webb 5157a75119 Polish 2020-05-13 11:36:02 -07:00
Andy Wilkinson 9be7fa8e1f Upgrade to XMLUnit 2.7.0
Closes gh-21419
2020-05-13 17:50:23 +01:00
Andy Wilkinson 8b6cdbb977 Deregister JDBC drivers when deployed war's ServletContext is destroyed
Closes gh-21221
2020-05-13 17:46:37 +01:00
Andy Wilkinson 9e569cf1b0 Remove non-user-facing packages from the javadoc
Closes gh-20517
2020-05-13 16:57:01 +01:00
dreis2211 1c7f2d6ea6 Upgrade to Testcontainers 1.14.1
See gh-21378
2020-05-13 17:43:46 +02:00
Andy Wilkinson 0ef7f909b8 Disable generation of Gradle metadata for spring-boot-dependencies
Gradle's metadata for a platform does not provide a way to define
exclusions in the same way that can be done in <dependencyManagement>
in a Mavne bom. This means that Gradle 6 users lose the exclusions
that are defined in the pom as Gradle 6 will use the metadata rather
than the pom.

Until such a time as Gradle's metadata supports the configuration of
such exclusions we can avoid the problem by disabling the metadata's
publication.

Fixes gh-21350
2020-05-13 16:36:59 +01:00
Andy Wilkinson 4169724b86 Disable test that is flaky due to Reactor Netty problem
See gh-21437
2020-05-13 14:59:05 +01:00
Stephane Nicoll a5f826fc78 Fix typo 2020-05-13 15:57:29 +02:00
Stephane Nicoll f43419054d Include all deprecated properties in migration report
This commit expands the migration check to all deprecated properties,
not only the ones that have been effectively removed. This provides more
information upfront, including keys that still work in the current
release but will need to be renamed sooner than later anyway.

Closes gh-21425
2020-05-13 15:56:06 +02:00
Stephane Nicoll 786dae5d9a Use "release notes" in message as it is more generic 2020-05-13 15:44:16 +02:00
Stephane Nicoll 23c5549832 Polish 2020-05-13 15:39:44 +02:00
Andy Wilkinson a03426af57 Configure the Asciidoctor revnumber in a central location
See gh-20934
2020-05-13 08:16:59 +01:00
Phillip Webb 0607af870d Improve ConfigurationPropertySource performance
Further improve the performance of `containsDescendantOf` by using
a Map to limit the number of candidates that need checking.

Closes gh-21416
2020-05-12 20:17:06 -07:00
Phillip Webb 4af6e7ff99 Improve ConfigurationPropertySource performance
Attempt to improve the performance of the `ConfigurationPropertySource`
adapters `containsDescendantOf` method. The method now operates on
arrays rather than iterators and reduces the inner for-loop when
possible.

See gh-21416
2020-05-12 16:44:57 -07:00
Madhura Bhave 376098d080 Set asciidoctor revnumber to null
Closes gh-20934
2020-05-12 14:58:38 -07:00
Andy Wilkinson 4c4097a29b Address flakiness in TomcatServletWebServerFactoryTests 2020-05-12 22:41:56 +01:00
Andy Wilkinson 8cf56069d2 Allow more time for shutdown result callback to be received
5 seconds isn't always sufficient, particularly on CI where the timing
can be quite variable.
2020-05-12 22:25:41 +01:00
Scott Frederick 90ce472252 Support local socket path in DOCKER_HOST
Prior to this commit, if a DOCKER_HOST environment variable was present
when attempting to communicate with a Docker daemon, it was assumed
that the value of that variable was an address that could be used to
create an HTTP connection to a remote daemon. In some cases, the value
of the variable is the path to a local socket file, which would cause
the HTTP connection to fail.

This commit adds additional validation of the value of the DOCKER_HOST
environment variable to determine whether it is a remote address or
a local socket file and create the appropriate connection type.

Fixes gh-21173
2020-05-12 16:11:27 -05:00
Andy Wilkinson 86e6ec04b2 Fix hang caused by race condition in test for reset of kept-alive connection
Previously, a race between the server starting to reject requests
on a kept-alive connection and the request reaching the blocking
servlet could result in a response never being sent.

This commit updates the test to disable blocking once graceful
shutdown with an in-flight request has being. Awaitility is then used
to make a request on an idle kept-alive connection until it fails
due to the connection reset. This may not happen immediately due to
the aforementioned race.
2020-05-12 22:10:23 +01:00
Madhura Bhave 453ca01338 Merge branch '2.2.x'
Closes gh-21429
2020-05-12 13:43:17 -07:00
Madhura Bhave 7b79029949 Expose property to configure OAuth2 provider configurationMetadata
Closes gh-21375
2020-05-12 13:42:03 -07:00
Andy Wilkinson 0bb687717c Auto-configure a lifecycle processor with configurable timeout
Closes gh-21347
2020-05-12 19:59:52 +01:00
Andy Wilkinson 240898121f Use SmartLifecycle for graceful web server shutdown
Closes gh-21325
2020-05-12 19:59:52 +01:00
Andy Wilkinson c42571ba40 Consolidate Undertow WebServers and simplify their constructors
Closes gh-21391

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
2020-05-12 19:59:52 +01:00
Scott Frederick 0d00947735 Closes gh-21428 2020-05-12 13:50:16 -05:00
Scott Frederick 6b8d08a6e3 Handle exceptions in management context
Prior to this commit, details about an exception would get dropped when
the management context was separate from the application context and
an actuator endpoint threw a binding exception.

This commit adds some logic to capture the exception so the management
context error handlers can add the appropriate attributes to the error
response.

Fixes gh-21036
2020-05-12 11:44:28 -05:00
Johnny Lim 6022d4cac7 Fix ClientHttpConnectorConfigurationTests.shouldApplyHttpClientMapper()
See gh-21390
2020-05-12 17:13:27 +02:00
Stephane Nicoll deb2322457 Remove wrong replacement key in deprecated metadata 2020-05-12 15:37:50 +02:00
Brian Clozel 7787fd94f3 Merge remote-tracking branch 'origin/2.2.x'
Closes gh-21422
2020-05-12 14:47:03 +02:00
Brian Clozel 3c666ac4c8 Upgrade to RSocket 1.0.0
Closes gh-21421
2020-05-12 14:44:35 +02:00
Stephane Nicoll 8cc2e32482 Upgrade to Spring Data Neumann-RELEASE
Closes gh-21383
2020-05-12 14:03:24 +02:00
Stephane Nicoll b6b0452d5f Upgrade to Spring HATEOAS 1.1.0.RELEASE
Closes gh-21384
2020-05-12 14:02:25 +02:00
Stephane Nicoll a6efe77a0c Polish "Calculate hashCode only once in ConfigurationPropertyName"
See gh-21394
2020-05-12 13:10:03 +02:00
Stephane Nicoll dd053074f8 Polish "Calculate hashCode only once in ConfigurationPropertyName"
See gh-21394
2020-05-12 10:05:32 +02:00
dreis2211 c9f6a126b7 Calculate hashCode only once in ConfigurationPropertyName
See gh-21394
2020-05-12 10:02:45 +02:00
Richard North aed4f58403 Fix capitalization of Testcontainers in Howto docs
See gh-21417
2020-05-12 10:01:06 +02:00
Stephane Nicoll 8c4f185b98 Remove outdated metadata for spring.data.cassandra.port
Closes gh-21418
2020-05-12 09:56:49 +02:00
Stephane Nicoll cfe3187c96 Upgrade to Tomcat 9.0.35
Closes gh-21415
2020-05-12 08:55:13 +02:00
Stephane Nicoll 8568e0bda2 Upgrade to SQLite JDBC 3.31.1
Closes gh-21414
2020-05-12 08:55:12 +02:00
Stephane Nicoll 11ff36686f Upgrade to Selenium HtmlUnit 2.40.0
Closes gh-21413
2020-05-12 08:55:11 +02:00
Stephane Nicoll 5411274eba Upgrade to Prometheus PushGateway 0.9.0
Closes gh-21412
2020-05-12 08:55:09 +02:00
Stephane Nicoll 6566eb0e20 Upgrade to MongoDB 4.0.3
Closes gh-21411
2020-05-12 08:55:08 +02:00
Stephane Nicoll f571ced0f8 Upgrade to Micrometer 1.5.1
Closes gh-21410
2020-05-12 08:55:07 +02:00
Stephane Nicoll 3556ed4487 Upgrade to Maven Assembly Plugin 3.3.0
Closes gh-21409
2020-05-12 08:55:05 +02:00
Stephane Nicoll dd13c226b5 Upgrade to Kotlin Coroutines 1.3.6
Closes gh-21408
2020-05-12 08:55:04 +02:00
Stephane Nicoll 74a70c8200 Upgrade to jOOQ 3.13.2
Closes gh-21407
2020-05-12 08:55:03 +02:00
Stephane Nicoll 77c6a605db Upgrade to Johnzon 1.2.5
Closes gh-21406
2020-05-12 08:55:02 +02:00
Stephane Nicoll a99f831ec7 Upgrade to Jedis 3.3.0
Closes gh-21405
2020-05-12 08:55:00 +02:00
Stephane Nicoll ea0425dc83 Upgrade to Infinispan 10.1.8.Final
Closes gh-21404
2020-05-12 08:54:59 +02:00
Stephane Nicoll 1f67be0248 Upgrade to HtmlUnit 2.40.0
Closes gh-21403
2020-05-12 08:54:58 +02:00
Stephane Nicoll 8e0d8f48e4 Upgrade to HikariCP 3.4.5
Closes gh-21402
2020-05-12 08:54:57 +02:00
Stephane Nicoll 292e782385 Upgrade to Hibernate Validator 6.1.5.Final
Closes gh-21401
2020-05-12 08:54:56 +02:00
Stephane Nicoll 5341fe889f Upgrade to Hibernate 5.4.15.Final
Closes gh-21400
2020-05-12 08:54:54 +02:00
Stephane Nicoll 77782aa629 Upgrade to Dropwizard Metrics 4.1.7
Closes gh-21399
2020-05-12 08:54:53 +02:00
Stephane Nicoll 294bd0d2fb Upgrade to Couchbase Client 3.0.4
Closes gh-21398
2020-05-12 08:54:52 +02:00
Stephane Nicoll e9bf2148ce Upgrade to Cassandra Driver 4.6.1
Closes gh-21397
2020-05-12 08:54:51 +02:00
Stephane Nicoll 38a0a6b7de Upgrade to AssertJ 3.16.1
Closes gh-21396
2020-05-12 08:54:50 +02:00
Madhura Bhave 3e3ff26129 Add a testcontainers section in the reference docs
Closes gh-20734
2020-05-11 19:07:47 -07:00
Madhura Bhave 7468f574d7 Add more context to the Kubernetes container lifecycle documentation
Closes gh-20932
2020-05-11 18:38:49 -07:00
Madhura Bhave a4254f7b30 Document that graceful shutdown requires Tomcat 9.0.33
Closes gh-20886
2020-05-11 18:14:43 -07:00
Scott Frederick 158933c3e5 Improve API of ErrorAttributes and DefaultErrorAttributes
This commit improves the backward-compatibility of the ErrorAttributes
interfaces by providing a default implementation of a new method. It
also encapsulates several parameters that control the inclusion or
exclusion of error attributes into a new ErrorAttributeOptions type to
make it easier and less intrusive to add additional options in the
future. This encapsulation also makes the handling of the
includeException option more similar to other options.

Fixes gh-21324
2020-05-11 15:36:24 -05:00
Stephane Nicoll 07958ac5cc Start building against Spring Kafka 2.5.0 snapshots
See gh-21387
2020-05-11 11:49:33 +02:00
Stephane Nicoll dedcfeb150 Start building against Spring Session Dragonfruit snapshots
See gh-21386
2020-05-11 11:49:01 +02:00
Stephane Nicoll e32d701e76 Start building against Spring Integration 5.3.0 snapshots
See gh-21385
2020-05-11 11:48:24 +02:00
Stephane Nicoll 5c26c895d5 Start build against Spring HATEOAS 1.1.0 snapshots
See gh-21284
2020-05-11 11:47:57 +02:00
Stephane Nicoll 7ce6ea484f Start building against Spring Data Neumann snapshots
See gh-21383
2020-05-11 11:47:07 +02:00
Phillip Webb 49921d65ac Ensure @ActiveProfiles replaces existing profiles
Update `SpringBootContextLoader` to both add `spring.profiles.active`
properties and to directly call `Environment.setActiveProfiles`.
The additional `setActiveProfiles` call prevents `AbstractEnvironment`
from accidentally loading `spring.profiles.active` properties directly
when `doGetActiveProfiles` is called.

Directly setting active profiles has only become necessary since we
started adding properties using the square bracket notation. Previously
we added a comma-separated list which would be picked up by both the
`AbstractEnvironment` and the `ConfigurationFileApplicationListener`.

Closes gh-21302
2020-05-08 17:16:06 -07:00
Scott Frederick 28749e7fbb Update CNB buildpack Java version env variable
Prior to this commit, the build tool plugins set the environment
variable BP_JAVA_VERSION when invoking the CNB builder to set the
version of the JDK/JRE that the builder should use in the created
image.

With CNB API 0.3, the convention changed the name of this environment
variable to BP_JVM_VERSION. This commit updates the build tool
plugins to match the newer convention.

See gh-21273
2020-05-08 17:07:51 -05:00
Scott Frederick 35bc82a693 Use CNB creator all-in-one lifecycle
This commit modifies the buildpack platform invocation logic used by
the build plugins to invoke the single creator lifecycle introduced in
the CNB API 0.3, instead of invoking discrete lifecycle phases
separately. It also removes support for CNB API 0.2.

Fixes gh-21273
2020-05-08 17:03:47 -05:00
Stephane Nicoll d067cc6ae2 Merge branch '2.2.x'
Closes gh-21367
2020-05-08 16:58:01 +02:00
Stephane Nicoll c3eaa6dc54 Merge branch '2.1.x' into 2.2.x
Closes gh-21366
2020-05-08 16:57:41 +02:00
Stephane Nicoll efc9978362 Document use case of splitting auto-configuration and starter
Closes gh-20686
2020-05-08 16:55:47 +02:00
Johnny Lim 665a127448 Fix JarFileTests.getInputStreamWhenClosed()
See gh-21365
2020-05-08 16:06:42 +02:00
Stephane Nicoll 846db6105f Merge branch '2.2.x'
Closes gh-21364
2020-05-08 14:51:49 +02:00
Stephane Nicoll 60ff8bafb5 Polish "Align TestRestTemplate Javadoc with documentation"
See gh-21318
2020-05-08 14:49:50 +02:00
Andrii Hrytsiuk f11c030b71 Align TestRestTemplate Javadoc with documentation
See gh-21318
2020-05-08 14:48:21 +02:00
dreis2211 71c8d5cda1 Update link to new Spring Security docs location
See gh-21040
2020-05-08 14:29:22 +02:00
Phillip Webb 7afd25fc9a Add ConfigurationPropertyCaching support
Add a `ConfigurationPropertyCaching` utility interface that can be
used to control the property source caching.

Prior to this commit, a `ConfigurationPropertySource` that was backed
by a mutable `EnumerablePropertySource` would need to call the
`getPropertyNames()` method each time a property was accessed. Since
this this operation can be expensive, we now provide a way to cache
the results for a specific length of time.

This commit also improves the performance of immutable property sources
by limiting the number of candidates that need to be searched.
Previously, all mapped names would be enumerated. Now, mappings are
grouped by `ConfigurationPropertyName`. This is especially helpful when
the `ConfigurationPropertyName` isn't mapped at all since the hash based
map lookup will be very fast and the resulting mappings will be empty.

Closes gh-20625
2020-05-07 15:22:24 -07:00
Phillip Webb 85e9a73e85 Add hashcode support to ConfigurationPropertyName
Provide a hashcode implementation for `ConfigurationPropertyName` so
that instances can be stored in Map without them all ending up in the
same bucket.

See gh-20625
2020-05-07 15:22:20 -07:00
Phillip Webb 5309912927 Test large property source performance
Add a test to ensure that a large number of property sources that each
contain many items can perform well.

See gh-20625
2020-05-07 15:22:10 -07:00
Phillip Webb 81058cab03 Allow clash in spring.config.name
Remove the recently added slash restriction since Spring Cloud
Config Server needs to support names with slashes.

See gh-21217
2020-05-07 07:56:01 -07:00
Phillip Webb 559c178637 Simplify regex expressions 2020-05-07 07:44:31 -07:00
Stephane Nicoll 09815cc99d Merge branch '2.2.x'
Closes gh-21352
2020-05-07 14:19:41 +02:00
Stephane Nicoll 31f9a965f0 Merge branch '2.1.x' into 2.2.x
Closes gh-21351
2020-05-07 14:12:53 +02:00
Stephane Nicoll 1a4f6df0a3 Upgrade to Spring Ldap 2.3.3.RELEASE
Closes gh-21342
2020-05-07 14:11:24 +02:00
Stephane Nicoll 3ac38fd65e Upgrade to Spring Security 5.3.2.RELEASE
Closes gh-21349
2020-05-07 09:50:25 +02:00
Stephane Nicoll 55a1cd4a34 Upgrade to Spring Security 5.2.4.RELEASE
Closes gh-21348
2020-05-07 09:41:38 +02:00
Stephane Nicoll 66afe280cb Upgrade to Spring Security 5.1.10.RELEASE
Closes gh-21346
2020-05-07 09:32:15 +02:00
Madhura Bhave 8e7f816f48 Merge branch '2.2.x'
Closes gh-21344
2020-05-06 16:37:25 -07:00
Madhura Bhave 5583f64b1f Add tests to verify Jetty's thread pool defaults match server defaults
Closes gh-21213
2020-05-06 16:35:00 -07:00
Madhura Bhave 01404aa27b Merge branch '2.2.x'
Closes gh-21343
2020-05-06 16:00:24 -07:00
Madhura Bhave f29bce657e Harmonize default for server.tomcat.use-relative-redirects
Prior to this commit, the property was a Boolean with a null default.
If it was explicitly set by the user, a context customizer would use
that value to set it on the context. However, if it was not set, the default
wouldn't be tomcat's default but `false` because it was explicitly set to
`false` in `TomcatServletWebServerFactory`. This commit defaults the property
itself to `false` so that the default is more obvious to the user.

Fixes gh-20796
2020-05-06 15:54:27 -07:00
Madhura Bhave be7fe85b55 Polish 2020-05-06 15:35:44 -07:00
Phillip Webb b4963d2463 Fix legacy environment names in isAncestorOf
Fix the `SystemEnvironmentPropertyMapper.isAncestorOf` implementation
to convert names based on their dashed form and to silently ignore
any invalid results.

Closes gh-14479
2020-05-06 11:35:39 -07:00
Andy Wilkinson 70c4baeef6 Merge branch '2.2.x'
Closes gh-21341
2020-05-06 17:34:48 +01:00
Andy Wilkinson 386d678d99 Use Gradle's CreateStartScripts task with 6.4 and later
Fixes gh-20759
2020-05-06 17:02:34 +01:00
Andy Wilkinson 693fa918e2 Tolerate deprecation warnings generated by Gradle 6.4
The warnings will be addressed by gh-20759. CreateBootStartScripts
must be excluded from the classes that are validated by the
ValidatePlugins task. It is invalid, but only for Gradle 6.4. gh-20759
will cause it to only be used with Gradle 6.3 and earlier.

See gh-21329
2020-05-06 15:33:11 +01:00
Stephane Nicoll addaf5ff18 Upgrade to Jetty El 8.5.54
Closes gh-21340
2020-05-06 16:09:23 +02:00
Stephane Nicoll 4dc9aa082f Upgrade to Hibernate 5.4.15.Final
Closes gh-21339
2020-05-06 16:09:23 +02:00
Stephane Nicoll 5bb26bf9db Upgrade to Johnzon Jsonb 1.2.5
Closes gh-21338
2020-05-06 16:09:22 +02:00
Stephane Nicoll cd7048315d Upgrade to Byte Buddy 1.10.10
Closes gh-21337
2020-05-06 16:09:22 +02:00
Stephane Nicoll f4d007222f Upgrade to Dropwizard Metrics 4.1.7
Closes gh-21336
2020-05-06 16:09:22 +02:00
Stephane Nicoll 51740133c3 Upgrade to Saaj Impl 1.5.2
Closes gh-21335
2020-05-06 16:09:17 +02:00
Stephane Nicoll 30a48d55c4 Upgrade to Okhttp3 3.14.8
Closes gh-21334
2020-05-06 15:33:37 +02:00
Stephane Nicoll 5be1f67936 Upgrade to Hazelcast 3.12.7
Closes gh-21333
2020-05-06 15:33:36 +02:00
Stephane Nicoll 938a99bb21 Upgrade to Jackson 2.10.4
Closes gh-21332
2020-05-06 15:33:35 +02:00
Stephane Nicoll 293cd6edb9 Upgrade to Jetty El 8.5.54
Closes gh-21331
2020-05-06 15:21:58 +02:00
Stephane Nicoll 6c8f0a0082 Upgrade to Hibernate 5.3.17.Final
Closes gh-21330
2020-05-06 15:21:56 +02:00
Stephane Nicoll 02aacf4f04 Upgrade to Gradle 6.4
Closes gh-21329
2020-05-06 15:03:50 +02:00
Andy Wilkinson e03cb94190 Merge branch '2.2.x'
Closes gh-21327
2020-05-06 12:55:08 +01:00
Andy Wilkinson 9ba78db865 Allow Undertow to stop when a request is being handled
Previously, unlike embedded Jetty, Netty, and Tomcat, Undertow would
not stop when one of its worker threads was in use. This meant that a
a long-running or stalled request could prevent the application from
shutting down in response to SIGTERM or SIGINT, and SIGTERM would be
required to get the process to exit.

This commit updates the factories for the reactive and servlet
Undertow web server factories to configure Undertow to use a 0ms
shutdown timeout. This aligns it with the behaviour of Jetty, Netty,
and Tomcat. Tests have been introduced to verify the behaviour across
the reactive and servlet variants of all four supported embedded web
servers.

Fixes gh-21319
2020-05-06 12:23:37 +01:00
Andy Wilkinson 1bc41ec336 Stop developmentOnly from removing too much from executable jars and wars
Fixes gh-21288
2020-05-06 09:45:35 +01:00
Phillip Webb 5ae623c43a Polish 'Add Period converter support'
Polish period converter support, primarily by changing
`PeriodStyle` to parse and print periods that include
more than one unit.

See gh-21136
2020-05-06 00:21:50 -07:00
Grubhart dc4d71f91e Add Period converter support
Add converter support for `javax.time.Period` including:

	String -> Period
	Number -> Period
	Period -> String

Period to Number conversion is not supported since `Period` has no
ability to deduce the number of calendar days in the period.

See gh-21136
2020-05-05 22:31:49 -07:00
Madhura Bhave a8f56b57cb Consider legacy environment names in isAncestorOf
Update the `isAncestorOf` method of SpringConfigurationPropertySources
so that legacy names are considered for the system environment.

Prior to this commit, binding a property such as `my.camelCase.prop`
would detect `MY_CAMELCASE_PROP` but not `MY_CAMEL_CASE_PROP` in
the system environment.

Fixes gh-14479

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
2020-05-05 21:36:11 -07:00
Phillip Webb 4a8492d428 Further optimize StringSequence.startsWith
See gh-21259
2020-05-05 18:37:10 -07:00
dreis2211 70ffc70993 Optimize StringSequence.startsWith
See gh-21259
2020-05-05 18:37:10 -07:00
Madhura Bhave 7634901fb3 Return null when getting a logback logger that does not exist
Closes gh-21292
2020-05-05 17:07:51 -07:00
Madhura Bhave f23d0501e4 Merge branch '2.2.x'
Closes gh-21323
2020-05-05 14:14:24 -07:00
Madhura Bhave 43e7ccd620 Detect log4j2-test.* files when using log4J2
Fixes gh-17001
2020-05-05 14:12:34 -07:00
Phillip Webb 3325709a78 Upgrade to JNA 5.5.0
Upgrade JNA to 5.5.0 and only use the jna-platform dependency.

Closes gh-21313
2020-05-05 12:50:33 -07:00
Phillip Webb 365f65d214 Merge branch '2.2.x'
Closes gh-21321
2020-05-05 12:12:54 -07:00
Phillip Webb 98d27db767 Merge branch '2.1.x' into 2.2.x
Closes gh-21320
2020-05-05 12:12:31 -07:00
Phillip Webb df70c42f98 Allow classpath wildcards with Java 11 or above
Update `StaticResourceJars` to catch both `IOException` and
`InvalidPathException` when checking URLs. Prior to this commit only
`IOException` was caught which worked on Java 8 but not Java 11 or
above.

Fixes gh-21312
2020-05-05 12:10:31 -07:00
Phillip Webb 720d23af41 Further restrict configuration wildcard patterns
Extend wildcard restrictions to the `spring.config.name` property. Also
refine exception messages to include the property value.

Closes gh-21217
2020-05-05 10:27:35 -07:00
Katada, Junya bc2a83062b Fix duplicate slashes in URL links
See gh-21108
2020-05-05 17:48:49 +02:00
Andy Wilkinson f6d8c7d23c Simplify ReactiveWebServerApplicationContext.ServerManager
Closes gh-21315
2020-05-05 15:04:09 +01:00
Andy Wilkinson a688ac3f64 Improve testing of ReactiveWebServerApplicationContext
Closes gh-21314
2020-05-05 12:45:24 +01:00
Kyle Hoehns fd46002666 Fix typo for includeLayerTools
See gh-21310
2020-05-04 17:29:28 -07:00
Andy Wilkinson e484246388 Add missing implementation attributes to Shade config
Fixes gh-21304
2020-05-04 15:58:33 +01:00
Andy Wilkinson de1e3c6069 Include empty layers when listing and extracting
Fixes gh-21301
2020-05-04 15:50:55 +01:00
Stephane Nicoll f4ae2b0584 Merge branch '2.2.x'
Closes gh-21305
2020-05-04 14:58:43 +02:00
Stephane Nicoll 8abf658087 Remove dependency management for the Wavefront SDK
Closes gh-21295
2020-05-04 10:17:01 +02:00
Phillip Webb 9486842bad Merge branch '2.2.x'
Closes gh-21294
2020-05-01 18:31:14 -07:00
Phillip Webb 92ef515fbe Fix @DefaultValue PropertyEditor based conversion
Update `ValueObjectBinder` reattempt conversion if the `@DefaultValue`
contains a single element. Prior to this commit, single element
conversion relied on the `ArrayToObjectConverter` which isn't always
available.

Fixes gh-21264
2020-05-01 18:26:18 -07:00
Phillip Webb 07415e1603 Attempt to fix Windows CI test failure 2020-04-30 18:17:29 -07:00
Phillip Webb 57179c0d3d Add InputStreamSourceToByteArrayConverter
Add an `InputStreamSourceToByteArrayConverter` that can be used to
convert from an `InputStreamSource` (such as a `Resource`) to a
byte array.

Closes gh-21285
2020-04-30 16:40:05 -07:00
Phillip Webb d52bf83ab2 Polish 2020-04-30 16:40:05 -07:00
Madhura Bhave 8ec16bd027 Restrict wildcard pattern support for configuration files
This commit restricts how wildcards can be used in search
locations for property files. If a search location contains
a pattern, there must be only one '*' and the location should
end with a '*/'. For search locations that specify the file
name, the pattern should end with '*/<filename>'.

The list of files read from wildcard locations are now sorted
alphabetically according to the absolute path of the file.

Closes gh-21217
2020-04-30 14:17:44 -07:00
Andy Wilkinson 79a2e7f469 Upgrade to Undertow 2.1.0.Final
Closes gh-21278
2020-04-30 20:18:11 +01:00
Andy Wilkinson 1f00938c5a Upgrade to SAAJ Impl 1.5.2
Closes gh-21277
2020-04-30 20:18:11 +01:00
Andy Wilkinson a361583c8c Upgrade to Jetty EL 8.5.54
Closes gh-21276
2020-04-30 19:46:48 +01:00
Andy Wilkinson a7fd02e243 Upgrade to Hazelcast 3.12.7
Closes gh-21275
2020-04-30 19:46:46 +01:00
Andy Wilkinson 2b76f837b4 Upgrade to Byte Buddy 1.10.10
Closes gh-21274
2020-04-30 19:46:45 +01:00
Andy Wilkinson 04c7132eb3 Rename customize to reflect type that it customizes
See gh-20961
2020-04-30 19:43:52 +01:00
Scott Frederick 1c11e163c7 Fix Maven plugin command-line examples
Fixes gh-21078
2020-04-30 12:19:14 -05:00
Andy Wilkinson 83e4bb39b6 Add transaction auto-configuration to @DataMongoTest
Closes gh-20182
2020-04-30 15:05:23 +01:00
Stephane Nicoll 52fbf47e7f Upgrade to Flyway 6.4.1
Closes gh-21269
2020-04-30 15:35:48 +02:00
Stephane Nicoll 6051a27bd7 Upgrade to Spring Integration 5.2.6
Closes gh-20950
2020-04-30 15:24:19 +02:00
Stephane Nicoll 5292b3a693 Upgrade to Spring Integration 5.1.10
Closes gh-20941
2020-04-30 15:22:41 +02:00
dreis2211 dd11b8adba Fix checkstyle violation
See gh-21266
2020-04-30 12:43:51 +02:00
Andy Wilkinson 1abe0f16d0 Apply gridFsDatabase to auto-configured ReactiveGridFsTemplate
Closes gh-18284
2020-04-30 10:46:10 +01:00
Madhura Bhave 6007a71b9c Polish "Add support for customizing RSocketMessageHandler"
See gh-21081
2020-04-29 17:15:09 -07:00
Aarti Gupta 456d6e78fe Add support for customizing RSocketMessageHandler
See gh-21081
2020-04-29 17:11:19 -07:00
Scott Frederick 0cb090766f Fix typos in mock tests data 2020-04-29 18:08:34 -05:00
Scott Frederick a30740f8d2 Separate server properties for message and errors
Prior to this commit, there was a property server.error.include-details
that allowed configuration of the message and errors attributes in a
server error response.

This commit separates the control of the message and errors attributes
into two separate properties named server.error.include-message and
server.error.include-binding-errors. When the message attribute is
excluded from a servlet response, the value is changed from a
hard-coded text value to an empty value.

Fixes gh-20505
2020-04-29 17:56:47 -05:00
Andy Wilkinson d65d951318 Polish "Add support for customizing Spring Session's cookie serializer"
See gh-20961
2020-04-29 20:53:58 +01:00
Vedran Pavic 32454b83b4 Add support for customizing Spring Session's cookie serializer
This commit introduces a CookieSerializerCustomizer callback that
allows the customization of the auto-configured
DefaultCookieSerializer bean. This is particularly useful for
configuring cookie serializer's capabilities, such as SameSite, that
are not supported by the Servlet API and therefore not exposed via
server.servlet.session.cookie.* properties.

See gh-20961
2020-04-29 20:53:58 +01:00
Scott Frederick f3d717e97a Use paketo-buildpacks/builder as default builder
This commit changes the default builder image from
`cloudfoundry/cnb:bionic-platform-api-0.2` to
`gcr.io/paketo-buildpacks/builder:base-platform-api-0.3`. It also
uses a `paketo-buildpacks/builder` image instead of a
`cloudfoundry/cnb` image to test compatibility with lifecycle v2
and uses paketo naming instead of cloudfoundry when mocking builder
interactions.

Some adjustments to lifecycle phases were also made to align more
closely with the pack CLI.

Fixes gh-21066
2020-04-29 14:28:25 -05:00
Andy Wilkinson 14c88b3c04 Upgrade to Spring Integration 5.3.0.RC1
Closes gh-20951
2020-04-29 20:21:49 +01:00
Andy Wilkinson c7a5b72565 Improve compatibility by replacing use of seq with a native for-loop
Closes gh-21068
2020-04-29 19:30:35 +01:00
Andy Wilkinson 76d71e58d7 Upgrade to Spring Kafka 2.5.0.RC1
Closes gh-20953
2020-04-29 19:06:35 +01:00
Stephane Nicoll d16074d8fd Bind and unbind Kafka metrics as consumers and producers come and go
Fixes gh-21008

Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
2020-04-29 17:53:08 +01:00
Brian Clozel 692a8c47cc Rename property for registering default Servlet
As a follow-up for gh-21214, this commit renames the property to:

`"server.servlet.register-default-servlet=false"`

Closes gh-21214
2020-04-29 18:42:50 +02:00
Brian Clozel c7c01f8ab4 Add property for registering default Servlet
This commit adds a new configuration property for configuring the
registration of the default Servlet in Servlet containers.

`"server.servlet.default-servlet.registered=false"`

The default of this property is still `true`, as it's been the case in
previous releases.

Closes gh-21214
2020-04-29 18:02:33 +02:00
Andy Wilkinson 2d769e7679 Polish "Stop limiting layer customization to external modules"
See gh-21207
2020-04-29 14:22:43 +01:00
Paddy Drury 98644df64d Stop limiting layer customization to external modules
See gh-21207
2020-04-29 14:22:43 +01:00
dreis2211 c1c90b11b8 Fix some deprecations
See gh-21212
2020-04-29 15:10:30 +02:00
Stephane Nicoll 2eef71cba5 Upgrade to Spring AMQP 2.2.6
Closes gh-20947
2020-04-29 15:08:49 +02:00
Stephane Nicoll 371774c109 Upgrade to WebJars Locator Core 0.45
Closes gh-21255
2020-04-29 14:34:51 +02:00
Stephane Nicoll 2807e64e73 Upgrade to Tomcat 9.0.34
Closes gh-21254
2020-04-29 14:34:50 +02:00
Stephane Nicoll b042af606f Upgrade to Spring WS 3.0.9.RELEASE
Closes gh-21253
2020-04-29 14:34:49 +02:00
Stephane Nicoll 2b969d07d7 Upgrade to SendGrid 4.4.8
Closes gh-21252
2020-04-29 14:34:48 +02:00
Stephane Nicoll 0e2eb69be5 Upgrade to Selenium HtmlUnit 2.39.0
Closes gh-21251
2020-04-29 14:34:47 +02:00
Stephane Nicoll b74d80bed9 Upgrade to Rabbit AMQP Client 5.9.0
Closes gh-21250
2020-04-29 14:34:45 +02:00
Stephane Nicoll 2f5f8f9a34 Upgrade to OkHttp3 3.14.8
Closes gh-21249
2020-04-29 14:34:44 +02:00