Commit Graph

4153 Commits

Author SHA1 Message Date
Stephane Nicoll edf4045c3b Add missing tests for Kairos config adapter
Closes gh-14821
2018-10-15 17:55:07 +02:00
Stephane Nicoll ffe5e88d8e Merge branch '2.0.x' 2018-10-15 16:43:32 +02:00
Stephane Nicoll 99a45bdef8 Fix datasource prefix in multiple-datasource configuration doc
Closes gh-13195
2018-10-15 16:42:34 +02:00
Andy Wilkinson e53e8bf79f Merge branch '2.0.x' 2018-10-15 15:29:10 +01:00
Andy Wilkinson 0fedf8d2af Keep Liquibase-specific DataSource open for use by LiquibaseEndpoint
Closes gh-13832
2018-10-15 15:26:26 +01:00
Stephane Nicoll d4ec45e192 Fix javadoc generation 2018-10-15 15:12:52 +02:00
Andy Wilkinson a4eb636913 Merge branch '2.0.x' 2018-10-15 13:58:17 +01:00
Andy Wilkinson 6d98851fb5 Use Couchbase's DiagnosticsReport to determine its health
Previously, Couchbase's health was determined by retrieving the bucket info
from the cluster info. This retrieval could take over one minute in some
cases even when Couchbase is health. This latency is too large for a health
check.

The Couchbase team have recommended the of a Cluster#diagnostics instead.
This provides a much lower latency view of the cluster's health. This
commit updates CouchbaseHealthIndicator to use Cluster#diagnostics while
retaining support, in a deprecated form, for the old info-based mechanism
should anyone want to opt back into that in 2.0.x.

Closes gh-14685
2018-10-15 13:44:42 +01:00
Stephane Nicoll b7b9bf209e Upgrade to Spring Data Kay SR11
Closes gh-14728
2018-10-15 14:15:27 +02:00
Stephane Nicoll 89349c6eb9 Auto-configure KairosDB metrics
Closes gh-14821
2018-10-15 14:13:10 +02:00
Andy Wilkinson 267eff15f1 Merge branch '2.0.x' 2018-10-15 12:24:39 +01:00
Andy Wilkinson ab7c1af3ec Auto-configure SpringSecurityDialect for v5 and deprecate v4
Closes gh-14828
2018-10-15 12:18:40 +01:00
Andy Wilkinson a25e4a860c Upgrade to Thymeleaf Extras Spring Security 3.0.3.RELEASE
Closes gh-14829
2018-10-15 12:02:16 +01:00
Andy Wilkinson eaf38e9355 Upgrade to Spring Data Lovelace-SR1
Closes gh-14729
2018-10-15 11:46:27 +01:00
Stephane Nicoll 0fdf96da3b Upgrade to Spring Framework 5.0.10.RELEASE
Closes gh-14722
2018-10-15 11:26:16 +02:00
Brian Clozel d5236b91ce Polish 2018-10-15 10:59:38 +02:00
artsiom 9e5f171510 Support cachecontrol config property in WebFlux
Closes gh-14724
2018-10-15 10:59:38 +02:00
Stephane Nicoll 66af20f940 Upgrade to Spring Framework 5.0.10.RELEASE
Closes gh-14722
2018-10-15 10:51:14 +02:00
Stephane Nicoll 1103e93b2d Merge branch '2.0.x' 2018-10-15 10:50:43 +02:00
Stephane Nicoll eeb7cab661 Upgrade to Neo4j Ogm 3.1.4
Closes gh-14826
2018-10-15 10:50:06 +02:00
Stephane Nicoll f86ed38abf Upgrade to Groovy 2.5.3
Closes gh-14825
2018-10-15 10:03:42 +02:00
Stephane Nicoll 1a0d53dec0 Replace ReflectionTestUtils usage by hasFieldOrPropertyWithValue
Closes gh-14696
2018-10-15 08:25:10 +02:00
Phillip Webb cfa130b2ef Merge branch '2.0.x' 2018-10-14 19:14:04 -07:00
Hanope 535dd7470f Fix typo in EndpointIdTests
Closes gh-14822
2018-10-14 19:11:56 -07:00
Phillip Webb 3eb877425e Upgrade to Micrometer 1.0.7
Closes gh-14808
2018-10-14 19:07:50 -07:00
Phillip Webb 18319ac276 Remove deprecated Endpoint ID methods
See gh-14773
2018-10-14 13:55:13 -07:00
Phillip Webb 1bf97e9b5e Merge branch '2.0.x' 2018-10-14 13:53:28 -07:00
Phillip Webb a00ee15e16 Use lowercase default endpoint paths
Update `MappingWebEndpointPathMapper` to use the lowercase version of
the endpoint ID when no explicit path mapping has been set. An endpoint
with the ID 'myEndpoint' will now be mapped to the path 'myendpoint'.

See gh-14773
2018-10-14 13:45:05 -07:00
Phillip Webb df5dfbf4be Support mixed case endpoint includes/excludes
Update `ExposeExcludePropertyEndpointFilter` so that mixed case
endpoint IDs are supported. Prior to this commit it was not easy for
an endpoint to be missed by the filter due to the formatting of the
property value.

See gh-14773
2018-10-14 13:45:05 -07:00
Phillip Webb 674a909bab Support mixed case endpoint IDs with enabled
Update `OnEnabledEndpointCondition` so that mixed case endpoint IDs
are supported. Prior to this commit an
`InvalidConfigurationPropertyNameException` would be thrown when trying
to enabled or disable an endpoint with a camel case ID.

See gh-14773
2018-10-14 13:45:05 -07:00
Phillip Webb 138d85477d Support mixed case endpoint IDs with time-to-live
Update the endpoint time-to-live binding logic so that mixed case
endpoint IDs are supported. Prior to this commit an
`InvalidConfigurationPropertyNameException` would be thrown when using
a camel case endpoint ID.

See gh-14773
2018-10-14 13:45:04 -07:00
Phillip Webb 3105a38884 Introduce EndpointID to enforce naming rules
Add an `EndpointID` class to enforce the naming rules that we support
for actuator endpoints. We now ensure that all endpoint names contain
only letters and numbers and must begin with a lower-case letter.

Existing public classes and interfaces have been changes so that String
based `endpointId` methods are deprecated and strongly typed versions
are preferred instead. A few public classes that we're not expecting
to be used directly have been changed without deprecated methods being
introduced.

See gh-14773
2018-10-14 13:45:04 -07:00
Phillip Webb 88ac7f1d65 Polish 2018-10-14 12:43:00 -07:00
Phillip Webb c5786c218d Polish 2018-10-14 11:24:10 -07:00
Andy Wilkinson e151dbf003 Document Jersey metrics' new outcome tag and polish formatting
See gh-12482
2018-10-14 14:21:37 +01:00
Johnny Lim c1ad1f7638 Fix copyright end years
Closes gh-14816
2018-10-14 14:13:19 +01:00
Andy Wilkinson 83692a22da Polish "Use non-reflective APIs to retrieve config prop binding converters"
Closes gh-14657
2018-10-14 14:09:21 +01:00
Dave Syer 2094e54ef2 Use non-reflective APIs to retrieve config prop binding converters
See gh-14657
2018-10-14 14:09:16 +01:00
Stephane Nicoll f96d73f3cc Start building against Micrometer 1.0.7 snapshots
See gh-14808
2018-10-14 10:42:59 +02:00
Andy Wilkinson 6e5310900b Switch from thymeleaf-extras-springsecurity4 to extras-springsecurity5
Closes gh-14806
2018-10-13 19:57:04 +01:00
Andy Wilkinson 1ac48ee876 Merge branch '2.0.x' 2018-10-13 16:56:21 +01:00
Andy Wilkinson b78c7aca3e Allow ALPNServerConnectionFactory to negotiate use of HTTP/1.1
Closes gh-14444
2018-10-13 16:56:10 +01:00
Andy Wilkinson 7ad94299d6 Stop relying on server customizer ordering for Tomcat metrics binding
Closes gh-14784
2018-10-13 11:52:51 +01:00
Andy Wilkinson 2b11ee4389 Auto-configure binding of Micrometer's JettyServerThreadPoolMetrics
Closes gh-14591
2018-10-13 11:52:51 +01:00
Stephane Nicoll 6199af6c0f Polish 2018-10-13 11:19:46 +02:00
Madhura Bhave 6df9555d6a Update micrometer tests following upstream changes 2018-10-12 18:58:11 -07:00
Madhura Bhave ec6e9d205a Merge branch '2.0.x' 2018-10-12 18:24:23 -07:00
Madhura Bhave a86ba6495c Polish 2018-10-12 18:21:39 -07:00
Madhura Bhave 8f91bbeffa Polish 2018-10-12 18:14:36 -07:00
Madhura Bhave 24a8461749 Merge branch '2.0.x' 2018-10-12 17:59:43 -07:00
Madhura Bhave d2ceb8f7da Polish 2018-10-12 17:59:01 -07:00
Stephane Nicoll 8f1729e322 Merge branch '2.0.x' 2018-10-12 16:00:08 +02:00
Stephane Nicoll 798b37805d Polish "Add support for @ResponseStatus in DefaultErrorAttributes"
Closes gh-14744
2018-10-12 15:57:57 +02:00
Michele Mancioppi 17919749db Add support for @ResponseStatus in DefaultErrorAttributes
This commit adds support for @ResponseStatus in DefaultErrorAttributes
mimicking the semantics of @ResponseStatus in SpringMVC.

