Commit Graph

10373 Commits (4f8bf4d7dd4c0ab5b9eb463a8562314985ac9d73)

Author SHA1 Message Date
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
4 years ago
Stephane Nicoll 516582f6d3 Merge branch '2.3.x'
Closes gh-22744
4 years ago
Johnny Lim 1017774ed5 Polish
See gh-22740
4 years ago
Stephane Nicoll 313b2bef6f Polish "Add test slice for Spring Data Cassandra"
See gh-17490
4 years ago
ayudovin ae152b176b Add test slice for Spring Data Cassandra
See gh-17490
4 years ago
Andy Wilkinson 7df49187fa Merge branch '2.3.x'
Closes gh-22738
4 years ago
Andy Wilkinson 94644f3814 Merge branch '2.2.x' into 2.3.x
Closes gh-22737
4 years ago
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
4 years ago
Stephane Nicoll 621f026499 Polish "Support configuration of entityId for a SAML Relying Party"
See gh-22258
4 years ago
Danilo Piazzalunga 5352ec1cba Support configuration of entityId for a SAML Relying Party
See gh-22258
4 years ago
Stephane Nicoll 589669d0cc Polish "Add support for selecting the Redis client to use"
See gh-22569
4 years ago
bono007 ac651442fa Add support for selecting the Redis client to use
See gh-22569
4 years ago
Scott Frederick f247fec310 Merge branch '2.3.x'
Closes gh-22735
4 years ago
Scott Frederick 21b2dd2740 Allow empty env entries when building an image
Prior to this commit, an entry in the environment map provided to the
build plugin image building goal or task that had a null value would
result in a failure with a message that was difficult to diagnose.

This commit treats env map entries with a null value as an empty
entry to prevent the failure and also make it easier to provide an
explicit empty entry in the Maven XML.

Fixes gh-22703
4 years ago
Andy Wilkinson bc44cd6705 Polish 4 years ago
Andy Wilkinson 6e00022b2d Start building against Spring Integration 5.4.0-M2 snapshots
See gh-22729
4 years ago
Andy Wilkinson 02f888bccf Start building against Spring Kafka 2.6.0-M1 snapshots
See gh-22730
4 years ago
Andy Wilkinson 7f53aef568 Upgrade to Kafka 2.6.0
Closes gh-22731
4 years ago
Stephane Nicoll 903dc93887 Polish "Add option to disable Redis Cluster dynamic sources refresh"
See gh-22571
4 years ago
bono007 3cfde51a8c Add option to disable Redis Cluster dynamic sources refresh
This commit adds an option to enable/disable the DynamicRefreshSources
setting on the Lettuce cluster toplogy refresh options.

See gh-22571
4 years ago
Stephane Nicoll 36fb86a110 Update to core r2dbc support
This commit adapts the auto-configuration for the new core r2dbc support
in Spring Framework and provides auto-configuration for
R2dbcEntityOperations.

Closes gh-22708
4 years ago
Brian Clozel 3354e0f030 Upgrade to Spring Security 5.4.0-SNAPSHOT
See gh-22668
4 years ago
Brian Clozel 94148e9b54 Upgrade to Couchbase Java Client 3.0.7
Closes gh-22688
4 years ago
Brian Clozel fb1234a22c Upgrade to Reactor 2020.0.0 SNAPSHOTs
See gh-22667
4 years ago
Madhura Bhave 41f5ba9077 Switch layering on by default
Closes gh-20983
4 years ago
dreis2211 e49e2dfff1 Use Supplier variants of Assert methods
See gh-22699
4 years ago
Stephane Nicoll bb3066f61a Merge branch '2.3.x'
Closes gh-22707
4 years ago
Stephane Nicoll 13f1d00048 Merge branch '2.2.x' into 2.3.x
Closes gh-22706
4 years ago
Stephane Nicoll 4082cddce2 Merge branch '2.1.x' into 2.2.x
Closes gh-22705
4 years ago
Johnny Lim bd2874de49 Fix broken links to Micrometer registry docs
See gh-22704
4 years ago
Andy Wilkinson 1168d8fa74 Reduce reflection in LoggingSystem to make it more Graal-friendly
Closes gh-22594
4 years ago
Andy Wilkinson 989fc36528 Polish 4 years ago
Andy Wilkinson 11a296b068 Polish "Fix NPE in BeanDefinitionLoader when XML support is disabled"
See gh-22696
4 years ago
dreis2211 2bdeba8aaa Fix NPE in BeanDefinitionLoader when XML support is disabled
See gh-22696
4 years ago
Brian Clozel 6efff7b585 Merge branch '2.3.x'
Closes gh-22698
4 years ago
Brian Clozel 8dedeb4c6a Fix missing liveness and readiness indicators
Prior to this commit, the livenessState and readinessState health
indicators would not be configured automatically and would be missing
from the "liveness" and "readiness" health groups, leading to 404s when
hitting the `/actuator/health/liveness` or `/actuator/health/readiness`.

