Commit Graph

8293 Commits

Author SHA1 Message Date
Gabriele Bianchet-David
0f9f10f97e Migrate legacy endpoint that have a dash in their id
See gh-21615
2020-08-10 14:42:46 +02:00
Stephane Nicoll
8962d6ca21 Polish 2020-08-10 14:31:16 +02:00
Stephane Nicoll
333af3d4e7 Polish "Propagate the cause that led Reactor"s debug agent to fail"
See gh-22777
2020-08-10 14:21:44 +02:00
davidbilge
12c419054a Propagate the cause that led Reactor"s debug agent to fail
Prior to this commit, DebugAgentEnvironmentPostProcessor throws a
RuntimeException with a generic error message if its initialization
fails. The causing exception is discarded, which makes error analysis
unnecessarily difficult.

This commit attaches the cause to the newly thrown RuntimeException.

See gh-22777
2020-08-10 14:21:26 +02:00
Madhura Bhave
f39f33bb8d Fix documentation related to the health endpoint's inner details
Closes gh-22490
2020-08-06 17:57:56 -07:00
Phillip Webb
fdd6a89a61 Polish 2020-08-06 10:14:01 -07:00
Andy Wilkinson
07699ea6ff Retry when dependency resolution fails in ModifiedClassPathClassLoader
Closes gh-22763
2020-08-06 15:12:20 +01:00
Andy Wilkinson
63f7c75b61 Polish 2020-08-06 13:34:01 +01:00
Andy Wilkinson
b53f54f2cf Add tip about using AopTestUtils.getTargetProxy with proxied spy beans
Closes gh-22281
2020-08-06 09:21:11 +01:00
Andy Wilkinson
bfe250e5d3 Clarify docs on schema and data SQL scripts with Flyway and Liquibase
Closes gh-20920
2020-08-05 18:14:39 +01:00
Andy Wilkinson
71ffb44a3c Remove WebClient's in-memory buffer size limit for endpoint tests
Previously, the endpoints' responses could occasionally exceed
WebClient's in-memory buffer limt, for example if the threads endpoint
was reporting a large number of threads or the threads had large
stacks.

This commit disables WebClient's in-memory buffer size limit so that
the tests passing is not dependent on the size of the endpoints'
responses.

Closes gh-22743
2020-08-05 17:37:44 +01:00
Andy Wilkinson
2238b0d797 Try to make FileSystemWatcherTests.waitsForQuietPeriod() more robust
Previously, waitsForQuietPeriod would iterate 10 times, touching a new
file and then sleeping for 100ms at it did so. With a quiet period of
200ms, this was intended to result in a single change set containing
10 files. However, the test would fail occasionally as multiple change
sets were detected. The test is multi-threaded and is, therefore, at
the mercy of the scheduler. If the thread that is iterating and
touching the files takes over 200ms to be scheduled – exceeding the
watcher's quiet period – the watcher may detect a change set while the
changes are still being made. Eliminating this possibilty would require
the test to participate in the watcher's synchronization, which would
require some changes to its implementation. Instead, this commit
aims to avoid the problem by sleeping for 1/10 of the time (10ms) and
expecting a single change set of 100 files. The hope is that the much
shorter sleep time will result in the file touching thread being
scheduled well within the 200ms quiet period.

Closes gh-22732
2020-08-05 09:00:49 +01:00
Stephane Nicoll
4082cddce2 Merge branch '2.1.x' into 2.2.x
Closes gh-22705
2020-08-03 15:00:41 +02:00
Johnny Lim
bd2874de49 Fix broken links to Micrometer registry docs
See gh-22704
2020-08-03 14:58:22 +02:00
Andy Wilkinson
59b1df4548 Polish "Look in correct context when finding Liquibase beans"
See gh-22681
2020-07-31 12:20:58 +01:00
biergit
62156810cf Look in correct context when finding Liquibase beans
See gh-22681
2020-07-31 12:20:09 +01:00
Andy Wilkinson
49f8943a5f Register ErrorPageFilter for async dispatch
Fixes gh-19471
2020-07-30 13:38:02 +01:00
Andy Wilkinson
22dc4e7608 Clarify documentation on @AutoConfigureRestDocs with WebTestClient
Closes gh-15977
2020-07-30 12:12:10 +01:00
Andy Wilkinson
1871cffc7d Document that constructor binding does not support @…Unit annotations
Closes gh-22565
2020-07-30 09:04:30 +01:00
Andy Wilkinson
72551242fd Allow XADataSource auto-config with no spring.datasource properties
Fixes gh-20229
2020-07-29 13:57:50 +01:00
Andy Wilkinson
5ea8bb0676 Recommend the use of a MeterBinder when a metric depends on a bean
Closes gh-19557
2020-07-28 18:26:38 +01:00
Stephane Nicoll
16aa8fbc88 Fix actuator dependency on Jackson JSR 310 module
This commit harmonizes dependency declarations for Jackson in the
actuator. Both Jackson and JSR 310 are back to optional in the core
actuator module and mandatory when using the auto-configuration.