Throwables annotated with @ResponseStatus handled by
DefaultErrorAttributes will result in the following error attributes:
* 'status' set as the return value of the HttpStatus#value()
  defined as @ResponseStatus#value()
* 'error' set to the default reason phrase of the HttpStatus
  defined as @ResponseStatus#value()
* 'message' defined as the value of @ResponseStatus#reason(),
  or the default HttpStatus's reason phrase if left unspecified

See gh-14744
2018-10-12 15:47:07 +02:00
Stephane Nicoll baf83aec0d Polish "Allow ClassPathResources to be filtered by FilteredClassLoader"
Closes gh-14774
2018-10-12 15:37:25 +02:00
Roy Jacobs d3ca1a7b0e Allow ClassPathResources to be filtered by FilteredClassLoader
See gh-14774
2018-10-12 15:15:16 +02:00
Stephane Nicoll 29c0aa4445 Merge branch '2.0.x' 2018-10-12 14:31:34 +02:00
Stephane Nicoll c0a5e985c2 Upgrade to Thymeleaf 3.0.10.RELEASE
Closes gh-14797
2018-10-12 14:30:42 +02:00
Stephane Nicoll 0ff1b25f52 Polish "Improve Micrometer histogram properties support"
Closes gh-14139
2018-10-12 14:23:21 +02:00
Alexander Abramov c1c79ab1c2 Improve Micrometer histogram properties support
This commit adds configuration properties for Micrometer histogram
settings: "minimumExpectedValue" and "maximumExpectedValue".

See gh-14139
2018-10-12 14:23:21 +02:00
Brian Clozel 5607fcae85 Record URI pattern tag for WebFlux Fn metrics
This commit records URI tags for Spring WebFlux Fn applications for
`http.server.requests` metrics. This is possible since SPR-17098.

Closes gh-12757
2018-10-12 13:57:32 +02:00
Andy Wilkinson 19232ad87a Merge branch '2.0.x' 2018-10-12 11:25:17 +01:00
Andy Wilkinson 861587ec78 Allow @ConditionalOnEnabledEndpoint to be used on any component
Closes gh-14787
2018-10-12 11:24:33 +01:00
Brian Clozel 2588a71ac4 Auto-Configure HTTP ResourceFactories on servers
This commit auto-configures HTTP resource factories on both Reactor
Netty and Jetty server instances. This creates `ReactorResourceFactory`
and `JettyResourceFactory` beans when necessary - those beans can be
reused and applied by the client auto-configuration in order to share
resources between client and server for optimal performance.

The server auto-configuration has the highest precedence, so from now
on, the auto-configured ResourceFactory bean on the client side will be
skipped if a reactive server is configured.

Closes gh-14495
2018-10-12 11:32:55 +02:00
Stephane Nicoll 11efe92ce7 Polish "Configure Cassandra JMX Reporting"
Closes gh-14778
2018-10-12 10:41:47 +02:00
Phillip Webb d102e0d7f7 Introduce Ordered Filter and WebFilter interfaces
Add `Ordered` variants of `javax.servlet.Filter` and
`org.springframework.web.server.WebFilter` mainly so that we can
deprecate `FilterRegistrationBean.REQUEST_WRAPPER_FILTER_MAX_ORDER`.

Closes gh-14793
2018-10-11 23:13:23 -07:00
Phillip Webb d6df7cf324 Update copyright year for changed files 2018-10-11 22:39:43 -07:00
Phillip Webb 683e9532d6 Handle servlet startup failures consistently
Ensure that all servlet containers handle servlet startup failures
consistently and throw a `WebServerException` that wraps the original
cause.

Both Undertow and Jetty already dealt with startup failures in this
way, but Tomcat did not. The `TomcatEmbeddedContext` has now been
changed to no longer call `super.loadOnStartup` but instead re-implement
a version of that method that wraps and rethrows the original exception
(as long as `failCtxIfServletStartFails` is `true`, which it now is by
default).

Closes gh-14790
2018-10-11 22:31:40 -07:00
Phillip Webb 4823114e1c Polish 2018-10-11 22:30:49 -07:00
Phillip Webb 3da25c6d36 Remove TomcatEmbeddedContext.overrideLoadOnStart
Remove the reflection tests used to support the older variant of
`overrideLoadOnStart` that returned a void. Since we no longer support
that older version we can simply the code.

Closes gh-14789
2018-10-11 20:22:58 -07:00
Phillip Webb 74d48fb7a7 Merge branch '2.0.x' 2018-10-11 20:20:15 -07:00
Phillip Webb 21ebb94d49 Respect Tomcat's failCtxIfServletStartFails flag
Ensure that if the user has set `failCtxIfServletStartFails` to `true`
using a `ContextCustomizers` any Servlet init exceptions stop the
application from running.

Closes gh-14448
2018-10-11 20:12:01 -07:00
Phillip Webb b09057a73c Fix checkstyle violation
Fix unused import violation introduced during merge.
2018-10-11 17:55:41 -07:00
Phillip Webb 01f7805c19 Merge branch '2.0.x' 2018-10-11 16:19:29 -07:00
Phillip Webb b1399db994 Add a warning about `webDriver` scope to the docs
Update the reference documentation with a warning about the `webDriver`
scope that we create.

Closes gh-13093
2018-10-11 16:17:24 -07:00
Phillip Webb 0d35af1813 Add "Encrypting Properties" documentation
Update the reference documentation with a section about encrypting
properties and a link to Spring Cloud Vault.

Closes gh-13618
2018-10-11 16:03:42 -07:00
Phillip Webb 1c3987d55a Fix documentation of devtools Gradle scope
Update the reference documentation to suggest that devtools uses a
custom `developmentOnly` scope, rather than `compileOnly`.

Closes gh-14451
2018-10-11 15:42:56 -07:00
Phillip Webb 30ab4f9691 Polish "Stop MetricsEndpoint from summing up same metrics"
See gh-14497
2018-10-11 15:31:40 -07:00
pmehra 950480dc1c Stop MetricsEndpoint from summing up same metrics
Update `MetricsEndpoint` so that only the first matching meter is used
when calculating the sum of of statistics.

Prior this this commit the endpoint would consider all Meters. This
caused incorrect statistics when multiple back-end systems were being
used since the registries contained in the `CompositeMeterRegistry`
would be  iterated, and the same effective metric would be counted more
than once.

Closes gh-14497
2018-10-11 15:18:35 -07:00
Madhura Bhave ff35d14170 Change order of loggingCodecCustomizer
It is set to 0 so that users' customizers can be positioned before and
after it.

Fixes gh-14723
2018-10-11 13:40:57 -07:00
Stephane Nicoll 237ea1d6ee Upgrade to Reactor Californium-SR1
Closes gh-14788
2018-10-11 20:33:12 +02:00
Andy Wilkinson 5e3b5ae14f Polish
See gh-14780 and gh-14467
2018-10-11 17:25:54 +01:00
Andy Wilkinson 5f0d7dd6c7 Merge branch '2.0.x' 2018-10-11 17:20:35 +01:00
Andy Wilkinson 2a2908e74e Order MeterFilters and MeterRegistryCustomizers
Closes gh-14780
2018-10-11 17:15:47 +01:00
Brian Clozel 43966c7f93 Configure WebFlux HiddenHttpMethodFilter with property
This commit adds a new configuration property
`"spring.webflux.hiddenmethod.filter.enable"` that enables/disables the
`HttpHiddenMethodFilter` in Spring WebFlux.

Closes gh-14520
2018-10-11 18:15:27 +02:00
artsiom 8f3b58fa98 Replace ReflectionTestUtils usage by hasFieldOrPropertyWithValue
Closes gh-14783
2018-10-11 17:49:37 +02:00
Stephane Nicoll d37df3d718 Add support for customizing Flyway's configuration
Closes gh-14786
2018-10-11 17:45:20 +02:00
Stephane Nicoll e789bc0bb7 Use FluentConfiguration to configure Flyway
This commit stops binding the Flyway object directly to the environment
as mutating it will no longer be supported in Flyway 6.

This commit mirrors Flyway's configuration in FlywayProperties for the
most part.

Closes gh-14776
2018-10-11 17:45:15 +02:00
Andy Wilkinson 1d2f069580 Allow HttpTrace instances to be created
Previously, the API required to create HttpTrace instances was
package-private. This made it difficult to implement an
HttpTraceRepository that persists the HttpTrace instances
rather than holding them in memory as it inhibited recreation of the
instances when they read from the persistent store.

This commit adds public constructors to HttpTrace and related classes
to enable recreation of an HttpTrace. The package-private methods for
mutating properties have not been made public to ensure that the
public API remains immutable.

