Commit Graph

10202 Commits (2b995324e41f47cb5ef4421ec5faecc6592a83bc)

Author SHA1 Message Date
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
Andy Wilkinson 2063c242ae Polish 4 years ago
Brian Clozel c6df64aeb6 Merge branch '2.3.x' 4 years ago
Brian Clozel 03739e3097 Polish "Improve liveness/readiness health config"
See gh-22107
4 years ago
Brian Clozel 1d95e2f504 Merge branch '2.3.x'
Closes gh-22483
4 years ago
Brian Clozel fe807d6c0b Improve liveness/readiness health config
Prior to this commit, the application availability infrastructure
would mix the `AvailabilityState`, the `HealthIndicator` and the
`HealthGroup` concepts and would not align with the rest.

This commit auto-configures the livenessState and readinessState
health indicators with the relevant configuration properties.
Unlike other indicators, they are not enabled by default but might
be in future versions.

This also moves the `management.health.probes.enabled` property
to `management.endpoint.health.probes.enabled` since "probes" here
is not a health indicator but rather a configuration flag for the
health endpoint.

Finally, the probes auto-configuration is refined to automatically
add liveness and readiness indicators for the probes group if
they're not already present.

Closes gh-22107
4 years ago
Andy Wilkinson cb73558856 Upgrade to Spring Framework 5.2.8.RELEASE
Closes gh-22375
4 years ago
Andy Wilkinson 6114897473 Upgrade to Reactor Bom Dysprosium-SR10
Closes gh-22376
4 years ago
Andy Wilkinson dd38ffe3a7 Upgrade to Tomcat 9.0.37
Closes gh-22478
4 years ago
Andy Wilkinson e9c46074f1 Upgrade to Solr 8.5.2
Closes gh-22477
4 years ago
Andy Wilkinson 3c628209b8 Upgrade to Netty 4.1.51.Final
Closes gh-22476
4 years ago
Andy Wilkinson 057ab3c647 Upgrade to Neo4j OGM 3.2.14
Closes gh-22475
4 years ago
Andy Wilkinson bd64f4b9d1 Upgrade to MySQL 8.0.21
Closes gh-22474
4 years ago
Andy Wilkinson bf95b7ac2d Upgrade to MongoDB 4.0.5
Closes gh-22473
4 years ago
Andy Wilkinson 13ab92238b Upgrade to Micrometer 1.5.2
Closes gh-22472
4 years ago
Andy Wilkinson 347d3af35d Upgrade to MariaDB 2.6.1
Closes gh-22471
4 years ago
Andy Wilkinson f8c85b7ac9 Upgrade to Lettuce 5.3.2.RELEASE
Closes gh-22470
4 years ago
Andy Wilkinson 09de935f29 Upgrade to Kotlin Coroutines 1.3.8
Closes gh-22469
4 years ago
Andy Wilkinson ebcc903547 Upgrade to jOOQ 3.13.3
Closes gh-22468
4 years ago
Andy Wilkinson ee689f516f Upgrade to Johnzon 1.2.8
Closes gh-22467
4 years ago
Andy Wilkinson c71b5ed836 Upgrade to Jetty 9.4.30.v20200611
Closes gh-22466
4 years ago
Andy Wilkinson c104a13bd5 Upgrade to Jetty Reactive HTTPClient 1.1.4
Closes gh-22465
4 years ago
Andy Wilkinson 1ee9be847e Upgrade to Jakarta Servlet 4.0.4
Closes gh-22464
4 years ago
Andy Wilkinson 6b48705e6a Upgrade to Jackson Bom 2.11.1
Closes gh-22463
4 years ago
Andy Wilkinson 1663e46720 Upgrade to HSQLDB 2.5.1
Closes gh-22462
4 years ago
Andy Wilkinson c368f38e88 Upgrade to Hibernate 5.4.18.Final
Closes gh-22461
4 years ago
Andy Wilkinson 3c05f8eb40 Upgrade to Hazelcast 3.12.8
Closes gh-22460
4 years ago
Andy Wilkinson 3be07566fb Upgrade to Flatten Maven Plugin 1.2.4
Closes gh-22459
4 years ago
Andy Wilkinson d783f3e4d2 Upgrade to Dropwizard Metrics 4.1.11
Closes gh-22458
4 years ago
Andy Wilkinson 8030c8635c Upgrade to DB2 JDBC 11.5.4.0
Closes gh-22457
4 years ago
Andy Wilkinson f88038f00d Upgrade to Couchbase Client 3.0.6
Closes gh-22456
4 years ago
Andy Wilkinson 48ea8caf3d Upgrade to Caffeine 2.8.5
Closes gh-22455
4 years ago
Andy Wilkinson 82ca58a36e Upgrade to Byte Buddy 1.10.13
Closes gh-22454
4 years ago
Andy Wilkinson bec2942bae Upgrade to AppEngine SDK 1.9.81
Closes gh-22453
4 years ago
Andy Wilkinson b6516c9790 Upgrade to ActiveMQ 5.15.13
Closes gh-22452
4 years ago
Andy Wilkinson 8448763976 Upgrade to Spring Framework 5.2.8.RELEASE
Closes gh-22372
4 years ago
Andy Wilkinson 249e7dab01 Upgrade to Reactor Dysprosium-SR10
Closes gh-22374
4 years ago
Andy Wilkinson cb371b276f Upgrade to Spring Session Bom Corn-SR3
Closes gh-22451
4 years ago
Andy Wilkinson e8f220a749 Upgrade to Neo4j Ogm 3.2.14
Closes gh-22450
4 years ago
Andy Wilkinson 11cd2bb5c9 Upgrade to Kotlin Coroutines 1.3.8
Closes gh-22449
4 years ago
Andy Wilkinson ffe3dc766b Upgrade to Hsqldb 2.5.1
Closes gh-22448
4 years ago
Andy Wilkinson cddfb888fc Upgrade to Hibernate 5.4.18.Final
Closes gh-22447
4 years ago
Andy Wilkinson fef61aea2c Upgrade to Jetty 9.4.30.v20200611
Closes gh-22446
4 years ago
Andy Wilkinson bbf8b01741 Upgrade to Tomcat 9.0.37
Closes gh-22445
4 years ago
Andy Wilkinson 123a490a39 Upgrade to Johnzon Jsonb 1.2.8
Closes gh-22444
4 years ago
Andy Wilkinson a568f0fd07 Upgrade to Activemq 5.15.13
Closes gh-22443
4 years ago
Andy Wilkinson 76457321a8 Upgrade to Byte Buddy 1.10.13
Closes gh-22442
4 years ago
Andy Wilkinson b24797d31a Upgrade to Mysql 8.0.21
Closes gh-22441
4 years ago
Andy Wilkinson b621cfc8e6 Upgrade to Jakarta Servlet 4.0.4
Closes gh-22440
4 years ago
Andy Wilkinson fdbb464375 Upgrade to Netty 4.1.51.Final
Closes gh-22439
4 years ago
Andy Wilkinson 9aef4c5cf4 Upgrade to Micrometer 1.3.10
Closes gh-22438
4 years ago
Andy Wilkinson c52ff06741 Upgrade to Dropwizard Metrics 4.1.11
Closes gh-22437
4 years ago
Andy Wilkinson 1a63d78679 Upgrade to Db2 Jdbc 11.5.4.0
Closes gh-22436
4 years ago
Andy Wilkinson 09d3bf0655 Upgrade to Hazelcast 3.12.8
Closes gh-22435
4 years ago
Andy Wilkinson 9836aa1afe Upgrade to Appengine Sdk 1.9.81
Closes gh-22434
4 years ago
Andy Wilkinson da59518d2c Upgrade to Caffeine 2.8.5
Closes gh-22433
4 years ago
Andy Wilkinson a87bf7a25a Upgrade to Couchbase Client 2.7.16
Closes gh-22431
4 years ago
Andy Wilkinson 8b8fcb16dc Upgrade to Spring Framework 5.1.17.RELEASE
Closes gh-22370
4 years ago
Andy Wilkinson 636b4a9a81 Upgrade to Reactor Californium-SR20
Closes gh-22371
4 years ago
Andy Wilkinson 6315fe3a61 Upgrade to Spring Session Bom Bean-SR11
Closes gh-22430
4 years ago
Andy Wilkinson 3f8a0b516f Upgrade to Neo4j Ogm 3.1.20
Closes gh-22429
4 years ago
Andy Wilkinson 9baefc5993 Upgrade to Jetty 9.4.30.v20200611
Closes gh-22428
4 years ago
Andy Wilkinson 50b05ac652 Upgrade to Tomcat 9.0.37
Closes gh-22427
4 years ago
Andy Wilkinson 1113d5cc23 Upgrade to Activemq 5.15.13
Closes gh-22426
4 years ago
Andy Wilkinson 775231e3e9 Upgrade to Mysql 8.0.21
Closes gh-22425
4 years ago
Andy Wilkinson 83ca02f16d Upgrade to Netty 4.1.51.Final
Closes gh-22424
4 years ago
Andy Wilkinson dd9c9fa7be Upgrade to Micrometer 1.1.15
Closes gh-22423
4 years ago
Andy Wilkinson c166b5b23e Upgrade to Appengine Sdk 1.9.81
Closes gh-22422
4 years ago
Andy Wilkinson 43fd27bb71 Upgrade to Jackson 2.9.10.20200621
Closes gh-22421
4 years ago
Andy Wilkinson c90dc87b0b Upgrade to Couchbase Client 2.7.16
Closes gh-22420
4 years ago
Andy Wilkinson 0fd567664a Make DefaultErrorAttributes easier to subclass for message customization
Closes gh-22378
4 years ago
Andy Wilkinson e4b065bdd9 Merge branch '2.3.x'
Closes gh-22419
4 years ago