Commit Graph

9265 Commits (6a1f61c1bf847179c432b0b8acb814e2c4b6dab4)

Author SHA1 Message Date
Stephane Nicoll 09fb95bd6d Upgrade to Netty 4.1.49.Final
Closes gh-21186
5 years ago
Stephane Nicoll 13edf342f6 Upgrade to Micrometer 1.3.8
Closes gh-21185
5 years ago
Stephane Nicoll c8b2440afb Upgrade to Dropwizard Metrics 4.1.6
Closes gh-21184
5 years ago
Stephane Nicoll 0fb174e54c Upgrade to Hikaricp 3.4.3
Closes gh-21183
5 years ago
Stephane Nicoll 732a51a898 Upgrade to Sendgrid 4.4.8
Closes gh-21182
5 years ago
Stephane Nicoll 8fb2ea4e65 Upgrade to Appengine Sdk 1.9.80
Closes gh-21181
5 years ago
Stephane Nicoll 8831856d79 Upgrade to Caffeine 2.8.2
Closes gh-21180
5 years ago
Stephane Nicoll fb6fcff198 Upgrade to Couchbase Client 2.7.14
Closes gh-21179
5 years ago
Phillip Webb 50e9674631 Backport "Attempt to prevent JarFiles from being left open"
Update `JarFile` so that `super.close()` is called early so that the
file is not left open. Since we re-implement `JarFile` methods to work
directly on the underlying `RandomAccessDataFile`, it should be safe
to close immediately.

Closes gh-21177
5 years ago
Phillip Webb 6fe30a8a7e Merge branch '2.2.x'
Closes gh-21175
5 years ago
Phillip Webb 36b082e8c1 Merge branch '2.1.x' into 2.2.x
Closes gh-21174
5 years ago
Phillip Webb e2705b2cfd Throw exception if classpath*: is used
Update `ConfigFileApplicationListener` to throw a better exception if
`classpath*:` is used as a location.

Closes gh-21168
5 years ago
Andy Wilkinson fb33610027 Automatically create developmentOnly configuration
Previously, the developmentOnly configuration, typically used for
Devtools, had to be declared manually. The BootJar and BootWar tasks
then had a property, excludeDevtools, that could be used to control
whether or not Devtools would be excluded from the executable archive.

This commit updates the reaction to the Java plugin being applied to
automatically create the developmentOnly configuration. The classpaths
of bootJar and bootWar are then configured not to include the contents
of the developmentOnly configuration. As a result of this, the
excludeDevtools property is no longer needed and has been deprecated.
Its default has also been changed from true to false to make it easy
to opt in to Devtools, when configured as a development-only
dependency, being included in executable jars and wars by adding
developmentOnly to the classpath of the archive task.

Closes gh-16599
5 years ago
Stephane Nicoll cbdc5d9746 Upgrade to Reactor Bom Dysprosium-SR7
Closes gh-20943
5 years ago
Stephane Nicoll 0761ff1f0b Upgrade to Reactor Bom Dysprosium-SR7
Closes gh-20942
5 years ago
Stephane Nicoll 16005c608f Upgrade to Reactor Bom Californium-SR18
Clsoes gh-20937
5 years ago
Brian Clozel dfdee3e00e Revert "Add support for Reactor Netty Micrometer metrics"
This commit removes the support for Reactor Netty metrics since it
seems that Spring Boot should not use this feature:

* HTTP metrics are already covered by WebFlux
* TCP metrics are only meant to TCP server/clients
* allocator metrics are already provided by Netty and there is
no specific API to enable them here.

Closes gh-19388
5 years ago
Stephane Nicoll 4165863859 Polish contribution
See gh-21130
5 years ago
richard1230 a989879dbc Polish
See gh-21130
5 years ago
dreis2211 c7d7facc3a Remove empty test rule package
See gh-21137
5 years ago
Stephane Nicoll 3ea0b4198b Upgrade to Maven Dependency Plugin 3.1.2
Closes gh-21167
5 years ago
Stephane Nicoll a7e3257e7f Upgrade to Xmlunit2 2.6.4
Closes gh-21166
5 years ago
Stephane Nicoll cac0407762 Upgrade to Spring Ws 3.0.9.RELEASE
Closes gh-21165
5 years ago
Stephane Nicoll 4e93115b05 Upgrade to Spring Session Bom Bean-SR10
Closes gh-21164
5 years ago
Stephane Nicoll 0697b3acb4 Upgrade to Spring Security 5.1.9.RELEASE
Closes gh-21163
5 years ago
Stephane Nicoll f24351d12a Upgrade to Spring Batch 4.1.4.RELEASE
Closes gh-21162
5 years ago
Stephane Nicoll c3c5b444e7 Upgrade to Postgresql 42.2.12
Closes gh-21161
5 years ago
Stephane Nicoll 25fb48d0e3 Upgrade to Neo4j Ogm 3.1.19
Closes gh-21160
5 years ago
Stephane Nicoll 067a07386a Upgrade to Mimepull 1.9.13
Closes gh-21159
5 years ago
Stephane Nicoll e6b17bc5b8 Upgrade to Infinispan 9.4.19.Final
Closes gh-21158
5 years ago
Stephane Nicoll 9bb16e44b0 Upgrade to Hibernate Validator 6.0.19.Final
Closes gh-21157
5 years ago
Stephane Nicoll 191a4e5a51 Upgrade to Hibernate 5.3.16.Final
Closes gh-21156
5 years ago
Stephane Nicoll 19826847d4 Upgrade to Freemarker 2.3.30
Closes gh-21155
5 years ago
Stephane Nicoll 46fe25480c Upgrade to Jetty 9.4.28.v20200408
Closes gh-21154
5 years ago
Stephane Nicoll ce4001c54b Upgrade to Janino 3.0.16
Closes gh-21153
5 years ago
Stephane Nicoll a9a3845168 Upgrade to Groovy 2.5.11
Closes gh-21152
5 years ago
Stephane Nicoll a01b0b7145 Upgrade to Tomcat 9.0.34
Closes gh-21151
5 years ago
Stephane Nicoll 4a51a8be2a Upgrade to Solr 7.7.3
Closes gh-21150
5 years ago
Stephane Nicoll a336f29ce2 Upgrade to Httpclient 4.5.12
Closes gh-21149
5 years ago
Stephane Nicoll 72e3d71067 Upgrade to Activemq 5.15.12
Closes gh-21148
5 years ago
Stephane Nicoll c0398e190a Upgrade to Mysql 8.0.20
Closes gh-21147
5 years ago
Stephane Nicoll d63d2075fa Upgrade to Joda Time 2.10.6
Closes gh-21146
5 years ago
Stephane Nicoll 671f3c2075 Upgrade to Undertow 2.0.30.Final
Closes gh-21145
5 years ago
Stephane Nicoll d1821b3895 Upgrade to Rxjava2 2.2.19
Closes gh-21144
5 years ago
Stephane Nicoll b29d2eedc8 Upgrade to Netty Tcnative 2.0.30.Final
Closes gh-21143
5 years ago
Stephane Nicoll 8a02bac617 Upgrade to Netty 4.1.49.Final
Closes gh-21142
5 years ago
Stephane Nicoll effa0cb024 Upgrade to Micrometer 1.1.13
Closes gh-21141
5 years ago
Stephane Nicoll 4ea31a2d2e Upgrade to Appengine Sdk 1.9.80
Closes gh-21140
5 years ago
Stephane Nicoll 4c3880427a Upgrade to Jackson 2.9.10.20200411
Closes gh-21139
5 years ago
Stephane Nicoll 0c4efffaa7 Upgrade to Couchbase Client 2.7.14
Closes gh-21138
5 years ago
Brian Clozel 956afdcf97 Add support for Reactor Netty Micrometer metrics
This commit enables the production of TCP and buffer allocator metrics
for Reactor Netty, client and server.