This commit ensures that the health indicators beans have the proper
name and revisits the auto-configuration conditions to reflect that as
well.

Fixes gh-22562
4 years ago
Brian Clozel e6957ec8c4 Merge branch '2.3.x'
Closes gh-22697
4 years ago
Brian Clozel 35093aacf4 Polish "Document properties to enable probe health indicators"
See gh-22631
4 years ago
Tadaya Tsuyukubo 630cbae7d7 Document properties to enable probe health indicators
Document property names to enable probe(readiness/liveness)
health indicators.

See gh-22631
4 years ago
Andy Wilkinson 6c67c5d763 Try to fix Windows-specific CI failures 4 years ago
Andy Wilkinson 8b40427402 Merge branch '2.3.x'
Closes gh-22687
4 years ago
Andy Wilkinson 7d25948ab5 Merge branch '2.2.x' into 2.3.x
Closes gh-22686
4 years ago
Andy Wilkinson 59b1df4548 Polish "Look in correct context when finding Liquibase beans"
See gh-22681
4 years ago
biergit 62156810cf Look in correct context when finding Liquibase beans
See gh-22681
4 years ago
Andy Wilkinson d2926e0222 Merge branch '2.3.x'
Closes gh-22678
4 years ago
Andy Wilkinson 00cd8945d5 Document how to use Gradle's native bom support
Closes gh-21570
4 years ago
Andy Wilkinson 95f76d68af Merge branch '2.3.x'
Closes gh-22677
4 years ago
Andy Wilkinson f81e8909fa Document how to re-enable DataSource auto-config when using R2DBC
Closes gh-22094
4 years ago
Andy Wilkinson aaa911db16 Merge branch '2.3.x'
Closes gh-22673
4 years ago
Andy Wilkinson 6ee0f8df1b Merge branch '2.2.x' into 2.3.x
Closes gh-22672
4 years ago
Andy Wilkinson 49f8943a5f Register ErrorPageFilter for async dispatch
Fixes gh-19471
4 years ago
Andy Wilkinson 5f1198c917 Merge branch '2.3.x'
Closes gh-22670
4 years ago
Andy Wilkinson 45346b63ba Merge branch '2.2.x' into 2.3.x
Closes gh-22669
4 years ago
Andy Wilkinson 22dc4e7608 Clarify documentation on @AutoConfigureRestDocs with WebTestClient
Closes gh-15977
4 years ago
Andy Wilkinson f96a688c1b Polish "Allow DurationFormat and PeriodFormat to be used on parameters"
See gh-22646
4 years ago
dreis2211 914452b2cc Allow DurationFormat and PeriodFormat to be used on parameters
See gh-22646
4 years ago
Andy Wilkinson 7e547b60cf Merge branch '2.2.x' into 2.3.x
Closes gh-22665
4 years ago
Andy Wilkinson 1871cffc7d Document that constructor binding does not support @…Unit annotations
Closes gh-22565
4 years ago
Stephane Nicoll 9bc71fe44f Polish "Upgrade to Spring Data Neo4j 6"
See gh-22299
4 years ago
Gerrit Meier 15cd343737 Upgrade to Spring Data Neo4j 6
See gh-22299
4 years ago
Stephane Nicoll ff038be773 Upgrade to Elasticsearch 7.8.1
Closes gh-22648
4 years ago
Stephane Nicoll 5777aa5615 Start building against Spring Data 2020.0.0 snapshots
See gh-22647
4 years ago
Andy Wilkinson 3b54fe20a8 Merge branch '2.3.x'
Closes gh-22642
4 years ago
Andy Wilkinson a580e3a370 Merge branch '2.2.x' into 2.3.x
Closes gh-22641
4 years ago
Andy Wilkinson 72551242fd Allow XADataSource auto-config with no spring.datasource properties
Fixes gh-20229
4 years ago
Brian Clozel 6f2098ad71 Upgrade to Spring Framework 5.3.0-SNAPSHOT
This commit also switches to RSocket SNAPSHOTs and updates the
repository configuration to rely on "libs-snapshot", since the RSocket
SNAPSHOTs are mirrored there.