Closes gh-14726
2018-10-11 14:26:23 +01:00
Andy Wilkinson 459d2943e7 Polish 2018-10-11 12:29:49 +01:00
Andy Wilkinson 85a4fb389d Merge branch '2.0.x' 2018-10-11 11:51:56 +01:00
Andy Wilkinson a296a805c5 Tolerate different quoting of annotation attributes on Java 8 and 9+
Closes gh-13594
2018-10-11 11:51:34 +01:00
Stephane Nicoll 3f4fbe32ff Merge branch '2.0.x' 2018-10-11 11:56:13 +02:00
Stephane Nicoll 81377e2fd5 Invoke Flyway#setCallbacks only if necessary
Closes gh-14775
2018-10-11 11:50:53 +02:00
Andy Wilkinson 9d09a385ba Merge branch '2.0.x' 2018-10-11 10:40:55 +01:00
Andy Wilkinson 6b22cc1581 Revert "Upgrade to Netty 4.1.30.Final"
This reverts commit c9cf78bb69.

See gh-14752
2018-10-11 10:38:33 +01:00
Phillip Webb 85f86243c9 Order class filter checks and exit early
Update the logic in `OnClassCondition` so that filtering exits on the
first missing class. Also refactor the implementation to save
unnecessary `Set` creation when there is just a single class to check.

The `AutoConfigureAnnotationProcessor` has also been updated to order
classes so that any starting `org.springframework` are considered last.
The assumption being that other classes are more likely to be missing.

Closes gh-12131
2018-10-10 22:02:05 -07:00
Phillip Webb b1d4cf4ea8 Fix Neo4J Tests
Update Neo4J tests following SPR-17333 which has broken our previous
method of simulating Embedded Neo4J.

Closes gh-14779
2018-10-10 17:51:41 -07:00
Phillip Webb 33c2d24560 Support ConfigurationProperties BindHandler advise
Allow custom `BinderHandler` advise to be applied to the `Binder` used
for `@ConfigurationProperties`.  This mechanism has been added to allow
Spring Cloud Stream to manipulate `Bindable` instances before binding
occurs.

NOTE: This commit introduces a breaking change to the `BindHandler`
interface since the `onStart` method now returns a `Bindable` rather
than a `boolean`.

Closes gh-14745
2018-10-10 12:40:11 -07:00
Phillip Webb 8da295998b Polish 2018-10-10 12:20:03 -07:00
Phillip Webb 60719bd982 Upgrade to Dropwizard Metrics 4.0.3
Closes gh-14428
2018-10-10 10:00:45 -07:00
Phillip Webb 94798062ab Configure Cassandra JMX Reporting
Allow Cassandra JMX reporting to be configured via a property, and
disable it by default since it won't work with Dropwizard metrics 4.

Also update some of our own tests to explicitly disable it.

Closes gh-14778
2018-10-10 10:00:44 -07:00
Stephane Nicoll 1a140a80d8 Improve logger-name value hint definition
This commit improve the logger-name value hint by adding a group
attribute that can be defined to specify whether logging groups should
be considered.

Closes gh-14748
2018-10-10 18:40:10 +02:00
Andy Wilkinson 923b48bae0 Exclude duplicate javax.activation classes from web services starter
In 2.3.1, the JAX-B API now depends on javax.activation-api. This has
caused duplicate Activation classes to appear in the starter due to
dependencies on both javax.activation:activation:1.1 and on
javax.activation:javax.activation-api:1.2. This commit removes the
duplicate classes by excluding the former in favour of the latter.

See gh-14754
2018-10-10 16:51:47 +01:00
Andy Wilkinson 526a66f0ad Upgrade to Sqlite Jdbc 3.25.2
Closes gh-14769
2018-10-10 16:35:16 +01:00
Andy Wilkinson 7d3493ba47 Upgrade to Selenium Htmlunit 2.33.0
Closes gh-14768
2018-10-10 16:35:16 +01:00
Andy Wilkinson 8660bd1500 Upgrade to Mockito 2.23.0
Closes gh-14767
2018-10-10 16:35:16 +01:00
Andy Wilkinson 6d0bae5fb0 Upgrade to Kotlin 1.2.71
Closes gh-14766
2018-10-10 16:35:16 +01:00
Andy Wilkinson 7e494b5616 Upgrade to Infinispan 9.4.0.Final
Closes gh-14765
2018-10-10 16:35:16 +01:00
Andy Wilkinson 2fe9ed85cc Upgrade to Glassfish Jaxb 2.3.1
Closes gh-14764
2018-10-10 15:17:42 +01:00
Andy Wilkinson 8425b52b42 Upgrade to Flyway 5.2.0
Closes gh-14763
2018-10-10 15:17:42 +01:00
Andy Wilkinson c36655961f Upgrade to Elasticsearch 6.4.2
Closes gh-14762
2018-10-10 15:17:42 +01:00
Andy Wilkinson cdf0b556f0 Upgrade to Ehcache3 3.6.1
Closes gh-14761
2018-10-10 15:17:42 +01:00
Andy Wilkinson 36bedff9f4 Upgrade to Commons Lang3 3.8.1
Closes gh-14760
2018-10-10 15:17:42 +01:00
Andy Wilkinson 7e449de2e4 Upgrade to Byte Buddy 1.9.1
Closes gh-14759
2018-10-10 15:17:42 +01:00
Andy Wilkinson d422f4d295 Upgrade to Javax Jaxws 2.3.1
Closes gh-14758
2018-10-10 15:17:42 +01:00
Andy Wilkinson ccb9a93754 Upgrade to Netty Tcnative 2.0.17.Final
Closes gh-14757
2018-10-10 15:17:42 +01:00
Andy Wilkinson 6be81a9a31 Upgrade to Saaj Impl 1.5.0
Closes gh-14756
2018-10-10 15:17:42 +01:00
Stephane Nicoll 73ad17d2cb Use standard SpringBeanJobFactory to create Quartz Job instances
A recent update to SpringBeanJobFactory provides the same features as
our AutowireCapableBeanJobFactory override so this commit removes it in
favour of the standard factory.

Closes gh-14772
2018-10-10 16:01:59 +02:00
Stephane Nicoll c5122fb365 Merge branch '2.0.x' 2018-10-10 15:44:12 +02:00
Hanope 29b453d8b0 Fix typo
Closes gh-14770
2018-10-10 15:43:29 +02:00
Andy Wilkinson 4ede33e09b Merge branch '2.0.x' 2018-10-10 13:08:13 +01:00
Andy Wilkinson c897ff959f Upgrade to Ehcache3 3.5.3
Closes gh-14755
2018-10-10 13:06:01 +01:00
Andy Wilkinson 88c2f36ff1 Upgrade to Javax Jaxb 2.3.1
Closes gh-14754
2018-10-10 13:06:01 +01:00
Andy Wilkinson 72db995336 Upgrade to Javax Json 1.1.3
Closes gh-14753
2018-10-10 13:06:00 +01:00
Andy Wilkinson c9cf78bb69 Upgrade to Netty 4.1.30.Final
Closes gh-14752
2018-10-10 13:05:59 +01:00
Andy Wilkinson 27ae772064 Upgrade to Rabbit Amqp Client 5.4.3
Closes gh-14751
2018-10-10 13:05:58 +01:00
Andy Wilkinson 3debf4f68c Merge branch '2.0.x' 2018-10-10 13:01:24 +01:00
Andy Wilkinson ddb8694ae2 Merge branch '1.5.x' into 2.0.x 2018-10-10 13:00:17 +01:00
Stephane Nicoll c91d9bfda8 Polish "Add encoding support for git and build properties"
Closes gh-10771
2018-10-10 13:43:44 +02:00
hengyunabc f7a4a56fba Add encoding support for git and build properties
See gh-10771
2018-10-10 13:43:44 +02:00
Andy Wilkinson 73c6cc1b5d Merge branch '2.0.x' 2018-10-10 12:43:22 +01:00
Andy Wilkinson 839e686c9e Fix Checkstyle violation 2018-10-10 12:43:06 +01:00
Andy Wilkinson 646c20ed6a Merge branch '2.0.x' 2018-10-10 12:22:00 +01:00
Andy Wilkinson f9b6c1ab4d Include more information in NoSuchBeanDefinition failure analysis
Closes gh-13594
2018-10-10 12:21:46 +01:00
Andy Wilkinson 467169aaaf Merge branch '2.0.x' 2018-10-10 12:20:58 +01:00
Andy Wilkinson 9e14fc6b8b Cope with hanging call to connection.start() in JmsHealthIndicator
Previously, if the call to connection.start() hung, JmsHealthIndicator
would also hang and then never respond.

This commit introduces the use of an additional thread that waits for
up to 5 seconds for the connection to start. If the call to start
does not complete within that time, the connection is closed. The
call to close causes the call to start to throw an exception, thereby
stopping the hang and allowing the indicator to report that the
broker is down.