When applications use auto-configured server
(`NettyReactiveWebServerFactory`) and client (through
`WebClient.Builder`) instances, metrics will be enabled.

Note that HTTP metrics are not enabled here, since similar metrics are
already produced at the WebFlux level. Also, to avoid cardinality
explosion of metrics (through the URI tag), Reactor Netty offers
configurable infrastructure to deduplicate URI tags by turning expanded
URI instances into templated URIs. This is not targeted for Spring
usage.

Closes gh-19388
5 years ago
Brian Clozel b337f67f93 Add ReactorNettyHttpClientMapper
This new customizer-like interface make it possible to configure the
Reactor Netty `HttpClient` that is going to be used by the
`WebClient.Builder` provided by Spring Boot.

Closes gh-21135
5 years ago
Brian Clozel 8f84147f37 Fix deprecations after Reactor Netty upgrade 5 years ago
Phillip Webb 77b9dd900c Merge branch '2.2.x'
See gh-21127
5 years ago
Phillip Webb 7d53f7d27f Attempt to prevent JarFiles from being left open
Update `JarFile` to also call `super.close()` early for nested jars.

See gh-21126
5 years ago
Phillip Webb 4f47b7b46a Merge branch '2.2.x'
See gh-21127
5 years ago
Phillip Webb 7c6e912463 Attempt to prevent JarFiles from being left open
Update `JarFile` so that `super.close()` is called early so that the
file is not left open. Since we re-implement `JarFile` methods to work
directly on the underlying `RandomAccessDataFile`, it should be safe
to close immediately.

See gh-21126
5 years ago
Stephane Nicoll 85a3fcfb5e Merge branch '2.2.x'
Closes gh-21119
5 years ago
Stephane Nicoll 80410997ec Polish "Enhance Database initialization how to guide"
See gh-21077
5 years ago
nikmanzotti f2b10be01e Enhance Database initialization how to guide
See gh-21077
5 years ago
Stephane Nicoll 961be0fea3 Merge branch '2.2.x'
Closes gh-21118
5 years ago
dreis2211 e3a9bacf3b Fix typo
See gh-21002
5 years ago
dreis2211 54f319acd5 Remove unused method
See gh-21117
5 years ago
Johnny Lim ef567388c1 Polish
See gh-21110
5 years ago
dreis2211 848127ae49 Avoid recompiling pattern in Handler#canonicalize
See gh-21103
5 years ago
dreis2211 c2fb95151b Fix link to R2DBC Query in docs
See gh-21079
5 years ago
dreis2211 667033c149 Fix Actuator API PDF name
See gh-21054
5 years ago
Stephane Nicoll c7baf5fda1 Update copyright year of changed file
See gh-21009
5 years ago
dreis2211 5eb5bf0a2d Polish
See gh-21009
5 years ago
Stephane Nicoll 85e9f713b0 Update copyright year of changed files
See gh-21007
5 years ago
Johnny Lim 29717423a3 Remove this keyword on member method invocations
See gh-21007
5 years ago
Mikael c06edbe6f4 Polish ApplicationHome
See gh-20992
5 years ago
Andy Wilkinson 076a384c9c Merge branch '2.2.x'
Closes gh-21112
5 years ago
Andy Wilkinson 29dc236bb2 Broaden deprecation warning check in Gradle Plugin's tests
Closes gh-21111
5 years ago
Andy Wilkinson d5b944140a Attempt to stabilise CouchbaseAutoConfigurationIntegrationTests
Starting the CouchbaseContainer fails intermittently when creation
of the primary index for the bucket fails with a read timeout. The
test doesn't require a primary index for the bucket so this commit
disables it creation in the hope that it will help to stabilise the
test.
5 years ago
Andy Wilkinson dc75ca3942 Avoid capturing TCCL when creating DefaultResourceLoaders
Previously, DefaultResourceLoader instances were created using the
default constructor. This causes the resource loader to capture the
TCCL that was in place at that time. This can lead to a class loader
leak if the resource loader is referenced directly or indirectly from
a static field of a class loaded by a different class loader.

This commit updates the creation of DefaultResourceLoader instances
in main code so that the resource load will use the class loader of
the creating class. In almost all cases this will be the same class
loader as was the thread context class loader that was being captured
so the change in behavior is minimal. Crucially, it will still address
the situation where the TCCL was different.

Note the DevTools' ApplicationContextResourceLoader has been updated
to explicitly use the TCCL. This ensures that it uses the restart
class loader which is required for DevTools to function correctly.