See gh-22640
4 years ago
Andy Wilkinson 7aa093e0ca Merge branch '2.3.x'
Closes gh-22636
4 years ago
Andy Wilkinson 5dd7780a38 Try to stabilise descendantOfPropertyAccess performance test
Closes gh-22633
4 years ago
Madhura Bhave 4b2c94cb2b Allow exclude only health groups
Closes gh-22053
4 years ago
Madhura Bhave 8d70010fce Add expanded profile groups to environment
Fixes gh-22605
4 years ago
Andy Wilkinson ddb4de2db1 Merge branch '2.3.x'
Closes gh-22630
4 years ago
Andy Wilkinson 77287f8632 Merge branch '2.2.x' into 2.3.x
Closes gh-22629
4 years ago
Andy Wilkinson 5ea8bb0676 Recommend the use of a MeterBinder when a metric depends on a bean
Closes gh-19557
4 years ago
Stephane Nicoll c6fde1e4d5 Polish "Update Neo4j health check to use the Neo4j Driver"
See gh-22302
4 years ago
Gerrit Meier c5a7815e42 Update Neo4j health check to use the Neo4j Driver
This commit replaces the Neo4j-OGM based health checks with one based on
the Neo4j Java driver. A Reactive variant is also added in this commit.

See gh-22302
4 years ago
Stephane Nicoll 2756f5911f Merge branch '2.3.x'
Closes gh-22627
4 years ago
Stephane Nicoll 12d78b26b9 Merge branch '2.2.x' into 2.3.x
Closes gh-22626
4 years ago
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
4 years ago
Andy Wilkinson 1130f1dded Merge branch '2.3.x'
Closes gh-22623
4 years ago
Andy Wilkinson d6490da88b Merge branch '2.2.x' into 2.3.x
Closes gh-22622
4 years ago
Andy Wilkinson 856c55b188 List DevTools in section overview of multi-page documentation
Closes gh-22591
4 years ago
Andy Wilkinson 65d45c4e25 Merge branch '2.3.x'
Closes gh-22619
4 years ago
dreis2211 be8a70936d Add ElasticsearchReactiveHealthIndicator to docs
See gh-22616
4 years ago
Andy Wilkinson 8be8cc5452 Merge branch '2.3.x'
Closes gh-22618
4 years ago
Andy Wilkinson a2ce39d7eb Merge branch '2.2.x' into 2.3.x
Closes gh-22617
4 years ago
dreis2211 c405b8b9c9 Fix link to Elasticsearch health indicator
See gh-22598
4 years ago
Andy Wilkinson 273718c7df Merge branch '2.3.x'
Closes gh-22612
4 years ago
Andy Wilkinson c2df326f6f Merge branch '2.2.x' into 2.3.x
Closes gh-22611
4 years ago
Andy Wilkinson ea5284ca91 Polish "Use milliseconds when configuring awaitTerminationPeriod"
See gh-22604
4 years ago
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
4 years ago
Andy Wilkinson a822c6fb97 Merge branch '2.3.x'
Closes gh-22609
4 years ago
Andy Wilkinson 5471e16fce Merge branch '2.2.x' into 2.3.x
Closes gh-22608
4 years ago
Andy Wilkinson d9b61c4aaa Update link to App Engine's Spring Boot sample
Closes gh-22607
4 years ago
Phillip Webb 84bcd0eb1e Improve deprecated exception message
Update the exception message so that it includes the class name of the
implementation.