Closes gh-22624
2020-07-28 16:26:11 +02:00
Andy Wilkinson
856c55b188 List DevTools in section overview of multi-page documentation
Closes gh-22591
2020-07-28 14:36:23 +01:00
dreis2211
c405b8b9c9 Fix link to Elasticsearch health indicator
See gh-22598
2020-07-28 13:21:09 +01:00
Andy Wilkinson
ea5284ca91 Polish "Use milliseconds when configuring awaitTerminationPeriod"
See gh-22604
2020-07-28 09:03:57 +01:00
Tadaya Tsuyukubo
685a6116d1 Use milliseconds when configuring awaitTerminationPeriod
Prior to this change, TaskExecutorBuilder used seconds as its precision
to map the awaitTerminationPeriod value. This caused a loss of
millisecond information in the period.

This commit fixes the loss by converting the period to millisecond and
using setAwaitTerminationMillis to configure the executor.

See gh-22604
2020-07-28 09:01:55 +01:00
Andy Wilkinson
d9b61c4aaa Update link to App Engine's Spring Boot sample
Closes gh-22607
2020-07-28 08:42:40 +01:00
Andy Wilkinson
0a01875d41 Improve documentation about swapping one technical starter for another
Closes gh-20408
2020-07-27 15:50:07 +01:00
Andy Wilkinson
812a0ed0c6 Define the reference doc authors in a single place
Closes gh-20896
2020-07-27 15:20:59 +01:00
Andy Wilkinson
b631fa1405 Describe MongoClientSettingsBuilderCustomizer in the documentation
Closes gh-21696
2020-07-27 14:46:30 +01:00
Andy Wilkinson
be428ef0f2 Document the need for configuration files to have a file extension
Closes gh-22278
2020-07-27 14:09:54 +01:00
Andy Wilkinson
1b48daf1d5 Do not ignore unknown fields when invalid fields are being ignored
Previously, ignoring invalid fields would cause the failure for an
unknown field to be ignored, irrespective of the ignoreUnknownFields
attribute on `@ConfigurationProperties`.

This commit updates the NoUnboundElementsBindHandler to ensure that
any UnboundConfigurationPropertiesException is thrown rather than
being ignored when the handler has been wrapped by an
IgnoreErrorsBindHandler.

Fixes gh-22308
2020-07-27 13:28:44 +01:00
Andy Wilkinson
41954533b2 Fix Mock|SpyBean context caching
The fix for gh-20916 updated DefinitionsParser so that the
ResolvableType for each MockBean or SpyBean field included the
implementation class from which the field was found. Where the field
was declared with a variable generic signature that was made constant
by its implementation class, this allowed the correct concrete type to
be determined. It also had the unintended side-effect of preventing two
test classes with identical `@MockBean` and `@SpyBean` configuration
from sharing a context as the resolvable types for their mock and spy
bean fields would now be different.

This commit updates DefinitionsParser to only include the
implementation class in the ResolvableType if the field's generic type
is variable. For cases where it is not variable, this restores the
behaviour prior to the fix for gh-20916.

Fixes gh-22566
2020-07-27 13:04:02 +01:00
Andy Wilkinson
16eaae0b2f Defer background pre-init till the environment is prepared
Previously, background pre-init was started in response to the
application starting event. This meant that it would be running while
the logging turbo filter was in place and was rejecting all logging.
As a result, any logging performed during pre-init would be lost.