Fixes gh-20900
5 years ago
Andy Wilkinson d53be18582 Deprecate support for Bitronix
Closes gh-20823
5 years ago
Phillip Webb 6ccba24494 Merge branch '2.2.x'
Close gh-20507 in 2.3.0.RC1
5 years ago
Phillip Webb 581ce09f88 Merge branch '2.1.x' into 2.2.x
Closes gh-21106
5 years ago
Phillip Webb 416cfc2c86 Improve @Value documentation
Improve "@ConfigurationProperties vs. @Value" documentation with the
recommendation that kebab-case is used with the `@Value` annotation.

Closes gh-20507
5 years ago
Phillip Webb db28c0c65c Backport "Attempt to fix CI" 5 years ago
Phillip Webb 4de69c380d Attempt to fix CI 5 years ago
dreis2211 1be8312886 Fix PropertiesMigrationListenerTests
See gh-21104
5 years ago
Phillip Webb 49345025ac Merge branch '2.2.x'
Closes gh-21105
5 years ago
Phillip Webb 93f7e2b6ba Limit when PortInUseException is thrown
Refactor `PortInUseException` logic to a single place and refine when
the exception is thrown.

Prior to this commit, we assumed that a `BindException` was only thrown
when the port was in use. In fact, it's possible that the exception
could be thrown because the requested address "could not be assigned".

We now only throw a `PortInUserException` if the `BindException` message
includes the phrase "in use".

Fixes gh-21101
5 years ago
Phillip Webb b73d5038d5 Merge branch '2.2.x' 5 years ago
Phillip Webb 9bb53a4c37 Polish 5 years ago
Scott Frederick 8f5ef951de Use current timestamp for index files with Gradle
This commit removes changes the timestamp used when writing the
classpath and layers index files in the Gradle plugin to be the
current timestamp unless `preserveFileTimestamps=true`. It also
polishes some duplication in the handling of entry attributes
when creating the fat archive and adds a test to verify that
the Gradle plugin uses the same fixed timestamp constant as
Gradle uses internally.

See gh-21005
5 years ago
Madhura Bhave b3ccefdb57 Merge branch '2.2.x'
Closes gh-21102
5 years ago
Madhura Bhave 4dc9bbe127 @SpringBootTest classes with different args shouldn't share a context
Fixes gh-20866
5 years ago
Stephane Nicoll ddcd1bc7bb Remove metadata for configuration keys that were removed in 2.0
Closes gh-19706
5 years ago
Stephane Nicoll 623fbcbf8c Polish 5 years ago
Stephane Nicoll 1019dbbc47 Merge branch '2.2.x'
Closes gh-21100
5 years ago
Stephane Nicoll 8ac3ab5551 Add missing metadata for removed configuration keys
Closes gh-20846
5 years ago
Stephane Nicoll 6c02daf2bc Merge branch '2.2.x'
Closes gh-21098
5 years ago
Stephane Nicoll 311952730e Merge branch '2.1.x' into 2.2.x
Closes gh-21097
5 years ago
Stephane Nicoll 291165f060 Order additional metadata according to lexicographic order
Closes gh-21095
5 years ago
Andy Wilkinson d05c973e71 Polish 5 years ago
Stephane Nicoll fe90b2a251 Rename Service Level Agreement to Service Level Objective
This commit harmonizes our integration of Micrometer's Service Level
objectives.

Closes gh-21076
5 years ago
Phillip Webb 48821bccb7 Merge branch '2.2.x'
Closes gh-21092
5 years ago
Phillip Webb d1649fbb9a Merge branch '2.1.x' into 2.2.x
Closes gh-21091
5 years ago
Phillip Webb e0f94f54ac Add "Health as Gauge" how-to documentation
Add how-to documentation describing how health information can be
exported to a Micrometer Gauge.

Closes gh-18329
5 years ago
Madhura Bhave 21bb249a73 Merge branch '2.2.x'
Closes gh-21090
5 years ago
Madhura Bhave b9c2b7b257 Prevent early initialization in MockitoPostProcessor
Fixes gh-20665
5 years ago
Phillip Webb 3e3587e0fb Polish 5 years ago
Phillip Webb 56711d678a Merge branch '2.2.x'
Closes gh-21083
5 years ago
Phillip Webb 102729b5e1 Merge branch '2.1.x' into 2.2.x
Closes gh-21082
5 years ago
Phillip Webb b3d33754a5 Remove outdated FIXMEs from tests
Closes gh-19782
5 years ago
Andy Wilkinson ab82e59aa1 Polish "Improve property name in thrown Micrometer ValidationException"
See gh-21069
5 years ago
Jon Schneider 507b062c43 Improve property name in thrown Micrometer ValidationException
See gh-21069
5 years ago
Stephane Nicoll f0fe7060df Polish 5 years ago
Phillip Webb bf41da5322 Update copyright year of changed files 5 years ago
Phillip Webb ed7a5db174 Fail operations when JarFile is closed
Update `JarFile` to track when the instance has been closed and throw
an exception in the same way that `ZipFile` does.

Closes gh-21072
5 years ago
Phillip Webb cc33e23d31 Merge branch '2.2.x'
Closes gh-21074
5 years ago
Phillip Webb 6bf933205c Merge branch '2.1.x' into 2.2.x
Fixes gh-21073
5 years ago
Madhura Bhave 0699116e95 Merge branch '2.2.x'
Closes gh-21075
5 years ago
Madhura Bhave 16ac968f69 Relocate section on configuring DevTools' file system watcher
Closes gh-20895
5 years ago
Scott Frederick fa186aa15b Preserve timestamps on loader directories
Prior to this commit, when the Maven plugin copied
spring-boot-loader.jar to a repackaged archive the timestamps of class
files were preserved but the timestamps of directories were not
preserved. This resulted in the directories having a current timestamp.

This commit copies the directory timestamps from spring-boot-loader.jar
to the repackaged archive and adds tests to verify the proper
behavior.

See gh-20927
5 years ago
Phillip Webb c85918b8b3 Create new JarFile instance for URL connections
Update `JarURLConnection` to ensure that when connections are opened
a new copy of the JarFile is provided.

Prior to this commit, a single `JarFile` instance was shared which meant
that it could be accidental closed if accessed via
`JarURLConnection.getJarFile()`. If the underlying jar file is closed
then it's possible for a `NoClassDefFoundError` to be thrown if running
on JDK 11 with an active `SecurityManager`.