See gh-22497
4 years ago
Andy Wilkinson 1c22ec9373 Merge branch '2.3.x' 4 years ago
Andy Wilkinson 280ecfcd47 Polish 4 years ago
Andy Wilkinson 4c45c265ef Merge branch '2.3.x'
Closes gh-22597
4 years ago
Andy Wilkinson 189fa12c9d Merge branch '2.2.x' into 2.3.x
Closes gh-22596
4 years ago
Andy Wilkinson 0a01875d41 Improve documentation about swapping one technical starter for another
Closes gh-20408
4 years ago
Stephane Nicoll 8c418adb9b Polish "Add auto-configuration for Neo4j driver"
See gh-22301
4 years ago
Gerrit Meier 6134ff19f9 Add auto-configuration for Neo4j driver
This commit adds the support for creating a managed instance of the
Neo4j Java driver. The low-level support for Neo4j is helpful in
situations where the high-level abstraction of Spring Data Neo4j is not
needed.

See gh-22301
4 years ago
Andy Wilkinson a46572a884 Merge branch '2.3.x'
Closes gh-22593
4 years ago
Andy Wilkinson 4a3683f7dd Merge branch '2.2.x' into 2.3.x
Closes gh-22592
4 years ago
Andy Wilkinson 812a0ed0c6 Define the reference doc authors in a single place
Closes gh-20896
4 years ago
Andy Wilkinson 543384bfe6 Merge branch '2.3.x'
Closes gh-22590
4 years ago
Andy Wilkinson 810fdf4450 Merge branch '2.2.x' into 2.3.x
Closes gh-22589
4 years ago
Andy Wilkinson b631fa1405 Describe MongoClientSettingsBuilderCustomizer in the documentation
Closes gh-21696
4 years ago
Andy Wilkinson b8b53a0e3b Merge branch '2.3.x'
Closes gh-22588
4 years ago
Andy Wilkinson c2aa6cbc60 Merge branch '2.2.x' into 2.3.x
Closes gh-22587
4 years ago
Andy Wilkinson be428ef0f2 Document the need for configuration files to have a file extension
Closes gh-22278
4 years ago
Andy Wilkinson 1efac09913 Merge branch '2.3.x'
Closes gh-22586
4 years ago
Andy Wilkinson 8ff2b9f2e8 Merge branch '2.2.x' into 2.3.x
Closes gh-22585
4 years ago
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
4 years ago
Andy Wilkinson d16838e4b7 Merge branch '2.3.x'
Closes gh-22584
4 years ago
Andy Wilkinson 39cb912819 Merge branch '2.2.x' into 2.3.x
Closes gh-22583
4 years ago
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
4 years ago
Andy Wilkinson 4827e84a12 Merge branch '2.3.x'
Closes gh-22581
4 years ago
Andy Wilkinson d0c75aef19 Merge branch '2.2.x' into 2.3.x
Closes gh-22580
4 years ago
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
4 years ago
Andy Wilkinson 3444a23765 Merge branch '2.3.x'
Closes gh-22579
4 years ago
Andy Wilkinson f0d90020e5 Merge branch '2.2.x' into 2.3.x
Closes gh-22578
4 years ago
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
4 years ago
Andy Wilkinson 8a9cc64221 Merge branch '2.3.x'
Closes gh-22577
4 years ago
Andy Wilkinson 5279b90ced Merge branch '2.2.x' into 2.3.x
Closes gh-22576
4 years ago
Andy Wilkinson 1c3528f5a4 Include Jackson Modules in WebMvcTest and WebFluxTest
Fixes gh-22530
4 years ago
Andy Wilkinson 6b4114e4cf Merge branch '2.3.x'
Closes gh-22575
4 years ago
Andy Wilkinson 979aef1f68 Merge branch '2.2.x' into 2.3.x
Closes gh-22574
4 years ago
Andy Wilkinson 7b3c0a9e09 Advise against java.util.Optional configuration properties
Closes gh-21868
4 years ago
Stephane Nicoll 85ed16de13 Merge branch '2.3.x'
Closes gh-22568
4 years ago
Stephane Nicoll 6b32e62142 Fix CacheAutoConfiguration relative order for Couchbase
This commit fixes the auto-configuration of the Couchbase caching
support by configuring the cache once Spring Data Couchbase has gotten
a chance to be processed.