Closes gh-10809
2018-10-10 12:20:34 +01:00
Stephane Nicoll 5a2a2e1ebe Complete documentation of logger-name with out-of-box logging groups
Closes gh-14456
2018-10-10 11:31:12 +02:00
Madhura Bhave b18751ebd9 Provide loggingCodecCustomizer only if property is set
Fixes gh-14723
2018-10-09 14:41:17 -07:00
Andy Wilkinson 37c60b6603 Merge branch '2.0.x' 2018-10-09 17:47:18 +01:00
Andy Wilkinson 51a1309ab7 Document need to use spring.data.rest rather than spring.data.web
Closes gh-14413
2018-10-09 17:46:55 +01:00
Andy Wilkinson 3f7a01fd27 Use ApplicationContextRunner in SpringDataWebAutoConfigurationTests
See gh-14413
2018-10-09 17:46:55 +01:00
Stephane Nicoll 0fba98ca73 Fix logging.group target type
Closes gh-14743
2018-10-09 18:18:05 +02:00
Stephane Nicoll caf7f09296 Document standard "sql" and "web" log groups in the metadata
Closes gh-14740
2018-10-09 18:13:23 +02:00
Stephane Nicoll 716b04721c Merge branch '2.0.x' 2018-10-09 17:08:56 +02:00
Stephane Nicoll 6e6c22c0ae Polish "Remove duplicate -l option for init command"
Closes gh-1446
2018-10-09 17:08:10 +02:00
Ruslan Molchanov 71cf472116 Remove duplicate -l option for init command
See gh-14460
2018-10-09 17:08:10 +02:00
Andy Wilkinson fa47073d11 Merge branch '2.0.x' 2018-10-09 15:09:15 +01:00
Andy Wilkinson c6fdb4f0f2 Improve documentation of Quartz DataSource customization
Closes gh-12780
2018-10-09 15:05:25 +01:00
Andy Wilkinson 602f23c3eb Merge branch '2.0.x' 2018-10-09 14:37:25 +01:00
Hanope 8b08f04e39 Correct TIP typo in the documentation
Closes gh-14735
2018-10-09 14:36:16 +01:00
Andy Wilkinson 83e1a61510 Merge branch '2.0.x' 2018-10-09 14:06:18 +01:00
Andy Wilkinson 73122fa8f3 Improve documentation of supported JSON mapping libraries
Closes gh-14703
2018-10-09 14:04:48 +01:00
Stephane Nicoll 3b0f00dc20 Document how to enable Hibernate 2nd level cache with JCache
Closes gh-14734
2018-10-09 14:54:38 +02:00
Andy Wilkinson f2446f78df Align Session Redis tests with changes in latest Apple snapshots
See gh-14732
2018-10-09 12:39:08 +01:00
Stephane Nicoll a22d089cdc Use a dedicated hook point to customize InfluxDB's HTTP client
This commit introduces a dedicated hook point for InfluxDB's http client
builder and retains backward compatibility, in a deprecated fashion, for
looking up a OkHttpClient.Builder bean.

Closes gh-14709
2018-10-09 13:33:14 +02:00
Andy Wilkinson 20e57de73f Start building against Spring Session snapshots for Bean-RELEASE
See gh-14733
2018-10-09 11:38:01 +01:00
Andy Wilkinson 5c67bbd2b4 Start building against Spring Integration snapshots for 5.1.0.RC2
See gh-14731
2018-10-09 11:37:13 +01:00
Andy Wilkinson 6c4d2e140b Start building against Spring Security 5.1.1 snapshots
See gh-14730
2018-10-09 11:36:37 +01:00
Andy Wilkinson f1ae192dcb Start building against Spring Data snapshots for Lovelace-SR1
See gh-14729
2018-10-09 11:35:50 +01:00
Andy Wilkinson 1b4a60e65c Start building against Spring Session snapshots for Apple-SR6
See gh-14732
2018-10-09 11:33:34 +01:00
Andy Wilkinson e2b589547c Start building against Spring Data snapshots for Kay-SR11
See gh-14728
2018-10-09 11:32:21 +01:00
dreis2211 6a66a333ae Fix actuator endpoint tables in docs
Closes gh-14712
2018-10-09 08:27:35 +02:00
Andy Wilkinson 508bfda9ad Start building against Spring Framework 5.0.10 snapshots
See gh-14722
2018-10-08 20:08:24 +01:00
Andy Wilkinson 04d69f10e0 Merge branch '2.0.x' 2018-10-08 16:29:37 +01:00
Andy Wilkinson 07dd689c9c Polish 2018-10-08 16:29:21 +01:00
dreis2211 e6313fd96f Fix @Cacheable typo
Closes gh-14720
2018-10-08 16:28:05 +01:00
Andy Wilkinson b413333abb Merge branch '2.0.x' 2018-10-08 16:10:21 +01:00
Andy Wilkinson 9afd6f53e5 Document need for -parameters compilation with @SpyBean and @Cacheable
Closes gh-13945
2018-10-08 16:10:15 +01:00
Andy Wilkinson c4ba05f092 Merge branch '2.0.x' 2018-10-08 15:59:37 +01:00
Andy Wilkinson 4f51a83ab3 Add a note recommending the use of containers' multipart upload
Closes gh-2958
2018-10-08 15:58:48 +01:00
Andy Wilkinson 2216b78f1e Merge branch '2.0.x' 2018-10-08 15:53:09 +01:00
Andy Wilkinson d3b3c8c64e Honour management.metrics.web.server.auto-time-requests with WebFlux
Closes gh-13895
2018-10-08 15:52:50 +01:00
Andy Wilkinson 3f1b3db25a Merge branch '2.0.x' 2018-10-08 15:07:28 +01:00
Andy Wilkinson 1f34da9025 Document application plugin's need for mainClassName to be set
Closes gh-14250
2018-10-08 15:06:37 +01:00
Andy Wilkinson 749fa96a8b Polish 2018-10-08 13:34:25 +01:00
Andy Wilkinson 1e0f2b652e Merge branch '2.0.x' 2018-10-08 12:41:16 +01:00
Andy Wilkinson 5d3f30ee94 Honour SSL key and trust store providers when configuring Netty
Closes gh-14714
2018-10-08 12:39:09 +01:00
Andy Wilkinson 1afdfef83a Merge branch '2.0.x' 2018-10-08 12:20:11 +01:00
Andy Wilkinson d6d59edb35 Merge branch '1.5.x' into 2.0.x 2018-10-08 12:19:52 +01:00
Stephane Nicoll 7da3396555 Merge branch '2.0.x' 2018-10-08 10:45:49 +02:00
dreis2211 55ec016bac Remove unused fields in tests
Closes gh-14707
2018-10-08 10:40:04 +02:00
Andy Wilkinson 43c0d42dc2 Merge branch '2.0.x' 2018-10-06 13:06:53 +01:00
Andy Wilkinson bbdd6cc9cb Merge branch '1.5.x' 2018-10-06 13:06:37 +01:00
Andy Wilkinson 8259c6397e Merge branch '2.0.x' 2018-10-06 12:59:42 +01:00
Andy Wilkinson ca329d3d03 Update Jersey indicator class to one that requires the Servlet API
Previously, if WebFlux and Jersey were on the classpath, but there was
no Servlet API (and no embedded container) on the classpath, the web
application type would be prevented from being reactive. The absence
of the Servlet API would then prevent the web application type from
being servlet so it would be none.

By contrast, if Spring MVC was on the classpath in place of Jersey
the absence of the Servlet API would allow the web application type to
be reactive. This happened because the Spring MVC indicator class is
DispatcherServlet which requires the Servlet API.

This commit updates the Jersey indicator class to be ServletContainer.
This class is both an HttpServlet and a Filter so it too requires the
Servlet API and, therefore, further aligns the deduction behaviour for
Jersey and Spring MVC.

Closes gh-14701
2018-10-06 12:59:25 +01:00
Madhura Bhave 670aaf7875 Make prometheus push gateway available to javadoc generation
See gh-14353
2018-10-05 19:24:38 -07:00
Phillip Webb 20ecf73cd1 Polish "Add Prometheus push gateway support"
Rework Prometheus push gateway support so that the central class can
be used outside of auto-configuration. The shutdown flags have also
been replaced with a single "shutdown-operation" property since it's
unlikely that both "push" and "delete" will be required.

It's also possible now to supply a `TaskScheduler` to the manager.

See gh-14353
2018-10-05 18:12:41 -07:00
David J. M. Karlsen 4e71981f77 Add Prometheus push gateway support
Add support for Prometheus push gateway so that short lived processes
(for example batch jobs) can still submit metrics to Prometheus.

Closes gh-14353
2018-10-05 18:12:19 -07:00
Stephane Nicoll 35752a54d2 Adapt to latest change in Micrometer 1.1 2018-10-05 23:42:16 +02:00
Phillip Webb 1d8e4a8f5c Make devtools set spring.messages.reloadable=true
Update `DevToolsPropertyDefaultsPostProcessor` to automatically set
the recently introduced `spring.messages.reloadable` property to
`true`.

Closes gh-14699
2018-10-05 13:59:26 -07:00
Phillip Webb 01b8667dd7 Update copyright year for changed files 2018-10-05 13:40:07 -07:00
Phillip Webb 2cdd3dd20f Move to micrometer SNAPSHOT 2018-10-05 13:39:49 -07:00
Phillip Webb 5c7a4523ea Merge '2.0.x' 2018-10-05 13:34:12 -07:00
Phillip Webb 6aedb69443 Update copyright year for changed files 2018-10-05 13:31:33 -07:00
Andy Wilkinson 80d27f7129 Make micrometer-jersey2's classes available to javadoc generation
See gh-12482
2018-10-05 21:31:06 +01:00
Phillip Webb 456d1af443 Polish 2018-10-05 13:30:24 -07:00
Andy Wilkinson 72e2313fe8 Polish "Auto-configure Micrometer's Jersey 2 server instrumentation"
Closes gh-12482
2018-10-05 16:40:57 +01:00
Michael Weirauch dd126faf5a Auto-configure Micrometer's Jersey 2 server instrumentation
See gh-12482