Closes gh-17796
5 years ago
Phillip Webb e83c3b87c0 Merge branch '2.2.x'
Closes gh-21071
5 years ago
Phillip Webb 7d0b14fe1c Merge branch '2.1.x' into 2.2.x
Closes gh-21070
5 years ago
Phillip Webb 6011470ba6 Auto-configure cors on WelcomePageHandlerMapping
Update `WebMvcAutoConfiguration` to automatically apply cors
configuration to the `WelcomePageHandlerMapping`.

Fixes gh-21048
5 years ago
Andy Wilkinson 60a76ce6e7 Polish "Update validation of Micrometer configuration"
See gh-21067
5 years ago
Jon Schneider 95798265b6 Update validation of Micrometer configuration
See gh-21067
5 years ago
Stephane Nicoll e26f3e2a65 Review Cassandra's timeout options
This commit reviews the current timeout options. It creates a connection
and request sub-namespace to separate concerns a bit more.

Closes gh-19673
5 years ago
Stephane Nicoll 01aa5d9ebe Add dependency management for the Wavefront SDK
Closes gh-21065
5 years ago
Stephane Nicoll 692885f71e Merge branch '2.2.x'
Closes gh-21049
5 years ago
Stephane Nicoll 8cbd7f5cd0 Polish "Add support for initializing nested object when nothing bound"
This commit harmonizes the change made to @DefaultValue to the
annotation processor. If such annotation is added to a scalar value with
no value at all, no default value is produced.

Closes gh-18917
5 years ago
Brian Clozel f103966743 Polish
See gh-20994
5 years ago
Vedran Pavic f701d97b92 Improve Elasticsearch RestClient customization capabilities
At present, RestClientBuilderCustomizer allows general customization of RestClientBuilder.
This is troublesome for users that want to customize `HttpAsyncClientBuilder` and
`RequestConfig.Builder` since those are set on the `RestClientBuilder`. By customizing
those two builders user lose out on Spring Boot's support for binding username, password,
connection-timeout and read-timeout properties from `"spring.elasticsearch.rest"` namespace.

This commit enhances the `RestClientBuilderCustomizer` with support for customizing
`HttpAsyncClientBuilder` and `RequestConfig.Builder` by providing additional `customize`
methods that accept the aforementioned builders. Both new methods are optional as they have
no-op default implementations.

See gh-20994
5 years ago
Andy Wilkinson 8de0027757 Merge branch '2.2.x'
Closes gh-21062
5 years ago
Andy Wilkinson 3065c88d6f Fix typo in IncludeExcludeEndpointFilter's name
Closes gh-21061
5 years ago
Phillip Webb 03a9738f3b Merge branch '2.2.x'
Closes gh-21053
5 years ago
Phillip Webb 7d68c7c4c4 Merge branch '2.1.x' into 2.2.x
Closes gh-21052
5 years ago
Phillip Webb a2fdf23e41 Don't throw NettyWebServer on permission errors
Update `NettyWebServer` so that the `PortInUseException` is not thrown
for permission denied errors.

Fixes gh-19807
5 years ago
Phillip Webb c7611112f7 Include cause when throwing PortInUseException
Update classes that throw `PortInUseException` so that they also
include the cause. Prior to this commit the cause was not included
which could make diagnosing the real cause difficult.

See gh-19807
5 years ago
Madhura Bhave 5d56d652fb Merge branch '2.2.x'
Closes gh-21050
5 years ago
Madhura Bhave 4e0fdbee17 Process additional locations when non-default location configured
Fixes gh-20745
5 years ago
Madhura Bhave 7755e0c3e2 Fix Dockerfile example in docs
Fixes gh-21020
5 years ago
Madhura Bhave 2cac264624 Merge branch '2.2.x'
Closes gh-21049
5 years ago
Madhura Bhave af6d538781 Add support for initializing nested object when nothing bound
When using constructor binding, if no properties are bound to
a nested property, the top-level instance will be created with a
null value for the nested property.
This commit introduces support for an empty `@DefaultValue` which
indicates that an instance of the nested property must be created
even if nothing is bound to it. It honors any `@DefaultValue`
annotations that the nested property might have in its constructor.

Closes gh-18917
5 years ago
Phillip Webb 49d20aea11 Merge branch '2.2.x'
Closes gh-21047
5 years ago
Phillip Webb df26e24605 Fix ConditionalOnAvailableEndpoint dashed matching
Update `ConditionalOnAvailableEndpoint` so that it now uses the same
matching code as the endpoint filter. This allows the condition to
match endpoint IDs that contain a dash.

In order to share logic, the `ExposeExcludePropertyEndpointFilter` class
has been deprecated and its logic moved to a new `expose` package
under `IncludExcludeEndpointFilter`. This filter is used by both the
`OnAvailableEndpointCondition` and the auto-configuration classes.

Fixes gh-21044
5 years ago
Andy Wilkinson 3605235c67 Merge branch '2.2.x'
Closes gh-21041
5 years ago
Andy Wilkinson 439d9beecb Test that gridFsDatabase is honored by auto-configured GridFsTemplate
Closes gh-21039
5 years ago
Stephane Nicoll 415dcd899d Configure Cassandra's request throttling
Closes gh-19674
5 years ago
Stephane Nicoll 8787e749c4 Add IsolationLevel regression test with Kafka 2.4
This commit makes sure that our copy of the IsolationLevel enum is
consistent with what Kafka 2.4 provides

Closes gh-20822
5 years ago
Andy Wilkinson 2180d7b47a Merge pull request #21033 from dreis2211
* gh-21033:
  Fix anchors in links to Maven and Gradle plugin docs

Closes gh-21033
5 years ago
dreis2211 320b328610 Fix anchors in links to Maven and Gradle plugin docs
See gh-21033
5 years ago
Andy Wilkinson 7fe7d7e586 Revert unintended Jackson upgrade
This partially reverts commit 1f8ea54c.
5 years ago
Stephane Nicoll 2c72350cd8 Upgrade to Kafka 2.5.0
Closes gh-21032
5 years ago
Stephane Nicoll 1eca70a84b Restore Graphite tags behaviour unless configured explicitly
This commit harmonizes how Graphite is configured. If tagsAsPrefix is
set, it is used transparently. Otherwise, the new native tagging system
is used.