Closes gh-22542
4 years ago
Andy Wilkinson ce7210c4f0 Merge branch '2.1.x' into 2.2.x
Closes gh-22563
4 years ago
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
4 years ago
izeye 6eba7c5f10 Polish
See gh-22549
4 years ago
Stephane Nicoll 42155321cb Merge branch '2.3.x'
Closes gh-22561
4 years ago
Stephane Nicoll 7ed54bda96 Fix typo for management.health.readinessstate.enabled
Closes gh-22560
4 years ago
Andy Wilkinson 98115239b3 Only create effective bom artifact when needed
Closes gh-22143
4 years ago
Andy Wilkinson 63cac4bedd Upgrade to Micrometer 1.5.3
Closes gh-22553
4 years ago
Stephane Nicoll 3530ac9b0c Polish "Disable metrics export in integration tests"
See gh-21658
4 years ago
bono007 b1830da0da Disable metrics export in integration tests
This commit introduces a new property to globally disable metrics
export. In integration tests, this property is automatically set to
disable everything but in-memory metrics.

This commit also introduces a `@AutoConfigureMetrics` annotation that
can be used for integration tests that require metrics export to operate
as they would in an application.

See gh-21658
4 years ago
Andy Wilkinson 1a43cd1c8e Merge branch '2.1.x' into 2.2.x
Closes gh-22551
4 years ago
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
4 years ago
dreis2211 923474fa48 Polish
See gh-22535
4 years ago
Andy Wilkinson f4508b4059 Merge branch '2.1.x' into 2.2.x
Closes gh-22547
4 years ago
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
4 years ago
Andy Wilkinson 793d266b7e Merge branch '2.3.x'
Closes gh-22546
4 years ago
Andy Wilkinson c605a6e34b Override other variant of registerBeanDefintions
Fixes gh-22480
4 years ago
Dave Syer 48f49f2120 Restore missing EnvironmentPostProcessors
See gh-22544
4 years ago
Andy Wilkinson 9c5e59371f Upgrade to Jackson 2.10.5
Closes gh-22432
4 years ago
Andy Wilkinson 39c8898008 Upgrade to MariaDB 2.6.2
Closes gh-22541
4 years ago
Andy Wilkinson 44e6cf2e55 Upgrade to AspectJ 1.9.6
Closes gh-22540
4 years ago
Andy Wilkinson f93bae4bd3 Upgrade to Aspectj 1.9.6
Closes gh-22539
4 years ago
Andy Wilkinson ce803cc678 Upgrade to Micrometer 1.3.11
Closes gh-22538
4 years ago
Andy Wilkinson 698db27a75 Upgrade to Aspectj 1.9.6
Closes gh-22537
4 years ago
Andy Wilkinson db242794ec Upgrade to Micrometer 1.1.16
Closes gh-22536
4 years ago
Phillip Webb 36a6ca6e6e Add EnvironmentPostProcessorsFactory
Update `EnvironmentPostProcessorApplicationListener` so that it can
either use values from `spring.factories` or use a factory interface.

Closes gh-22529
4 years ago
dreis2211 b01fb63de6 Polish
See gh-22524
4 years ago
Phillip Webb 33b48c8bac Add @Name support to the annotation processor
Update the `ConfigurationMetadataAnnotationProcessor` so that `@Name`
annotated parameters generate the correct meta-data.