Co-authored-by: Michael J. Simons <michael@simons.ac>
2018-10-05 16:07:10 +01:00
Stephane Nicoll 40de371a52 Fix build failure 2018-10-05 16:50:41 +02:00
Stephane Nicoll bb89012922 Merge branch '2.0.x' 2018-10-05 16:43:30 +02:00
Stephane Nicoll febaf15b61 Guard WebApplicationType detection in case spring web is not present
Closes gh-14589
2018-10-05 16:41:22 +02:00
Andy Wilkinson 4108f4a478 Merge branch '2.0.x' 2018-10-05 15:18:49 +01:00
Andy Wilkinson 8573edc03e Provide complete dependency management for Micrometer
Closes gh-14700
2018-10-05 15:11:54 +01:00
Andy Wilkinson 4d1fc196de Use Windows-specific custom features so download URI is correct
Closes gh-14690
2018-10-05 14:56:07 +01:00
Stephane Nicoll bdd8e53124 Improve filtering of actuator auto-configurations
This commit splits auto-configurations that require different
environments so that they can be filtered early.

Closes gh-12260
2018-10-05 14:57:17 +02:00
Andy Wilkinson 9bc6dbd8d8 Merge branch '2.0.x' 2018-10-05 13:06:38 +01:00
Andy Wilkinson ad647ba073 Make JSON-B auto-config back of if no JSON-P implementation is available
Closes gh-14675
2018-10-05 13:05:14 +01:00
Andy Wilkinson 2d3bd62353 Merge branch '2.0.x' 2018-10-05 12:59:35 +01:00
Stephane Nicoll 91b4dc2f69 Polish "Add reactive health indicator for Couchbase"
Closes gh-13926
2018-10-05 13:57:31 +02:00
Mikalai Lushchytski 20ff0d97e4 Add reactive health indicator for Couchbase
See gh-13926
2018-10-05 13:57:17 +02:00
Stephane Nicoll 36e2c8bcb5 Add missing entry for Couchbase health indicator 2018-10-05 13:56:50 +02:00
Andy Wilkinson 8ee4c5e4a1 Use offical JSON API jar rather than Geronimo's in Artemis starter
Closes gh-14691
2018-10-05 12:44:53 +01:00
Andy Wilkinson b915234513 Merge branch '2.0.x' 2018-10-05 12:11:24 +01:00
Andy Wilkinson 0ad0785bf7 Provide complete dependency management for Apache Johnzon
Closes gh-14692
2018-10-05 12:00:26 +01:00
Andy Wilkinson 5bbdca8cdb Use offical JSON API jar rather than Geronimo's in Artemis starter
Closes gh-14691
2018-10-05 11:48:47 +01:00
Andy Wilkinson 8a7d127600 Merge branch '2.0.x' 2018-10-05 11:04:10 +01:00
Andy Wilkinson 7490d8b99d Make JSON-B auto-config back off when no implementation is available
Previously, the JSON-B auto-configuration would be enabled when the JSON-B API was
on the classpath. This led to a failure if there was no implementation available.

The JSON-B API loads an implementation using the service loader. This commit updates
the auto-configuration to be conditional on the presence of a
META-INF/services/javax.json.bind.spi.JsonbProvider file on the classpath.

Closes gh-14675
2018-10-05 11:03:49 +01:00
Andy Wilkinson a3d2f3f594 Polish "Add Kotlin DSL examples to Gradle Plugin's documentation"
Closes gh-14585
2018-10-05 10:41:13 +01:00
jnizet 5ed6c0d1ab Add Kotlin DSL examples to Gradle Plugin's documentation
See gh-14585
2018-10-05 10:41:13 +01:00
Andy Wilkinson c9da881322 Polish "Drop support for "all" from management.metrics.distribution.sla"
Closes gh-14684
2018-10-05 09:25:10 +01:00
artsiom ccb964e886 Drop support for "all" from management.metrics.distribution.sla
See gh-14684
2018-10-05 09:22:43 +01:00
Andy Wilkinson ef7c2bc6ea Merge branch '2.0.x' 2018-10-05 08:37:45 +01:00
Andy Wilkinson e7f100d5d7 Improve test coverage of PropertiesMeterFilter
Closes gh-14689
2018-10-05 08:37:19 +01:00
Phillip Webb 11ac9bf6b5 Polish "Add ReloadableResourceBundleMessageSource support"
See gh-13377
2018-10-04 19:45:42 -07:00
Rui Figueira 22abe35f95 Add ReloadableResourceBundleMessageSource support
Add a `spring.messages.reloadable` configuration property which can be
used to auto-configure a `ReloadableResourceBundleMessageSource` rather
than a `ResourceBundleMessageSource`.

Closes gh-13377
2018-10-04 19:45:41 -07:00
Phillip Webb 8b59503291 Validate server.servlet.path does not contain '*'
Update `WebMvcProperties` to enforce that `server.servlet.path` never
contains a wildcard ['*'] character.

Closes gh-13292
2018-10-04 19:45:41 -07:00
Phillip Webb 6baaa3df77 Use ResourceLoader.getClassLoader() for factories
Update `SpringApplication` to load and initialize `spring.factories`
classes using the `ResourceLoader.getClassLoader()`.

Closes gh-14641
2018-10-04 19:45:40 -07:00
Madhura Bhave daa3d457b7 Revert OAuth2 Client Registration Grant Type Hierarchy
Closes gh-14554
2018-10-04 15:21:36 -07:00
Phillip Webb 546bd89f2e Merge branch '2.0.x' 2018-10-04 10:17:29 -07:00
Phillip Webb 2b6bdfe277 Fix Reactive...Context NPE
Fix possible NPE in `ReactiveWebServerApplicationContext`.

See gh-14666
2018-10-04 10:16:23 -07:00
Andy Wilkinson 8c6910cf58 Polish "Refactor Gradle plugin tests to use runner's plugin classpath"
This commit removes the need for the Kotlin plugin tests to continue
to set the plugin classpath in each test build script. This is
achieved by adding the jars files containing the Kotlin plugin and
its dependencies to the runner's plugin classpath in the same way as
was already done for the dependency management plugin.

Closes gh-14680
2018-10-04 17:27:26 +01:00
jnizet c51449585e Refactor Gradle plugin tests to use runner's plugin classpath
Previously, each test build script used a property to configure its
classpath. This commit simplifies the tests by setting the classpath
once on the GradleRunner, thereby removing the need for it to be set in
each test script. It also allows, and, in fact, requires, the use of
the plugins block to apply the Boot plugin under test.

Unfortunately, this doesn't work for the tests for the reaction to the
Kotlin plugin. See the comments in the GradleBuild class and in each
KotlingPluginActionIntegrationTests build script.

See gh-14680
2018-10-04 17:26:42 +01:00
Stephane Nicoll 7e3bee35d7 Merge branch '2.0.x' 2018-10-04 17:54:25 +02:00
Stephane Nicoll 6cc272ecf5 Polish "Make sure cache busting works with error pages"
Closes gh-14583
2018-10-04 17:53:56 +02:00
artsiom 64f04fceea Make sure cache busting works with error pages
See gh-14583
2018-10-04 17:53:56 +02:00
Phillip Webb 3e25996405 Merge branch '2.0.x' 2018-10-04 08:00:16 -07:00
Phillip Webb 8c896d9376 Improve Reactive...Context thread safety
Refactor `ReactiveWebServerApplicationContext` to improve thread safety
by using a single manager object rather than then trying to synchronize
the `WebServer` and `HttpHandler`.

Closes gh-14666
2018-10-04 07:59:39 -07:00
Andy Wilkinson 76849c12e5 Merge branch '2.0.x' 2018-10-04 15:56:11 +01:00
Andy Wilkinson cf24d18139 Explicity set permissions on files in lib of Boot distribution
Previously, only the permissions for the scripts in bin/ were set. The
permissions for the files in lib/ were not explicity set, leaving them
with the same permissions as the source files in Gradle's cache. This
has proven to be a little brittle when building in certain
environments, leading to test failures. It also assumes that the
file permissions in Gradle's cache will be appropriate for entries in
a distribution archive. That may not always be a reasonable assumption
to make.

To avoid the above-described problems, this commit updates the copy
spec that's used to add files to lib/ in the archive so that each
file uses 0644 for its permissions.

Closes gh-14158
2018-10-04 15:55:48 +01:00
Andy Wilkinson 4a222cb4e5 Polish "Log a warning when using fallback for pid and log locations"
Closes gh-14519
2018-10-04 15:21:05 +01:00
Andreas Gebhardt 3f894cbeeb Log a warning when using fallback for pid and log locations
See gh-14519
2018-10-04 15:19:48 +01:00
Stephane Nicoll 5d0e812afe Merge branch '2.0.x' 2018-10-04 15:53:26 +02:00
Stephane Nicoll 1b10d3fcbf Fix missing metadata for nested POJO
This commit fixes missing descriptions and default values when
applicable for `management.server.ssl`, `server.compression`,
`server.http2`, `server.servlet.jsp`, `server.servlet.session` and
`server.ssl`.