See https://github.com/micrometer-metrics/micrometer/pull/2007

Closes gh-20884
5 years ago
Phillip Webb e533ce3826 Merge branch '2.2.x'
Closes gh-21028
5 years ago
Phillip Webb d27e437ddc Merge branch '2.1.x' into 2.2.x
Closes gh-21027
5 years ago
Phillip Webb f0ec571b2e Document relaxed binding from the environment
Update the reference documentation with more details about how relaxed
binding works against environment variables.

Closes gh-18215
5 years ago
Phillip Webb 636a47641a Merge branch '2.2.x'
Closes gh-21026
5 years ago
Phillip Webb 55f0af7f0f Merge branch '2.1.x' into 2.2.x
Closes gh-21025
5 years ago
Phillip Webb 359b508077 Document devtool property file profile restrictions
Closes gh-19972
5 years ago
Phillip Webb 0ad1ea4352 Merge branch '2.2.x' 5 years ago
Phillip Webb 83553ee504 Fix test checkstyle issues
Fix checkstyle issues from forward merge.

See gh-21022
5 years ago
Phillip Webb 2293cb1a41 Merge branch '2.2.x'
Closes gh-21023
5 years ago
Phillip Webb 5757c0864c Merge branch '2.1.x' into 2.2.x
Closes gh-21022
5 years ago
Phillip Webb 6a4d98a865 Allow exposure patterns to match dashed IDs
Update `ExposeExcludePropertyEndpointFilter` so that patterns will
also match endpoint IDs that contain a dash.

Closes gh-20997
5 years ago
Stephane Nicoll 6a8aaa7b99 Merge branch '2.2.x'
Closes gh-21017
5 years ago
Stephane Nicoll 90c0378a7d Apply configuration properties deprecation consistently
This commit makes sure that both the getter and the setter of a
deprecated configuration properties is flagged with `@Deprecated`.

Closes gh-20812
5 years ago
Stephane Nicoll 5afe4743cb Remove deprecated configuration properties
This commit removes the following deprecated properties:

* `server.connection-timeout`
* `server.use-forward-headers`
* `server.jetty.max-http-post-size`
* `server.tomcat.max-http-post-size`

Closes gh-20991
5 years ago
Phillip Webb 7ab2bca376 Support commas in @ActiveProfiles
Update `SpringBootContextLoader` so that it correctly deals with an
`@ActiveProfiles` annotation that contains a comma.

Fixes gh-19537

Co-authored-by: Scott Frederick <sfrederick@pivotal.io>
Co-authored-by: Andy Wilkinson <awilkinson@pivotal.io>
5 years ago
Phillip Webb de8915432a Allow square bracket notation profiles properties
Update `ConfigFileApplicationListener` so that `spring.profiles.active`
and `spring.profiles.include` can use the square bracket list notation.

Prior to this commit, only comma-separated lists could be used for
those values.

Closes gh-21006
5 years ago
Phillip Webb e3b8478621 Polish 5 years ago
Scott Frederick 555132e096 Fix archive attributes in Gradle plugin
This commit ensures that file permissions are set on entries that the
Gradle plugin adds to an archive. It also reverts the constant date
and time used for added entries to a previous value to ensure a time
zone offset is not applied.

See gh-20927
5 years ago
Phillip Webb dc56608651 Merge branch '2.2.x'
Closes gh-21004
5 years ago
Phillip Webb 1a8aa72afd Merge branch '2.1.x' into 2.2.x
Closes gh-21003
5 years ago
Phillip Webb 822d9f6a31 Allow empty URIs to create embedded datasource
Refine `DataSourceAutoConfiguration` conditions so that an empty
`spring.datasource.url` property can be used to enable the embedded
source.

Fixed gh-20996
5 years ago
K Zoli 0d532042cb Use RequestDispatcher.ERROR_STATUS_CODE constant
See gh-20923
5 years ago
straumat 2338a3da3e Add reference to XChange starter
See gh-20830
5 years ago
Scott Frederick 1caca6e3d0 Deprecate unused ErrorController interface method
This commit marks as deprecated an interface method that is no longer
used, and changes all internal implementations to return `null` to
make the fact that the return value is not used more obvious.

Fixes gh-19844
5 years ago
Scott Frederick f4c2714139 Support server.error config in management context
Prior to this commit, the ManagementErrorEndpoint used to handle error
responses for the management servlet excluded stacktrace and exception
message details from the response unconditionally.

With this commit, the endpoint honors the
`server.error.include-stacktrace` and `server.error.include-details`
properties to conditionally include error details for consistency
with non-management error handling.

Fixes gh-20989
5 years ago
Phillip Webb 3c388cf48e Fix typo 5 years ago
Scott Frederick 70d4994502 Disable exception details on default error views
Prior to this commit, default error responses included the message
from a handled exception. When the exception was a BindException, the
error responses could also include an errors attribute containing the
details of the binding failure. These details could leak information
about the application.

This commit removes the exception message and binding errors detail
from error responses by default, and introduces a
`server.error.include-details` property that can be used to cause
these details to be included in the response.