Closes gh-22492
4 years ago
Stephane Nicoll 88e2810801 Merge branch '2.3.x'
Closes gh-22527
4 years ago
Stephane Nicoll e9a966a0a2 Upgrade to Groovy 2.5.13
Closes gh-22526
4 years ago
Stephane Nicoll 4f3b03afcf Merge branch '2.1.x' into 2.2.x
Closes gh-22525
4 years ago
Stephane Nicoll 0440a9a78c Upgrade to Groovy 2.5.13
Closes gh-22505
4 years ago
Madhura Bhave 3f76eb2097 Add volume mount property source support
Add support for volume mounted directories where the filename becomes
the property key and the file contents becomes the value.

Support is provided via a dedicated `VolumeMountDirectoryPropertySource`
class which can either be used directly, or via a "volumemount:/..."
`spring.config.import` location.

Closes gh-19990

Co-authored-by: Phillip Webb <pwebb@vmware.com>
4 years ago
Madhura Bhave eee260fc03 Add support for profile groups
Add support for profile groups so that users can combine a number of
fine-grained profiles into a single logical group.

Closes gh-22522
4 years ago
Phillip Webb 8c6c4fa9fa Overhaul "externalized configuration" docs
Update the "externalized configuration" reference documentation
following the recent updates.

Closes gh-22521
4 years ago
Phillip Webb 3352024b1c Provide ConfigFileApplicationListener replacement
Deprecate `ConfigFileApplicationListener` and provide a replacement
mechanism that supports arbitrary config data imports.

This commit updates the following areas:

- Extract `EnvironmentPostProcessor` invocation logic from the
  `ConfigFileApplicationListener` to new dedicated listener. Also
  providing support for `Log` injection.

- Extract `RandomPropertySource` adding logic from the
  `ConfigFileApplicationListener` to a dedicated class.

- Migrate to the recently introduced `DefaultPropertiesPropertySource`
  class when moving the defaultProperties `PropertySource`

- Replace processing logic with a phased approach to ensure that
  profile enablement happens in a distinct phase and that profiles
  can no longer be activated on an ad-hoc basis.

- Provide a more predictable and logical import order for processing
  `application.properties` and `application.yml` files.

- Add support for a `spring.config.import` property which can be used
  to import additional config data. Also provide a pluggable API
  allowing third-parties to resolve and load locations themselves.

- Add `spring.config.activate.on-profile` support which replaces the
  existing `spring.profiles` property.

- Add `spring.config.activate.on-cloud-platform` support which allows
  a config data document to be active only on a given cloud platform.

- Support a `spring.config.use-legacy-processing` property allowing the
  previous processing logic to be used.

Closes gh-22497

Co-authored-by: Madhura Bhave <mbhave@vmware.com>
4 years ago
Phillip Webb 44f18362d3 Add Binder backed CloudPlatform.isEnforced method
Update `CloudPlatform` with a new `isEnforced` method that's backed
by a `Binder` rather than the `Environment`. We'll require this when
we overhaul our external config data processing logic.

Closes gh-22498
4 years ago
Phillip Webb cd36444641 Extract DefaultPropertiesPropertySource class
Extract `DefaultPropertiesPropertySource` from `SpringApplication` so
that logic can be easily accessed by other classes. Specifically the
property source name and logic to move the source to the end of the
list needs to be called from several places.

Closes gh-22520
4 years ago
Phillip Webb 039fbdfa7c Add DeferredLogFactory support
Add a new `DeferredLogFactory` interface and `DeferredLogs`
implementation that can be used when a `DeferredLog` instance is needed
but the `switchOver` method should be handled elsewhere.

This interface has primarily been added so `EnvironmentPostProcessor`
classes will no longer need to implement `ApplicationEventListener`
just to switch over their logs.

Closes gh-22496
4 years ago
Madhura Bhave 9e9eb90d09 Add multi-document properties file support
Update `OriginTrackedPropertiesLoader` so that it can support
multi-document properties files. These are similar to multi-document
YAML files but use `#---` as the separator.