Those nested namespace are managed by a POJO that is declared outside
of the module of the target @ConfigurationProperties type using it. As
a result, the annotation processor has no access to the source model and
can't extract the description and the default value, if any.

This commit migrates the misleading field-level Javadoc to manual meta
data for the time being.

Closes gh-14669
2018-10-04 15:49:04 +02:00
Stephane Nicoll d445ed7560 Merge branch '2.0.x' 2018-10-04 12:24:14 +02:00
Roland Weisleder d2a063b26a Clarify Javadoc of ConditionalOn annotations
Closes gh-14681
2018-10-04 12:22:52 +02:00
Andy Wilkinson da7daece08 Tolerate Integer values for port properties
Closes gh-14682
2018-10-04 10:53:02 +01:00
Andy Wilkinson b473f2996d Polish 2018-10-04 10:39:07 +01:00
Andy Wilkinson b4638b82d0 Prevent ApplicationListener that depends on EMF from creating a cycle
Previously, when an EntityManagerFactory was being initialized
synchronously, the DataSourceSchemaCreatedEvent would be published
during its initialization. This meant that an application listener that
depends on the EntityManagerFactory would create a dependency cycle if
it was a potential recipient of the event.

For the synchronous case, this commit moves the publication of the
event so that it occurs after the initialisation of the entity manager
factory. This allows an application listener that is a potential
recipient of the DataSourceSchemaCreatedEvent to depend on the
EntityManagerFactory without creating a cycle.

Closes gh-14651
2018-10-03 17:29:54 +01:00
Andy Wilkinson 7cbee701cd Allow user-provided ExecuteListenerProvider to go after Boot's
Closes gh-14598
2018-10-03 16:56:50 +01:00
Brian Clozel 7e4b22d25e Upgrade to Spring Framework 5.1.1 SNAPSHOTs
See gh-14677
2018-10-03 17:18:17 +02:00
Stephane Nicoll 00e122c7ec Merge branch '2.0.x' 2018-10-03 14:39:15 +02:00
Stephane Nicoll b4c5aea152 Fix detection of WebApplicationType with context class
Closes gh-14589
2018-10-03 14:37:31 +02:00
Johnny Lim 335775892b Polish
See gh-14667
2018-10-03 13:57:18 +02:00
Stephane Nicoll b4a8ad06de Merge branch '2.0.x' 2018-10-03 13:40:28 +02:00
Janne Valkealahti 26345d3900 Polish docs
This commit replaces tabs to spaces in a yaml example for configuring
endpoint web exposure include.

Closes gh-14670
2018-10-03 13:39:20 +02:00
Stephane Nicoll 84c8f38368 Merge branch '2.0.x' 2018-10-03 11:15:55 +02:00
Stephane Nicoll b248afc808 Clarify conversion system in Appendix
Closes gh-14645
2018-10-03 11:15:09 +02:00
Stephane Nicoll 42e6126066 Merge branch '2.0.x' 2018-10-03 10:34:02 +02:00
Stephane Nicoll 135797c347 Remove useless prerequisites section
Closes gh-14668
2018-10-03 10:33:24 +02:00
dreis2211 e68b9e8322 Remove unnecessary parameters for String.substring
Closes gh-14661
2018-10-03 09:34:56 +02:00
Phillip Webb 7087f90f2d Merge branch '2.0.x' 2018-10-02 23:01:46 -07:00
Phillip Webb bd9500290e Defer HttpHandler initialization
Update `ReactiveWebServerApplicationContext` so that the `HttpHandler`
bean is not longer created from `onRefresh`, but is instead created
only when the server starts.

Prior to this commit, the WebFlux hander would cause early
initialization of several beans, including Jackson Modules.

Closes gh-14666
2018-10-02 22:57:09 -07:00
Phillip Webb 7f35f8a982 Fix ConfigurationPropertyName.equals
Fix a regression in `ConfigurationPropertyName.equals` that was causing
incorrect results.

Closes gh-14665
2018-10-02 14:00:22 -07:00
Phillip Webb aa6a58d24c Merge branch '2.0.x' 2018-10-02 14:00:13 -07:00
Phillip Webb 7afde2ba43 Add another ConfigurationPropertyName.equals test
Include an additional test to ensure that `.equals` works for names
starting with the same value.

See gh-14665
2018-10-02 13:58:31 -07:00
Phillip Webb d76bba5e6f Migrate from ExpectedException rule to AssertJ
Replace ExpectedException JUnit rules with AssertJ exception
assertions.

Closes gh-14336
2018-10-02 10:55:28 -07:00
Phillip Webb 42cb0effc4 Merge branch '2.0.x' 2018-10-02 10:30:33 -07:00
Phillip Webb 3ff20b2440 Restore import-control checkstyle
Restore checkstyle import control and fix a few violations in the
process.

Closes gh-14660
2018-10-02 10:30:14 -07:00
Andy Wilkinson fcc73c6d88 Polish "Fix shellcheck warnings in CLI's bash script"
Closes gh-11458
2018-10-02 16:45:58 +01:00
leogtzr 69b844cb13 Fix shellcheck warnings in CLI's bash script
See gh-11458
2018-10-02 16:45:58 +01:00
Stephane Nicoll aaecdfb527 Deprecate Cassandra properties that require a default constructor
Closes gh-14473
2018-10-02 17:43:59 +02:00
Stephane Nicoll 068040e227 Register SpringBeanContainer with default Hibernate setup
Closes gh-13717
2018-10-02 16:41:02 +02:00
Stephane Nicoll 7bf32290c6 Update description of the `logger-name` hint
Closes gh-14456
2018-10-02 15:05:50 +02:00
Stephane Nicoll 3f9c41df81 Merge branch '2.0.x' 2018-10-02 10:48:14 +02:00
Rodolpho Couto e30f693699 Add reference to valiktor-spring-boot-starter
Closes gh-14514
2018-10-02 10:47:26 +02:00
Phillip Webb 2add65fe15 Polish Neo4J BookmarkManager auto-configuration
Closes gh-14568
2018-10-01 10:34:10 -07:00
Michael J. Simons b7847d98a7 Auto-configure Neo4J BookmarkManager when possible
Add `Neo4jBookmarkManagementConfiguration` which provides an instance
of `BookmarkManager` if necessary and Caffeine cache is on the
classpath. Depending on the kind of application, the `BookmarkManager`
will be request scoped or singleton, as recommended by Spring Data
Neo4j.

See gh-14568
2018-10-01 10:29:17 -07:00
Phillip Webb 94b366bc16 Make assertable context interfaces configurable
Update `Assertable*ApplicationContext` interfaces so that they also
extend the appropriate `Configurable*ApplicationContext` interface.

Closes gh-14650
2018-10-01 10:27:39 -07:00
Johnny Lim b079eeff1a Polish
Closes gh-14621
2018-10-01 10:51:13 -04:00
Stephane Nicoll 2d36a6f952 Merge branch '2.0.x' 2018-10-01 10:50:58 -04:00
Johnny Lim 1eca492c5e Polish
See gh-14621
2018-10-01 10:46:27 -04:00
Andy Wilkinson 121aad8397 Merge branch '2.0.x' 2018-10-01 15:39:15 +01:00
Andy Wilkinson da1fde6a5f Merge branch '1.5.x' into 2.0.x 2018-10-01 15:38:53 +01:00
Andy Wilkinson d145fab7e5 Merge branch '2.0.x' 2018-10-01 15:14:53 +01:00
Andy Wilkinson fd10226c54 Merge branch '1.5.x' into 2.0.x 2018-10-01 15:14:45 +01:00
Andy Wilkinson 9735774b4a Merge branch '2.0.x' 2018-10-01 14:28:16 +01:00
Andy Wilkinson 62b481c7db Merge branch '1.5.x' into 2.0.x 2018-10-01 14:28:09 +01:00
Andy Wilkinson 726579a910 Merge branch '2.0.x' 2018-10-01 14:01:38 +01:00
Andy Wilkinson 89f5cfc5a4 Merge branch '1.5.x' into 2.0.x 2018-10-01 13:51:55 +01:00
Johnny Lim 1e756db966 Use Commons Logging for OnlyOnceLoggingDenyMeterFilter
Closes gh-14637
2018-09-30 17:47:18 -04:00
Andy Wilkinson 285f6bfd5f Merge branch '2.0.x' 2018-09-27 06:59:37 -04:00
jnizet eee07a840f Move away from deprecated Gradle configurations
Closes gh-14593
2018-09-27 06:58:31 -04:00
Johnny Lim 698bbd6a9e Polish
Closes gh-14597
2018-09-26 11:45:21 -04:00
Stephane Nicoll c403ac9db6 Merge branch '2.0.x' 2018-09-26 11:43:59 -04:00
Stephane Nicoll b6e5103dc4 Polish contribution
Closes gh-14592
2018-09-26 11:43:19 -04:00
Marten Deinum 77afe76ed5 Polish
The SpringBootContextLoader still checked if tests were annotated with
@IntegrationTest or @WebIntegrationTest. Those classes have been
removed in Spring Boot 1.5 and been deprecated since 1.4.

This commit removes the check on the annotations as well as the static
list of names.