Fixes gh-20505
5 years ago
Stephane Nicoll 71ecadeaee Polish "Optimize AutoConfigurationImportSelector.filter()"
See gh-20928
5 years ago
dreis2211 2158fadb35 Optimize AutoConfigurationImportSelector.filter()
See gh-20928
5 years ago
Stephane Nicoll fb2f6bb1af Polish
See gh-20975
5 years ago
Johnny Lim 5fad43ec40 Polish
See gh-20973
5 years ago
Stephane Nicoll e9016701e7 Start building against Spring Kafka 2.5.0 snapshots
See gh-20953
5 years ago
Stephane Nicoll 04544f9842 Polish 5 years ago
Stephane Nicoll dbdd84b230 Polish "Add reference to gRPC starter"
See gh-20966
5 years ago
Michael Zhang 8e6028f67c Add reference to gRPC starter
See gh-20966
5 years ago
Stephane Nicoll 4648ecef6e Merge branch '2.2.x'
Closes gh-20969
5 years ago
Stephane Nicoll 1dd8dcc6c9 Polish "Polish JarFile to extra anonymous inner class"
See gh-20882
5 years ago
Konrado85 e0d1cf0e38 Polish JarFile to extra anonymous inner class
See gh-20882
5 years ago
dreis2211 b0eea26260 Prevent shaded imports from Datastax
See gh-20967
5 years ago
dreis2211 5b9d8bfc17 Upgrade to Testcontainers 1.14.0
See gh-20936
5 years ago
Stephane Nicoll 17e5b08cba Polish 5 years ago
Stephane Nicoll 5b4c13d767 Start building against Spring Kafka 2.4.6 snapshots
See gh-20953
5 years ago
Stephane Nicoll 88d790a96c Start building against Spring Integration 5.3.0 snapshots
See gh-20951
5 years ago
Stephane Nicoll d02218d838 Start building against Spring Data Neumann-RC2 snapshots
See gh-20949
5 years ago
Stephane Nicoll b05bdbbf0b Start building against Spring AMQP 2.2.6 snapshots
See gh-20947
5 years ago
Stephane Nicoll abfe8940e0 Start building against Spring Framework 5.2.6 snapshots
See gh-20945
5 years ago
Stephane Nicoll 55c8811f2c Start building against Reactor Dysprosium-SR7 snapshots
See gh-20943
5 years ago
Stephane Nicoll 8fa6ec36f4 Remove @ConditionalOnMissingBean check on deprecated class
Closes gh-20968
5 years ago
Madhura Bhave d648b98991 Merge branch '2.2.x'
Closes gh-20964
5 years ago
Madhura Bhave 947594addd Merge branch '2.1.x' into 2.2.x
Closes gh-20963
5 years ago
Madhura Bhave c98fe51914 Make it more obvious that Jolokia does not work with a WebFlux app
Closes gh-20623
5 years ago
Phillip Webb 28da1da241 Update availability/probe documentation
Update the application availability and probes documentation following
the recent set of updates.

See gh-20962
5 years ago
Phillip Webb 5311c04437 Change HealthEndpointGroups customization support
Update the `HealthEndpointGroups` customization support to use a
post-processor rather than a mutable registry. Although this approach
is slightly less flexible, it removes a lot of complexity from the
`HealthEndpointGroups` code. Specifically, it allows us to drop the
`HealthEndpointGroupsRegistry` interface entirely.

The probe health groups are now added via the post-processor if they
aren't already defined. Unlike the previous implementation, users are
no longer able to customize status aggregation and http status code
mapping rules _unless_ they also re-define the health indicators that
are members of the group.

See gh-20962
5 years ago
Phillip Webb f32a37e289 Support `management.health.probes.enabled=false`
Update `AvailabilityProbesAutoConfiguration` to allow the
`management.health.probes.enabled` property to override the platform
detection logic. Prior to this commit, it was possible to use the
property to enable the probes, but it was not possible to disable
them when deploying to Kubernates.

See gh-20962
5 years ago
Phillip Webb 82cfd7c6c9 Restructure probes auto-configuration
Relocate probe auto-configuration from the `kubernetes` package to
`availability` since probes could also be used on other platforms.

The classes have also been renamed to named to `AvailabilityProbes...`

See gh-20962
5 years ago
Phillip Webb 71e4801e68 Rename probe health indicators
Rename `LivenessProbeHealthIndicator` to `LivenessStateHealthIndicator`
and `ReadinessProbeHealthIndicator` to `ReadinessStateHealthIndicator`.

Also introduce a general purpose `AvailabilityStateHealthIndicator`
class.

See gh-20962
5 years ago
Phillip Webb bb79c847b2 Allow custom availability states
Create a general purpose `AvailabilityState` interface and refactor
the existing `LivenessState` and `ReadinessState` to use it. A single
`AvailabilityChangeEvent` is now used to carry all availability state
updates.

This commit also renames `ApplicationAvailabilityProvider` to
`ApplicationAvailabilityBean` and extracts an `ApplicationAvailability`
interface that other beans can inject. The helps to hide the event
listener method, which is really internal.

Finally the state enums have been renamed as follows:

 - `LivenessState.LIVE` -> `LivenessState.CORRECT`
 - `ReadinessState.READY` -> `ReadinessState.ACCEPTING_TRAFFIC`
 - `ReadinessState.UNREADY` -> `ReadinessState.REFUSING_TRAFFIC`

See gh-20962
5 years ago
Stephane Nicoll 6e1ff50328 Start building against Spring Kafka 2.3.8 snapshots
See gh-20952
5 years ago
Stephane Nicoll fafac58311 Start building against Spring Integration 5.2.6 snapshots
See gh-20950
5 years ago
Stephane Nicoll fb11285279 Start building against Spring Data Moore-SR7 snapshots
See gh-20948
5 years ago
Stephane Nicoll 99b576707e Start building against Spring AMQP 2.2.6 snapshots
See gh-20946
5 years ago
Stephane Nicoll ea1345d074 Start building against Spring Framework 5.2.6 snapshots
See gh-20944
5 years ago
Stephane Nicoll 4474da8850 Start building against Reactor Dysprosium-SR7 snapshots
See gh-20942
5 years ago
Brian Clozel 939bb87a02 Merge branch '2.2.x'
Closes gh-20957
5 years ago
Brian Clozel 49bbcceda9 Fix Undertow compression config with invalid Mime Types
Prior to this commit, the Undertow compression configuration provided by
Spring Boot would fail and throw an exception for invalid MIME Types
when trying to check them against the list of configured types for
compression.

This commit ensures that invalid MIME Types are ignored and that
compression is disabled for those.