This commit changes background pre-init so that it is now started
in response to the application environment prepared event. By this
point, the logging turbo filter has been removed as the logging levels
have been configured from the environment.

Closes gh-21897
2020-07-27 11:24:36 +01:00
Andy Wilkinson
b98c3dccfd Fix property-based configuration of Undertow socket options
Previously, only UndertowOptions was used as the source of options for
both server and socket options, but it only contains server options.
As a result, attempting to configure any socket options defined by
XNIO's Options class would fail.

This commit updates the property-based configuration of options to use
UndertowOptions as the source for server options and XNIO's Options as
the source for socket options.

Fixes gh-22502
2020-07-27 10:47:14 +01:00
Andy Wilkinson
1c3528f5a4 Include Jackson Modules in WebMvcTest and WebFluxTest
Fixes gh-22530
2020-07-27 10:11:29 +01:00
Andy Wilkinson
7b3c0a9e09 Advise against java.util.Optional configuration properties
Closes gh-21868
2020-07-27 09:58:24 +01:00
Andy Wilkinson
ce7210c4f0 Merge branch '2.1.x' into 2.2.x
Closes gh-22563
2020-07-25 09:06:11 +01:00
Nelson Osacky
585aed8f8f Add generated-snippets as output to test goal
The generated snippets were not declared as an output to the
`spring-boot-actuator-autoconfigure` test goal so when the test was
pulled from the cache, it did not contain the `generated-snippets`
directory. This directory is required as an input to the Asciidoctor
plugin.

See gh-22555
2020-07-25 08:26:15 +01:00
Andy Wilkinson
1a43cd1c8e Merge branch '2.1.x' into 2.2.x
Closes gh-22551
2020-07-24 14:28:11 +01:00
Nelson Osacky
0494007893 Disable extra scans for full profile.
The extra scans were not disabled for the full profile, only the
regular profile.

See gh-22550
2020-07-24 14:27:32 +01:00
Andy Wilkinson
f4508b4059 Merge branch '2.1.x' into 2.2.x
Closes gh-22547
2020-07-24 11:54:12 +01:00
Nelson Osacky
e41a53cf85 Add Gradle Enterprise Extension
This adds build caching and build scans.

The changes required disabling scans when using the maven invoker
plugin in order to not cause duplicate build scans when invoking other
maven builds. There is also an empty `.mvn` folder in the
spring-boot-starters project to prevent duplicate build scans as well
since there is no way to pass properties to the maven-javadoc-plugin.

The checkstyle plugin was causing a cache miss with the
`propertyExpansion` because it contains an absolute path. The absolute
path is now ignored and instead the files are added as inputs to the
checkstyle plugin. This only enables the local build cache. The remote
cache is not yet enabled.

On my local machine:

./mvnw clean install build times go from about 30 minutes to about 10 minutes.
./mvnw clean install -Pfull build times go from about 60 minutes to about 13 minutes.

See gh-22089
2020-07-24 11:47:24 +01:00
Andy Wilkinson
9c5e59371f Upgrade to Jackson 2.10.5
Closes gh-22432
2020-07-23 21:12:08 +01:00
Andy Wilkinson
f93bae4bd3 Upgrade to Aspectj 1.9.6
Closes gh-22539
2020-07-23 21:03:51 +01:00
Andy Wilkinson
ce803cc678 Upgrade to Micrometer 1.3.11
Closes gh-22538
2020-07-23 21:03:49 +01:00
Andy Wilkinson
698db27a75 Upgrade to Aspectj 1.9.6
Closes gh-22537
2020-07-23 21:02:36 +01:00
Andy Wilkinson
db242794ec Upgrade to Micrometer 1.1.16
Closes gh-22536
2020-07-23 21:02:34 +01:00
Stephane Nicoll
4f3b03afcf Merge branch '2.1.x' into 2.2.x
Closes gh-22525
2020-07-23 11:01:05 +02:00
Stephane Nicoll
0440a9a78c Upgrade to Groovy 2.5.13
Closes gh-22505
2020-07-23 10:55:47 +02:00