See gh-14592
2018-09-26 11:41:25 -04:00
Andy Wilkinson f88ebf75cd Use Mongo 3.5.5 by default with Embedded mongo
Closes gh-14476
2018-09-25 16:44:38 -04:00
Andy Wilkinson 1a8f519922 Raise the default version of Mongo to 3.6.5 when using Embedded Mongo
While MongoDB 3.6.7 has been released, 3.6.5 is the latest version that's supported
by the version of Embedded Mongo that we're currently using.

Closes gh-14476
2018-09-25 15:19:34 -04:00
Hanope e5ed5ebf8b Fix "Query Parameters" section name
Closes gh-14600
2018-09-25 14:24:34 -04:00
Phillip Webb 64627fa9d6 Restore Maven 3.3 compatibility
Downgrade the `spring-boot-maven-plugin` maven version to 3.3.

Closes gh-14464
2018-09-24 15:40:25 -04:00
Phillip Webb a04e913c22 Make ResourceHandlerRegistrationCustomizer public
Make `ResourceHandlerRegistrationCustomizer` a public top level class.

Closes gh-14587
2018-09-24 10:20:25 -04:00
Phillip Webb ff98ba0fa5 Allow early OnWebApplication filtering
Update `OnWebApplicationCondition` to be an
`AutoConfigurationImportFilter` and filter out classes early.

Closes gh-13328
2018-09-24 09:46:30 -04:00
Phillip Webb 75bde00334 Generate auto-configuration OnWebApplication data
Update the auto-configuration annotation processor to generate
properties for `@OnWebApplication`.

See gh-13328
2018-09-24 09:46:26 -04:00
Phillip Webb c2f8398c06 Allow early OnBeanCondition filtering
Update `OnBeanCondition` to be an `AutoConfigurationImportFilter` and
filter out classes early.

See gh-13328
2018-09-24 09:45:49 -04:00
Phillip Webb 586507c49a Generate auto-configuration OnBean data
Update the auto-configuration annotation processor to generate
properties for `@ConditionalOnBean` and `@ConditionalOnSingleCandidate`.

See gh-13328
2018-09-24 09:45:46 -04:00
Phillip Webb e4f54a45be Add AutoConfigurationImportFilter base classes
Add `FilteringSpringBootCondition` base class and refactor the existing
`OnClassCondition` to use it. Also update the `match` method so that
the `autoConfigurationClasses` array may include `null` elements.

See gh-13328
2018-09-24 09:45:05 -04:00
Stephane Nicoll 5765ed00e8 Polish 2018-09-24 10:53:22 +02:00
Stephane Nicoll 19779951a1 Handle class not found
See gh-14575
2018-09-24 10:23:59 +02:00
Brian Clozel 0f11e69ca3 Upgrade to Micrometer 1.1.0-m.1
Closes #14567
2018-09-24 07:02:10 +02:00
Phillip Webb 84e72193b3 Remove automatic devtools web debug logging
Rework `DevToolsPropertyDefaultsPostProcessor` so that web logging no
longer defaults to `DEBUG`. The post processor now logs an info hint
to suggest the user configure the logging themselves.

Closes gh-14575
2018-09-23 08:44:34 -07:00
Andy Wilkinson 6e00d13d68 Polish 2018-09-23 15:53:14 +01:00
Andy Wilkinson 4c3e2d10d1 Auto-configure Micrometer's Elastic registry
Closes gh-14523
2018-09-23 15:52:29 +01:00
Andy Wilkinson 95ecbc736b Update example for disk space health indicator to use DataSize
See gh-14549
2018-09-23 12:05:57 +01:00
Stephane Nicoll 6145b3d278 Polish 2018-09-23 10:56:40 +02:00
Stephane Nicoll 831b0d7bdd Merge branch '2.0.x' 2018-09-23 10:49:17 +02:00
Stephane Nicoll 885948ce3b Polish 2018-09-23 10:47:09 +02:00
Stephane Nicoll da59d5c6d9 Polish 2018-09-23 10:11:19 +02:00
Stephane Nicoll 47f9379305 Adapt to changes in latest Micrometer snapshot
See gh-14522
2018-09-22 20:02:28 +02:00
Johnny Lim 3dc78d19bf Add log messages to lines only when the destination isn't set
Closes gh-14565
2018-09-22 19:33:58 +02:00
Johnny Lim f1552029ea Add @since in ApplicationContextInitializedEvent
Closes gh-14579
2018-09-22 19:32:40 +02:00
Stephane Nicoll 92afd041b0 Merge branch '2.0.x' 2018-09-22 19:31:45 +02:00
artsiom 7fb13d0dc2 Fix WebSocket web server customizer bean names
Closes gh-14582
2018-09-22 19:29:48 +02:00
Andy Wilkinson 8e9a93e5f3 Align SessionAutoConfigurationRedisTests with changes in Bean-RC1
See gh-14573
2018-09-22 14:57:43 +01:00
Andy Wilkinson 86c2b4a335 Upgrade to Spring Batch 4.1.0.RC1
Closes gh-14577
2018-09-22 08:24:17 +01:00
Andy Wilkinson d4942a11a8 Upgrade to Spring Session Bean-RC1
Closes gh-14573
2018-09-22 08:23:48 +01:00
Andy Wilkinson 977f8b4479 Auto-configure Micrometer's Kafka consumer metrics
Closes gh-14525
2018-09-21 19:56:29 +01:00
Andy Wilkinson 5196e138fa Upgrade to Spring Integration 5.1.0.RC1
Closes gh-14572
2018-09-21 19:22:33 +01:00
Andy Wilkinson 06d05684e5 Upgrade to Spring Kafka 2.2.0.RC1
Closes gh-14491
2018-09-21 19:22:33 +01:00
Andy Wilkinson 5d0a1ee0da Upgrade to Spring AMQP 2.1.0.RC1
Closes gh-14574
2018-09-21 19:22:33 +01:00
Andy Wilkinson ce75a585b1 Make spring-data-jdbc available to javadoc generation
See gh-14489
2018-09-21 19:14:22 +01:00
Andy Wilkinson cce693f708 Upgrade to Spring Security 5.1.0.RELEASE
Closes gh-14571
2018-09-21 16:40:29 +01:00
Andy Wilkinson ade79f7ded Fix duplicate section ID in the docs 2018-09-21 16:07:24 +01:00
Stephane Nicoll 9d46fee6db Merge branch '2.0.x' 2018-09-21 16:47:33 +02:00
Gary Russell 26c1e389df Polish RabbitMQ properties doc
Fix description for `prefetch`; remove reference to transactions since
the direct container does not support transactionSize.

Also fix `transactionSize` to just reference acks; autoConfiguration
doesn't support enabling transactions.

Closes gh-14569
2018-09-21 16:46:12 +02:00
Stephane Nicoll cbae22f0c9 Polish "Migrate size properties to DataSize"
Closes gh-14549
2018-09-21 16:27:28 +02:00
qct eb9f635004 Migrate size properties to DataSize
See gh-14549
2018-09-21 16:01:55 +02:00
Andy Wilkinson def02deaf0 Make micrometer-registry-dynatrace available to javadoc generation
See gh-14522
2018-09-21 14:46:43 +01:00
Andy Wilkinson 258c4838b1 Auto-configure Micrometer's Log4j2 metrics
Closes gh-14524
2018-09-21 14:45:20 +01:00
Andy Wilkinson 0f7897a0ca Upgrade to Spring Data Lovelace-RELEASE
Closes gh-14510
2018-09-21 14:22:11 +01:00
Andy Wilkinson 4b00dc8a5c Add support for Spring Data JDBC (auto-config, starter, and test slice)
Closes gh-14489
2018-09-21 14:18:52 +01:00
Andy Wilkinson fe75f966ff Auto-configure Micrometer's Dynatrace meter registry
Closes gh-14522
2018-09-21 13:11:33 +01:00
Andy Wilkinson 42abf733be Start building against snapshots for Micrometer 1.1.0 M1
See gh-14567
2018-09-21 11:56:00 +01:00
Stephane Nicoll 61858767ed Merge branch '2.0.x' 2018-09-21 11:49:35 +02:00
Stephane Nicoll 5506d972c6 Polish "Fix and improve Neo4j related documentation"
Closes gh-14548
2018-09-21 11:44:50 +02:00
Michael J. Simons 8a53adf3d2 Fix and improve Neo4j related documentation
See gh-14548
2018-09-21 11:44:32 +02:00
Stephane Nicoll f3c637f5c2 Upgrade to Spring Framwork 5.1.0.RELEASE
Closes gh-14481
2018-09-21 10:57:48 +02:00
Stephane Nicoll f1a38c461f Merge branch '2.0.x' 2018-09-21 10:00:22 +02:00
Stephane Nicoll 8cce5d3f64 Polish "Add dependency management for Neo4J OGM embedded driver"
Closes gh-14560
2018-09-21 09:59:18 +02:00
Michael J. Simons ad449e9520 Add dependency management for Neo4J OGM embedded driver
See gh-14560
2018-09-21 09:56:33 +02:00
Phillip Webb 11b1318cad Reduce GC pressure in JAR handler
Update the JAR `Hander` so that URL `startsWith` checks produce less
garbage. Comparisons are now performed first on the `path` rather than
the full `toString`. URL `toString` operations produce quite a lot of
garbage since a `StringBuilder` is always used.