Fixes gh-20955
5 years ago
Stephane Nicoll a3095d5956 Start building against Spring Integration 5.1.10 snapshots
See gh-20941
5 years ago
Stephane Nicoll 35c66d9088 Start building against Spring Data Lovelace-SR17 snapshots
See gh-20940
5 years ago
Stephane Nicoll 16334304d6 Start building against Spring AMQP 2.1.14 snapshots
See gh-20939
5 years ago
Stephane Nicoll 6a4fbe18c2 Start building against Spring Framework 5.1.15 snapshots
See gh-20938
5 years ago
Stephane Nicoll fca3601477 Start building against Reactor Californium-SR18 snapshots
See gh-20937
5 years ago
Phillip Webb 1604cb2a1e Polish 5 years ago
Johnny Lim cb320288a4 Polish
See gh-20931
5 years ago
Konrado85 9f4c39c985 Change PropertiesLauncher equals method to use URI
See gh-20872
5 years ago
Stephane Nicoll 81e1f1a94a Polish "Add reference to Mule 4 starter"
See gh-20915
5 years ago
Manuel Núñez 22cd477a60 Add reference to Mule 4 starter
See gh-20915
5 years ago
dreis2211 4b9986d790 Remove unused fields in tests
See gh-20926
5 years ago
Brian Clozel ce653059c8 Improve recording of cancellation signal in WebClient
With its initial fix in gh-18444, the `WebClient` instrumentation would
record all CANCEL signals, including:

* when a `timeout` expires and the response has not been received
* when the client partially consumes the response body

Since the second use case is arguable intentional, this commit restricts
the instrumentation and thus avoids recording two events for a single
request in that case.

