Commit Graph

10107 Commits (4827e84a121ac5844d9ec1516eaa22fa67a1ccd5)

Author SHA1 Message Date
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