In addition, we now also cache the JarFile URL toString to save repeated
calculation.

Closes gh-14561
2018-09-20 22:33:19 -07:00
Phillip Webb d0de4657d4 Reduce ConfigurationPropertyName GC pressure
Rewrite `ConfigurationPropertyName` in an attempt to consume less memory
and to reduce GC pressure from `toString()`.

Prior to this commit the `toString()` method would always construct a
new value from the name elements. This is sub-optimal since on on many
occasions the `ConfigurationPropertyName` is created from an already
well-formed String. The updated code now attempts to directly use the
original value for both `toString` and `equals` whenever possible.

Further refinements have also been made to the way that elements are
stored. Rather than a list or objects, we now use arrays that contains
the split points and types. This helps to reduce the amount of memory
required to store the name.

Closes gh-13414
2018-09-20 22:27:06 -07:00
Phillip Webb 0a187675b5 Reduce GC in SpringConfigurationPropertySource
Update `SpringConfigurationPropertySource` so that the
`DelegatingPropertyMapper` accepts a maximum of two values and does
not need to wrap arguments in an array. Also optimize the merge
operation to return a single result directly rather than always using
a new `List`.

Closes gh-14563
2018-09-20 22:21:18 -07:00
Phillip Webb 2bc3d8d01f Use shared BindConverter when possible
Update the `Binder` so that a single shares static `BindConverter` is
used whenever possible.

Closes gh-14562
2018-09-20 22:15:31 -07:00
Phillip Webb 865b7ae47f Reduce object creation when binding
Use static finals and private instances to reduce the number of objects
created when binding from the `ConfigFileApplicationListener`.

Closes gh-13436
2018-09-20 22:14:47 -07:00
Phillip Webb 624cd40598 Reduce GC pressure creating load descriptions
Update `ConfigFileApplicationListener` to build description methods
using a `StringBuilder` and not to use `String.format`.

See gh-13436
2018-09-20 22:13:09 -07:00
Andy Wilkinson 426ff3ada7 Store ObjectProvider rather than their Streams to allow reuse
Generally speaking, methods on configuration classes will only be called once
and, therefore, it should be safe to hold a reference to a Stream for later
one-time usage. However, there are some scenarios in Spring Fu where functional
registration results in an attempt being made to use a Stream more than use.

This commit protects against multiple use by storing the ObjectProvider and
getting a new ordered Stream each time it's needed.

Closes gh-14467
2018-09-20 16:16:42 +01:00
Andy Wilkinson cc6cf880cf Stop using ObjectProvider<List> and ObjectProvider<Collection>
Closes gh-14467
2018-09-20 13:19:40 +01:00
Stephane Nicoll 5323095e44 Fix broken build 2018-09-20 13:32:41 +02:00
Stephane Nicoll 22e77e02b6 Polish "Add support for SAP Hana Database"
Closes gh-14513
2018-09-20 12:02:55 +02:00
Michael cea95c303f Add support for SAP Hana Database
See gh-14513
2018-09-20 11:56:17 +02:00
Stephane Nicoll cd45343d41 Upgrade to Maven Shade Plugin 3.2.0
Closes gh-14546
2018-09-20 11:45:36 +02:00
Stephane Nicoll 90f4da0dac Upgrade to Mongo Driver Reactivestreams 1.9.2
Closes gh-14545
2018-09-20 11:45:35 +02:00
Stephane Nicoll 8b2bf3e0d9 Upgrade to Mongodb 3.8.2
Closes gh-14544
2018-09-20 11:45:34 +02:00
Stephane Nicoll 2a2f1e4023 Upgrade to Jooq 3.11.5
Closes gh-14543
2018-09-20 11:45:34 +02:00
Stephane Nicoll fd8c074371 Upgrade to Kotlin 1.2.70
Closes gh-14542
2018-09-20 11:45:33 +02:00
Stephane Nicoll ad340d253c Upgrade to Influxdb Java 2.13
Closes gh-14541
2018-09-20 11:45:32 +02:00
Stephane Nicoll 705ac1b4f3 Upgrade to Elasticsearch 6.4.1
Closes gh-14540
2018-09-20 11:45:32 +02:00
Stephane Nicoll a176e64ad8 Upgrade to Htmlunit 2.33
Closes gh-14539
2018-09-20 11:45:31 +02:00
Stephane Nicoll 310d6a5c79 Upgrade to Lettuce 5.1.0.RELEASE
Closes gh-14538
2018-09-20 11:45:30 +02:00
Stephane Nicoll 1ce6fdeeb8 Upgrade to Hazelcast 3.10.5
Closes gh-14537
2018-09-20 11:45:29 +02:00
Stephane Nicoll a376ebafd3 Merge branch '2.0.x' 2018-09-20 11:39:13 +02:00
Stephane Nicoll 63d276da58 Upgrade to Neo4j Ogm 3.1.3
Closes gh-14536
2018-09-20 11:37:13 +02:00
Stephane Nicoll 75c893164e Upgrade to Hibernate Validator 6.0.13.Final
Closes gh-14535
2018-09-20 11:37:12 +02:00
Stephane Nicoll 5cac8ac70b Upgrade to Elasticsearch 5.6.12
Closes gh-14534
2018-09-20 11:37:12 +02:00
Stephane Nicoll 0143cb6193 Upgrade to Janino 3.0.10
Closes gh-14533
2018-09-20 11:37:11 +02:00
Stephane Nicoll f49f407b99 Upgrade to Johnzon Jsonb 1.1.10
Closes gh-14532
2018-09-20 11:37:10 +02:00
Stephane Nicoll 59ecfea104 Upgrade to Unboundid Ldapsdk 4.0.8
Closes gh-14531
2018-09-20 11:37:09 +02:00
Stephane Nicoll 380696de58 Upgrade to Jackson 2.9.7
Closes gh-14530
2018-09-20 11:37:09 +02:00
Stephane Nicoll 8652f40781 Allow Quartz property to set the scheduler name
This commit makes sure that "org.quartz.scheduler.instanceName" is
honoured if set. Previously, "spring.quartz.scheduler-name" had a
default value and was always set. As a result, `SchedulerFactoryBean`
did not take the quartz property into account.

Closes gh-14243
2018-09-20 11:27:57 +02:00
Stephane Nicoll 9bca95e499 Upgrade to Reactor Californium RELEASE
Closes gh-14507
2018-09-20 10:47:19 +02:00
Stephane Nicoll 1e7c236589 Merge branch '2.0.x' 2018-09-20 10:46:01 +02:00
Stephane Nicoll 8aece088a4 Upgrade to Spring Web Services 3.0.4.RELEASE
Closes gh-14526
2018-09-20 10:43:52 +02:00
Stephane Nicoll ac2fefb6c3 Merge branch '2.0.x' 2018-09-20 10:25:20 +02:00
Stephane Nicoll 957321492f Merge branch '1.5.x' into 2.0.x 2018-09-20 10:24:57 +02:00
Johnny Lim 521f746151 Polish
Closes gh-14517
2018-09-20 09:51:10 +02:00
Andy Wilkinson efae363974 Register functional rather than reflective bean definitions where possible
Closes gh-14516
2018-09-19 19:59:09 +01:00
Andy Wilkinson 65295e0e14 Merge branch '2.0.x' 2018-09-19 19:52:19 +01:00
Andy Wilkinson bff93a67ce Fix remote DevTools restart when a previously added class is then changed
Previously, if a class was added and then changed, a restart would be triggered
and things would behave as if the class had been deleted. This occurred
because, when looking for additional classes that were not on the original
classpath, only files that had been added were considered. The subsequent
change to the class was noticed as a modified rather than an addition,
resulting in the class being skipped.

This commit updates the resource resolver to only ignore deleted files and
consider both added files and modified files when looking for additional
resources.

Closes gh-14205
2018-09-19 18:02:01 +01:00
Johnny Lim fd97f07209 Use meaningful name for MockServerConfigurer bean
Closes gh-14512
2018-09-19 15:31:38 +02:00
Andy Wilkinson 6164c9e8b6 Start building against Spring Data Lovelace snapshots
See gh-14510
2018-09-19 14:21:20 +01:00
Stephane Nicoll ce60f82998 Merge branch '2.0.x' 2018-09-19 12:09:29 +02:00
Marcel Overdijk 0870f23902 Fix dependency management for Caffeine
Closes gh-14505
2018-09-19 12:04:49 +02:00
yongsungjeon 11864f2bb6 Use constant for produces attribute
Closes gh-14501
2018-09-19 11:38:29 +02:00
Stephane Nicoll 36d22c8541 Merge branch '2.0.x' 2018-09-19 11:34:39 +02:00
DK Lee 01cf52447c Fix typo in WebClient example
Closes gh-14499
2018-09-19 11:34:04 +02:00
Stephane Nicoll 390fc03769 Polish "Add reference to ssh shell spring boot starter"
Closes gh-14496
2018-09-19 11:27:26 +02:00
François Onimus b416a46674 Add reference to ssh shell spring boot starter
See gh-14496
2018-09-19 11:26:08 +02:00
Stephane Nicoll f42891489d Polish key description
Closes gh-14450
2018-09-19 10:31:01 +02:00
Johnny Lim d0a252181b Polish
Closes gh-14449
2018-09-19 09:58:31 +02:00