Closes gh-18444
5 years ago
Stephane Nicoll 73ca703007 Merge branch '2.2.x'
Closes gh-20919
5 years ago
Stephane Nicoll 60f726a080 Polish 5 years ago
Stephane Nicoll 3cdb5a690a Polish "Align Kafka's missingTopicsFatal default value"
See gh-20917
5 years ago
dhimathu a12eace2a8 Align Kafka's missingTopicsFatal default value
See gh-20917
5 years ago
Vedran Pavic fec386b574 Harmonize naming of Elasticsearch auto-configuration classes 5 years ago
Brian Clozel 3879a7505c Record cancelled client requests in WebClient
Prior to this commit, cancelled client requests (for example as a result
of a `timeout()` reactor operator would not be recorded by Micrometer.

This commit instruments the cancelled signal for outgoing client
requests and assigns a status `CLIENT_ERROR`.
The cancellation can be intentional (triggering a timeout and falling
back on a faster alternative) or considered as an error. The intent
cannot be derived from the signal itself so we're considering it as a
client error.

Closes gh-18444
5 years ago
Cicio Flaviu 7f1655e5cb Add package-info to buildpack.platform.docker.ssl
See gh-20913
5 years ago
dreis2211 43936d66d3 Improve Binder performance slightly
See gh-20755
5 years ago
Brian Clozel 0611b6d3eb Fix startup failure when WebFlux auto-config is skipped
Prior to this commit, the `HttpHandlerAutoConfiguration` would rely on
the `WebFluxProperties` bean being present - this is most of the time
true when the appplication is using the WebFlux auto-configuration.

If the application is overriding the WebFlux auto-configuration and
providing its own setup, the properties bean is not present and we
should skip its usage.

Fixes gh-20891
5 years ago
dreis2211 d4575bc122 Fix unused parameters
See gh-20911
5 years ago
Stephane Nicoll 62ebe9c006 Adapt to Wavefront SDK 2.1
Closes gh-20854
5 years ago
Stephane Nicoll 9752cd4b8c Merge branch '2.2.x'
Closes gh-20909
5 years ago
A Vaz 267f6481f8 Fix typo
See gh-20907
5 years ago
Stephane Nicoll d571fb311f Add support for NewRelicClientProvider
Closes gh-20908
5 years ago
Madhura Bhave 1342e4970a Provide a condition for detecting war deployments
Closes gh-19421
5 years ago
Andy Wilkinson 8e695b0cc5 Configure OncePerRequestFilters with all dispatcher types by default
Closes gh-18953
5 years ago
Andy Wilkinson 2d360ef155 Merge branch '2.2.x'
Closes gh-20897
5 years ago
Andy Wilkinson 7e1807c01b Polish "Update endpoint enablement description to describe availability"
See gh-20799
5 years ago
Eric Opoku 399c85a5ef Update endpoint enablement description to describe availability
See gh-20799
5 years ago
Stephane Nicoll 8cc61242e2 Use Micrometer's getDefaultSenderBuilder
This commit removes the duplication added temporarily in Spring Boot to
initialize a default WavefrontSender builder.

This commit also disables a test is failing at the moment, see
https://github.com/micrometer-metrics/micrometer/issues/1964

See gh-20854
5 years ago
Stephane Nicoll 1c70b6735a Remove plugin management for exec-maven-plugin
Closes gh-20883
5 years ago
dreis2211 ae15a3d162 Polish LayersIndex
See gh-20874
5 years ago
Scott Frederick ba4eec87e4 Continue processing properties files on error
Prior to this commit, processing of multiple properties files
discovered using a wildcard pattern would stop on any error
encountered while processing a file or when an empty properties file
was found, causing subsequent files from the pattern to be ignored.

This commit changes the behavior such that subsequent files are
processed on error or on an empty file.

Fixes gh-20873
5 years ago
Madhura Bhave 62c09d607a Polish 5 years ago
Phillip Webb ed2d90248c Rename `singleSignOn` property to `singlesignon`
Rename the SAML `singleSignOn` nested property to `singleSignOn` so
that we don't get problems when using uppercase environment variable
names.

See gh-20584
5 years ago
Phillip Webb 3ca896e63f Polish 5 years ago
Phillip Webb 1640add8be Don't use Assert class from loader
Remove the use of `Assert` since it's unavailable that early.
5 years ago
Phillip Webb d9fb4dd477 Don't use monospacing in documentation headings
Closes gh-20875
5 years ago
Scott Frederick e17d4be484 Polish plugin documentation headings 5 years ago
Scott Frederick a64e26fc44 Polish plugin documentation headings 5 years ago
Stephane Nicoll dc94a87694 Merge branch '2.2.x'
Closes gh-20869
5 years ago
Stephane Nicoll cb66e4a206 Update copyright year
See gh-20832
5 years ago
dreis2211 235e693906 Fix WebappLoader constructor deprecations
See gh-20832
5 years ago
Stephane Nicoll 885ad1b720 Merge branch '2.2.x'
Closes gh-20868
5 years ago
dreis2211 2f93196fbb Polish ConditionMessage#because()
See gh-20847
5 years ago
Phillip Webb 729fc9dd6d Ensure streams are always closed
Update `AbstractJarWriter` to ensure that streams are always closed,
even if entries are not written.
5 years ago
Phillip Webb 1abbfbbfcd Attempt to fix failing Windows test 5 years ago
Phillip Webb ffd499fdc7 Attempt to fix failing Windows test 5 years ago
Phillip Webb d3c06ee0cf Remove windows line endings when parsing index 5 years ago
Phillip Webb 4b1346f4bf Polish 5 years ago
Phillip Webb 5b374e833b Cleanup paths to fix tests running on Windows 5 years ago
Phillip Webb baa728c85e Cleanup paths to fix tests running on Windows 5 years ago
Phillip Webb 5e028599f0 Change PDF rename logic
Rework the rename logic used to include the reference PDF to try
and workaround the following local build error:

	Encountered duplicate path "reference/pdf/spring-boot-reference.pdf"
	during copy operation configured with DuplicatesStrategy.FAIL

See gh-20829
5 years ago
Phillip Webb b50e8eb3aa Fix package tangle in Gradle plugin
Relocate `VersionExtractor` to fix a package tangle.
5 years ago
Phillip Webb 6e7b473fef Polish asciidoc formatting and use sentence case 5 years ago
Phillip Webb 951a3e78f9 Test layer index can contain filenames with spaces
Add tests to ensure that the layer index can support filenames that
contain spaces.

Closes gh-20827
5 years ago
Phillip Webb 464c15e52c Ensure empty layers are written to the index file
Update the `LayersIndex` class to ensure that layers that do not contain
content are still written.

Closes gh-20858
5 years ago
Phillip Webb ef9611e30e Document executable-jar index files
Update the executable jar appendix to include details of the index
files.

Closes gh-20859
5 years ago
Phillip Webb df58b9baa2 Use YAML compatible classpath.idx format
Update the `classpath.idx` format to align with `layers.idx` and allow
third-parties can parse it as YAML

Closes gh-20861
5 years ago
Phillip Webb 65672a1150 Use a more compact layers.idx format
Update the `layers.idx` format so that it is more compact and can be
parsed by third-parties as YAML.

Closes gh-20860
5 years ago
Scott Frederick 35ff711dfe Document builder configuration for HTTP proxy
This commit adds examples for configuring the default builder to use
an HTTP/HTTPS proxy when building OCI images using the Maven or Gradle
plugin.

Fixes gh-19984
5 years ago
Scott Frederick c05d7f844d Remove duplication in documentation index files
This commit combines index adoc files for single-page HTML and PDF
into one file to remove duplication. It also renames index files to
reflect the separation between source format and generated output
format.

Finishes gh-20829
5 years ago
Madhura Bhave c4b0bd1698 Merge pull request #20851 from olegz
* pr/20851:
  Change call to createClassLoader(URL) from 'super' to 'this'

Closes gh-20851
5 years ago
Oleg Zhurakousky 9f75f30856 Change call to createClassLoader(URL) from 'super' to 'this'
ExecutableArchiveLauncher.createClassLoader(Iterator) calls
createClassLoader(URL) method with 'super'. This means overriding
createClassLoader(URL) is not possible without also overriding
createClassLoader(Iterator). The switch to 'this' enables that.

See gh-20851
5 years ago
Stephane Nicoll 6764e5e2d0 Export metrics to Wavefront using WavefrontSender
This commit upgrades the Wavefront metrics export auto-configuration to
provide a `WavefrontSender` if necessary and use that to export metrics
rather than the http client Micrometer used previously.

As a result, the "read-timeout" and "connect-timeout" properties are no
longer honoured.

Closes gh-20810
5 years ago
Stephane Nicoll 9543ab1ca9 Update default value for Wavefront's step size
See gh-20833
5 years ago
Stephane Nicoll a8c026a558 Expose Prometheus#histogramFlavor property
Closes gh-20853
5 years ago
Stephane Nicoll f64f5a0f55 Expose Elastic's pipeline and indexDateSeparator properties
Closes gh-20852
5 years ago
Stephane Nicoll f293f6ad9b Expose AppOptics's floorTimes property
Closes gh-20850
5 years ago
Stephane Nicoll 888a81beba Migrate Kafka metrics to KafkaClientMetrics
Closes gh-20838
5 years ago
Stephane Nicoll 333ac279c3 Stop auto-configuring a StatsdMetrics bean
StatsD no longer publishes metrics about itself and StatsDMetrics is
deprecated as a result. This commit removes the auto-configuration of
it.

Closes gh-20836
5 years ago
Stephane Nicoll 30201a40e0 Update SLA boundaries to use double
See https://github.com/micrometer-metrics/micrometer/pull/1909

Closes gh-20837
5 years ago
Stephane Nicoll 4813606b70 Expose Graphite's graphiteTagsEnabled property
This commit exposes an additional property for Graphite that allows to
restore the previous default behaviour with regards to tags, i.e.
prefixing the ones defined by the "tagsAsPrefix" property.

Close gh-20834
5 years ago
Stephane Nicoll 08533c79e0 Update default value for Datadog's default uri
See gh-20833
5 years ago
Stephane Nicoll 4b81548502 Start building against Micrometer 1.5.0 snapshots
See gh-20833
5 years ago
Georgios Voulgarakis da13751dbf Add reference to quickfixj spring boot starter
See gh-20819
5 years ago
Stephane Nicoll 7ca6359b43 Remove PushRegistry's numThreads deprecated property
See gh-20835
5 years ago
Stephane Nicoll a23700f323 Merge branch '2.2.x'
Closes gh-20845
5 years ago
Stephane Nicoll 1960c90d5f Deprecated PushRegistry's numThreads property
This property is a left-over and was never used in Micrometer so this
commit deprecates its use so that it can be removed in the next feature
release.

Closes gh-20835
5 years ago
Stephane Nicoll 72f2afe1f3 Merge branch '2.2.x'
Closes gh-20844
5 years ago
Stephane Nicoll 4641794fb5 Fix AtlasProperties hierarchy
This commit fixes the AtlasProperties hierarchy so that it no longer is
a StepRegistryProperties. The AtlasConfig on the Micrometer side of
things does not share the common config hierarchy either and some
properties have different default and lifecycle.

Closes gh-20843
5 years ago