Closes gh-22495

Co-authored-by: Phillip Webb <pwebb@vmware.com>
4 years ago
Phillip Webb 945e5b9222 Add ConfigurationPropertySource.from method
Add a factory method to `ConfigurationPropertySource` that allows a
single Spring `PropertySource` instance to be adapted.

Closes gh-22494
4 years ago
Phillip Webb 078e146983 Filter empty YAML documents
Update `OriginTrackedYamlLoader` so that empty documents are filtered
from the result. Prior to this commit, our origin wrapper would confuse
the YAML processor and cause empty documents to be included in the Map
with a key of "document" and no value.

Closes gh-22493
4 years ago
Phillip Webb fdc6e80163 Add trailing escape character test
Update `OriginTrackedPropertiesLoaderTests` to also test that an escape
character can be the last character on a line.
4 years ago
Phillip Webb 2eeffe7931 Add @Name support for value object binding
Update value object binder support so that parameters can be annotated
with `@Name` if a specific property name should be used. Prior to this
commit is was not possible to use Java reserved words as property names.

Closes gh-22492
4 years ago
Phillip Webb 2d3ac4bb2e Polish 4 years ago
Phillip Webb 3d7d9d064c Update copyright year of changed files 4 years ago
Phillip Webb 14c1b0938a Polish 4 years ago
Phillip Webb da69286838 Merge branch '2.3.x' 4 years ago
Phillip Webb 187d3af7fc Update copyright year of changed files 4 years ago
Phillip Webb d2a7808098 Polish 4 years ago
Phillip Webb 217b2eff89 Merge branch '2.2.x' into 2.3.x 4 years ago
Phillip Webb b5e70157dc Update copyright year of changed files 4 years ago
Phillip Webb 51a26a4d5a Polish 4 years ago
Stephane Nicoll dd615fd9dd Upgrade to Spring Integration 5.3.2
Closes gh-22389
4 years ago
Stephane Nicoll d9c34d5b84 Upgrade to Spring Integration 5.1.12
Closes gh-22511
4 years ago
Stephane Nicoll 68497649b1 Upgrade to Spring Integration 5.2.8
Closes gh-22385
4 years ago
Stephane Nicoll fb56483015 Upgrade to Spring Kafka 2.5.4
Closes gh-22390
4 years ago
Stephane Nicoll d1f9adc189 Upgrade to Spring Kafka 2.3.10
Closes gh-22386
4 years ago
Stephane Nicoll 155f8a1a88 Upgrade to Spring AMQP 2.2.9
Closes gh-22387
4 years ago
Stephane Nicoll ad976bec20 Upgrade to Spring AMQP 2.2.9
Closes gh-22383
4 years ago
Stephane Nicoll baa6a8aeb1 Upgrade to Spring AMQP 2.1.16
Closes gh-22507
4 years ago
Stephane Nicoll 42817224e1 Merge branch '2.3.x' 4 years ago
Stephane Nicoll 8be46529e1 Merge branch '2.2.x' into 2.3.x 4 years ago
Stephane Nicoll d2ed9dc090 Upgrade to Spring Data Neumann-SR2
Closes gh-22388
4 years ago
Stephane Nicoll d5301f8b0a Upgrade to Spring Data Moore-SR9
Closes gh-22384
4 years ago
Stephane Nicoll 8b20840a1a Upgrade to Spring Data Lovelace-SR19
Closes gh-22382
4 years ago
dreis2211 8929fbe46c Add plugin management for liquibase-maven-plugin
See gh-22499
4 years ago
Andy Wilkinson 0ac7178ae1 Merge branch '2.3.x'
Closes gh-22491
4 years ago
dreis2211 198131f5e4 Remove redundant compiler arguments in Gradle build files
See gh-22488
4 years ago
Andy Wilkinson 01558100d1 Do not attempt to use AprLifecycleListener in a native image
Closes gh-22485
4 years ago
Andy Wilkinson 8799033801 Merge branch '2.3.x' 4 years ago