Commit Graph

597 Commits

Author SHA1 Message Date
Andy Wilkinson
67c81100de Merge branch '2.4.x'
Closes gh-25991
2021-04-09 19:07:02 +01:00
Andy Wilkinson
2b9ba96287 Merge branch '2.3.x' into 2.4.x
Closes gh-25990
2021-04-09 19:06:38 +01:00
Andy Wilkinson
0bc5c2ba8c Ensure that containers' static resource handling not MVC's is used
Closes gh-25949
2021-04-09 17:48:03 +01:00
Stephane Nicoll
b11602aeaa Polish "Add Quartz actuator endpoint"
This commit reworks the initial proposal so that jobs and triggers are
treated as first class concepts.

`/actuator/quartz` now returns the group names for jobs and triggers.

`actuator/quartz/jobs` returns the job names, keyed by the available
group names, while `/actuator/quartz/triggers` does the same for
triggers.

`/actuator/jobs/{groupName}` provides an overview of a job group. It
provides a map of job names with the class name of the job.
implementation

`/actuator/triggers/{groupName}` provides an overview of a trigger
group. There are five supported trigger implementations: cron, simple,
daily time interval, calendar interval, and custom for any other
implementation. Given that each implementation has specific settings,
triggers are split in five objects.

`/actuator/jobs/{groupName}/{jobName}` provides the full details of a
particular job. This includes a sanitized data map and a list of
triggers ordered by next fire time.

`/actuator/triggers/{groupName}/{triggerName}` provides the full details
of a particular trigger. This includes the state, its type, and a
dedicate object containing implementation-specific settings.

See gh-10364
2021-04-06 12:13:28 +02:00
Andy Wilkinson
e49a88cb9b Auto-configure script-based R2DBC database initialization
See gh-24741
2021-03-29 12:01:19 +01:00
dreis2211
a9a37f0dd5 Increase test coverage on Java 16
See gh-25809
2021-03-26 19:38:54 +00:00
Phillip Webb
8da82d2d36 Merge branch '2.4.x'
Closes gh-25790
2021-03-24 14:11:34 -07:00
Phillip Webb
35aeae5a4f Deprecate Bootstrapper
Deprecate the `Bootstrapper` interface entirely and provide a
`BootstrapRegistryInitializer` alternative so that people can migrate.

Unfortunately our previous attempt to fix the typo in the `Bootstrapper`
interface didn't provide us a way to remove the deprecated method
without impacting users. It was also problematic for people who were
implementing `Bootstrapper` rather than using a lambda since they needed
to introduce the deprecated method.

We unfortunately can't see a way to fix the original typo without
introducing a new interface.

Fixes gh-25735
2021-03-24 14:10:12 -07:00
Stephane Nicoll
e517ee8635 Merge branch '2.4.x'
Closes gh-25618
2021-03-13 18:22:57 +01:00
izeye
09f4d4b9bf Polish
See gh-25617
2021-03-13 18:08:54 +01:00
Andy Wilkinson
4b0600b558 Merge branch '2.4.x'
Closes gh-25576
2021-03-10 14:36:57 +00:00
Andy Wilkinson
3cc36d518d Merge branch '2.3.x' into 2.4.x
Closes gh-25575
2021-03-10 14:36:34 +00:00
Andy Wilkinson
4d3d56abfe Try to stabilize SampleSessionWebFluxApplicationTests
userDefinedMappingsSecureByDefault in
SampleSessionWebFluxApplicationTests may fail with an NPE if the
session times out before the initial response is sent due to the absence
of a SESSION cookie in the response. The test uses a short session
timeout (2 seconds) and we've seen the problem occur on CI when,
presumably, a noisy neighbour has caused some CPU starvation.

This commit increases the timeout to 5 seconds to reduce the chance of
a short period of CPU starvation causing the test to fail.

Closes gh-25572
2021-03-10 14:06:40 +00:00
Andy Wilkinson
5863edfdda Simplify code that makes hal the default json media type
See gh-25546
2021-03-10 12:14:54 +00:00
Andy Wilkinson
ed72bca6c8 Provide more pluggable way to indicate DataSource init dependencies
Closes gh-17619
Closes gh-25559
2021-03-09 13:55:48 +00:00
Stephane Nicoll
6aaf9f47be Merge branch '2.4.x'
Closes gh-25524
2021-03-06 08:16:35 +01:00
dreis2211
1a803448f0 Exclude GradleBuild tasks on JDK 16 for now
See gh-25523
2021-03-06 08:15:56 +01:00
Andy Wilkinson
3b235e4960 Merge branch '2.4.x'
See gh-25482
2021-03-03 17:56:42 +00:00
Andy Wilkinson
f85c7c9ef1 Merge branch '2.3.x' into 2.4.x
See gh-25481
2021-03-03 17:56:16 +00:00
Andy Wilkinson
da3920bd46 Wait for process to exit to avoid race with file deletion
See gh-25457
2021-03-03 17:55:37 +00:00
Andy Wilkinson
4a74521174 Merge branch '2.4.x'
See gh-25482
2021-03-03 16:43:53 +00:00
Andy Wilkinson
fefd49cce7 Merge branch '2.3.x' into 2.4.x
See gh-25481
2021-03-03 16:43:18 +00:00
Andy Wilkinson
c5cfb8750b Delete files after destroying processes that may be accessing them
Closes gh-25457
2021-03-03 16:42:49 +00:00
Andy Wilkinson
59d8c97634 Merge branch '2.4.x'
Closes gh-25482
2021-03-03 13:46:58 +00:00
Andy Wilkinson
e984f0ca31 Merge branch '2.3.x' into 2.4.x
Closes gh-25481
2021-03-03 13:46:39 +00:00
dreis2211
b0a6e92fb6 Speed up spring-boot-server-tests
See gh-25457
2021-03-03 13:34:41 +00:00
Andy Wilkinson
c35a4cc283 Merge branch '2.4.x'
See gh-25450
2021-02-26 15:46:52 +00:00
Andy Wilkinson
12d3b15244 Ensure that Jersey's filter has a servlet at the end of its chain
See gh-25449
2021-02-26 15:42:13 +00:00
Andy Wilkinson
54ba9e6ddf Merge branch '2.4.x'
Closes gh-25450
2021-02-26 14:30:47 +00:00
Andy Wilkinson
cb600f1c0b Merge branch '2.3.x' into 2.4.x
Closes gh-25449
2021-02-26 14:26:57 +00:00
Andy Wilkinson
8f72ca6521 Use ResourceConfig customization to register endpoints with Jersey
Previously, actuator endpoints were registered with Jersey upon
injection of the ResourceConfig bean into a registrar class rather than
using a ResourceConfigCustomizer. This was done to fix a problem
when running the Actuator on a separate port where the main application
context's customizers were also applied to the management context,
breaking the singleton contract for those resources. This approach
meant that the registration could be performed at any point after the
ResourceConfig had been created. When Jersey's configured as a Filter
this resulted in the registration failing as the attempt was being made
after the Filter lifecyle callbacks which make the ResourceConfig
immutable.

This commit reworks the endpoint registration to be performed using a
ManagementContextResourceConfigCustomizer, a resource config customizer
that's only applied to the ResourceConfig that's used by the Actuator.
When there's a separate management context, this ResourceConfig is
created by the Actuator's auto-configuration and the management context
resource config customizers are applied to it during its creation. The
main application's customizers are not applied. When the actuator is
using the same context as the main application, this ResourceConfig is
created by the main application. In this case a
ResourceConfigCustomizer is defined that delegates to all
ManagementContextResourceConfigCustomizers, allowing them to register
the actuator endpoints with the main ResourceConfig.

Fixes gh-25262
2021-02-26 14:25:24 +00:00
Andy Wilkinson
8ada183422 Merge branch '2.4.x'
Closes gh-25448
2021-02-26 14:07:00 +00:00
Andy Wilkinson
24b2bb9202 Merge branch '2.3.x' into 2.4.x
Closes gh-25447
2021-02-26 14:06:42 +00:00
dreis2211
4ff9e5edaa Split DeploymentIntegrationTests by container
Prior to this commit, every test started a new testcontainer. By splitting the
tests apart we can make use of static containers that are only instantiated once
per application (TomEE, Wildfly etc.)

See gh-25446
2021-02-26 14:04:17 +00:00
dreis2211
d55d8d6b19 Rename DeploymentIntegrationTests
See gh-25446
2021-02-26 14:04:08 +00:00
Andy Wilkinson
888ca442fa Merge branch '2.4.x'
Closes gh-25441
2021-02-25 18:04:25 +00:00
Andy Wilkinson
62737b1274 Merge branch '2.3.x' into 2.4.x
Closes gh-25440
2021-02-25 18:04:10 +00:00
dreis2211
8bacbff629 Remove spring-boot-smoke-test-jta-jndi
See gh-25434
2021-02-25 18:02:25 +00:00
Andy Wilkinson
2f83a6714b Rework DataSource initialization
Previously, DataSource initialization was triggered via a
BeanPostProcessor or a schema created event from JPA. This caused
numerous problems with circular dependencies, bean lifecycle, etc and
added significant complexity.

This commit reworks DataSource initialization to remove the use of a
BeanPostProcessor entirely. In its place, DataSource initialization is
now driven by an InitializingBean with dependency relationships
between beans ensuring that initialization has been performed before
the DataSource is used. This aligns with the approach that's worked
well with Flyway and Liquibase.

More changes are planned to further simplify DataSource initialization.
The changes in this commit are a foundation for those changes. Any new
public API in this commit is highly likely to change before the next
GA.

Fixes gh-13042
Fixes gh-23736
2021-02-17 12:10:22 +00:00
Andy Wilkinson
db781a0d84 Merge branch '2.4.x'
See gh-25077
2021-02-02 15:14:18 +00:00
Andy Wilkinson
788a42d694 Merge branch '2.3.x' into 2.4.x
See gh-25076
2021-02-02 15:12:27 +00:00
Andy Wilkinson
67479b6380 Add junit-platform-launcher dependency by convention
Closes gh-25074
2021-02-02 13:03:21 +00:00
Phillip Webb
d8b6960997 Merge branch '2.4.x'
Closes gh-25077
2021-02-01 16:08:57 -08:00
Phillip Webb
257608a3a3 Merge branch '2.3.x' into 2.4.x
Closes gh-25076
2021-02-01 16:03:43 -08:00
Phillip Webb
939b5dfc26 Add junit-platform-launcher dependency
Update `build.gradle` files to ensure that `junit-platform-launcher` is
a `testRuntimeOnly` dependency. This ensures that tests can be run from
Eclipse.

Closes gh-25074
2021-02-01 15:31:28 -08:00
Phillip Webb
c9a2c4e326 Merge branch '2.4.x' 2021-01-26 19:06:48 -08:00
Madhura Bhave
d07e351eff Polish " Change info endpoint to be secure and unexposed by default"
See gh-24715
2021-01-21 15:13:53 -08:00
Hatef Palizgar
53c1e79810 Change info endpoint to be secure and unexposed by default
See gh-24715
2021-01-21 13:54:59 -08:00
Phillip Webb
a196a9bd8f Merge branch '2.4.x'
Closes gh-24949
2021-01-20 13:49:37 -08:00
Phillip Webb
69fbd2f8aa Delegate usesPathPatterns() call to mappings
Update `CompositeHandlerMapping` so that the `usesPathPatterns()` method
returns `true` if any of the delegate mappings return `true`.

Closes gh-24877
2021-01-20 13:49:18 -08:00
Stephane Nicoll
012a199773 Remove Spring Data Solr support
In preparation to the upgrade to Spring Data 2021.0, this commit removes
auto-configuration for Spring Data Solr.

Closes gh-24939
2021-01-20 15:03:42 +01:00
Stephane Nicoll
a18f01addf Remove bitronix support
See gh-24806
2021-01-15 14:14:27 +01:00
Madhura Bhave
b62325a056 Merge branch '2.4.x' 2021-01-04 13:37:05 -08:00
Madhura Bhave
86e94b95c3 Merge branch '2.3.x' into 2.4.x 2021-01-04 13:36:36 -08:00
Madhura Bhave
9928d74a9e Revert fix to enable cors for actuator endpoints
The fix causes a Jersey application to fail in the absence
of a `CorsFilter` or `CorsConfigurationSource` bean.

See gh-11987
2021-01-04 12:25:43 -08:00
Stephane Nicoll
1e8d5c37ed Merge branch '2.4.x'
Closes gh-24607
2020-12-23 16:09:13 +01:00
izeye
5e3f618f9d Polish
See gh-24604
2020-12-23 16:08:21 +01:00
Phillip Webb
82791b4eda Improve performance of Tomcat 'jar:war:file' URLs
Update jar `Handler` fallback logic to directly support Tomcat
'jar:war:file' URLs. This commit allows contents to be accessed without
the JDK needing to extracted the nested jar to the temporary folder.

Closes gh-24553
2020-12-17 22:51:19 -08:00
Phillip Webb
abd0b484bc Merge branch '2.3.x' into 2.4.x 2020-12-17 22:50:19 -08:00
Phillip Webb
b351288f48 Fix integration test app detection
See gh-18631
2020-12-17 22:32:56 -08:00
Phillip Webb
a2a153ade6 Fix name clash with integration test apps
Rename "app" projects in `spring-boot-launch-script-tests` and
`spring-boot-loader-tests` to something unique.

See gh-18631
2020-12-17 22:00:12 -08:00
Phillip Webb
0730949325 Merge branch '2.3.x' into 2.4.x
Closes gh-24554
2020-12-17 20:47:13 -08:00
Phillip Webb
c4e41305d5 Prevent Tomcat URL "reflective access" warnings
Update the jar `Handler` class to support a non-reflective fallback
mechanism when possible. The updated code attempts to capture a regular
jar URL before our handler is installed. It can then use that URL as
context when creating the a fallback URL. The JDK jar `Handler` will
be copied from the context URL to the fallback URL.

Without this commit, resolving new Tomcat URLs of the form
`jar:war:file:...` would result in an ugly "Illegal reflective access"
warning.

Fixes gh-18631
2020-12-17 20:43:41 -08:00
Madhura Bhave
a1ea5b49ec Merge branch '2.3.x' into 2.4.x
Closes gh-24542
2020-12-16 14:57:50 -08:00
Madhura Bhave
09e07428cc Configure CORS in default security configuration for MVC
Fixes gh-11987
2020-12-16 14:55:36 -08:00
Phillip Webb
72d36e0c07 Update copyright year of changed files 2020-12-10 10:46:04 -08:00
Stephane Nicoll
60530b9b5b Merge branch '2.3.x'
Closes gh-24348
2020-12-07 11:56:35 +01:00
Stephane Nicoll
07e32bf52e Merge branch '2.2.x' into 2.3.x
Closes gh-24347
2020-12-07 11:55:40 +01:00
Stephane Nicoll
f64b7f8465 Use proper CentOS base image
See gh-24344
2020-12-07 11:46:33 +01:00
Stephane Nicoll
a5a8545801 Switch integration tests to CentOS 7
This commit upgrades the docker image for CentOS to Centos 7.9 as
CentOs 6 is EOL since November 30. Given that CentOS 7 does no longer
support SysVinit, this commit also updates the integration tests to not
test this OS anymore.

Closes gh-24344
2020-12-07 10:33:29 +01:00
Phillip Webb
30c27274e2 Merge branch '2.3.x'
Closes gh-24339
2020-12-04 18:31:55 -08:00
Phillip Webb
5f351a6983 Merge branch '2.2.x' into 2.3.x
Closes gh-24338
2020-12-04 18:21:57 -08:00
Phillip Webb
837fc83527 Fix checkstyle header violations
See gh-24337
2020-12-04 18:05:53 -08:00
Andy Wilkinson
e4380275e5 Merge branch '2.3.x'
Closes gh-24224
2020-11-20 12:07:01 +00:00
Andy Wilkinson
4e9f702681 Only run deployment tests when war has material changes
Closes gh-24137
2020-11-20 12:05:51 +00:00
Andy Wilkinson
4a9ca33026 Upgrade to Micrometer 1.6.1
Closes gh-24051
2020-11-11 19:35:29 +00:00
Stephane Nicoll
b6fc0913cf Merge branch '2.3.x'
Closes gh-24104
2020-11-10 17:44:05 +01:00
Stephane Nicoll
515b18e142 Merge branch '2.3.x'
Closes gh-24108
2020-11-10 17:10:26 +01:00
Stephane Nicoll
9e901b6e07 Upgrade to Testcontainers 1.15.0
Closes gh-24103
2020-11-10 16:24:16 +01:00
Stephane Nicoll
23ad2b4156 Rationalize Testcontainers image versions
This commit rationalizes the Docker image names used in integration
tests.

Closes gh-24107
2020-11-10 16:04:27 +01:00
Andy Wilkinson
43b0e2f25c Work around Micrometer JvmGcMetrics introspection failure
Closes gh-23998
2020-11-02 19:52:30 +00:00
Andy Wilkinson
4a47ed97b8 Merge branch '2.3.x'
Closes gh-23997
2020-11-02 17:35:36 +00:00
Andy Wilkinson
8294083c99 Make deployment integration tests run when war changes
Closes gh-23996
2020-11-02 17:33:58 +00:00
Andy Wilkinson
f60f3cb38e Exclude property beans from method validation
Exclude `@ConfigurationProperties` beans from method validation so
that `@Validated` can be used on final classes without the method
validation post-processor throwing an exception.

This commit introduces a `FilteredMethodValidationPostProcessor` class
which will use `MethodValidationExcludeFilters` to exclude beans from
method validation processing. Using `@EnableConfigurationProperties`
will automatically register an appropriate filter.

Closes gh-21454
2020-10-27 15:43:00 -07:00
Madhura Bhave
0818f27f44 Configure WebSecurity using WebSecurityCustomizer
Replace `WebSecurityConfigurer` and `WebSecurityConfigurerAdapter`
configurations with `WebSecurityCustomizer` or `SecurityFilterChain`
beans.

Closes gh-23421
2020-10-26 23:47:14 -07:00
Andy Wilkinson
10f887a5ad Introduce management base-path property for servlet and reactive actuator
Previously, the base path of a servlet-based management server could be
configured using management.server.servlet.context-path but there was no
equivalent property for WebFlux.

This commit introduces a new property, management.server.base-path,
that can be used with both servlet and reactive management servers. The
existing servlet-specific property has been deprecated in favour of the
new general property. When using the servlet stack, if both the general
property and the servlet-specific property are set, the new general
property takes precedence. When using the reactive stack, only the new
general property is considered.

Closes gh-22906
2020-10-26 14:16:29 +00:00
Stephane Nicoll
ba88c9dc3e Fix configuration of Webflux Spring Session smoke test
See gh-23752
2020-10-26 13:06:02 +01:00
Stephane Nicoll
9efff2af83 Merge branch '2.3.x'
Closes gh-23735
2020-10-20 10:08:21 +02:00
Stephane Nicoll
b7a8b0f19b Hacking
See gh-23740
2020-10-20 09:32:40 +02:00
Andy Wilkinson
d82acc3ac5 Remove erroneous management.server.address config from Actuator smoke test
See gh-22187
2020-10-19 15:45:37 +01:00
Phillip Webb
1cf9fc107e Improve ConfigData processing code
Refactor `ConfigData` processing code to make it less awkward to
follow.

Prior to this commit the `ConfigDataLocationResolver` would take a
String location and return a `ConfigDataLocation` instance. This was
a little confusing since sometimes we would refer to `location` as the
String value, and sometimes it would be the typed instance. We also
had nowhere sensible to put the `optional:` prefix logic and we needed
to pass a `boolean` parameter to a number of methods. The recently
introduced `Orgin` support also didn't have a good home.

To solve this, `ConfigDataLocation` has been renamed to
`ConfigDataResource`. This frees up `ConfigDataLocation` to be used
as a richer `location` type that holds the String value, the `Orgin`
and provides a home for the `optional:` logic.

This commit also cleans up a few other areas of the code, including
renaming `ResourceConfigData...` to `StandardConfigData...`. It also
introduces a new exception hierarchy for `ConfigDataNotFoundExceptions`.

Closes gh-23711
2020-10-15 11:33:57 -07:00
dreis2211
ecee9c0f9b Avoid unnecessary explicit initialization of Atomics
Constructor calls like new AtomicInteger(0) cause a volatile write that
can be saved in cases where the constructor parameter is the default
value.

See gh-23575
2020-10-02 16:43:34 +02:00
Stephane Nicoll
de32fab324 Adapt to API change in Spring Framework 5.3.0 snapshots
See gh-23534
2020-09-30 16:09:41 +02:00
Andy Wilkinson
a19a565410 Stop registering the default servlet by default
Previously, the default servlet was registered automatically when using
embedded Jetty, Tomcat, or Undertow. However, it is not used by the
majority of applications where Spring MVC's DispatcherServlet will be
the only servlet that's needed. As such configuring the default servlet
was wasting CPU and memory.

This commit changes the default for registering the default servlet to
false. It can be re-enabled by setting
server.servlet.register-default-servlet=true.

Closes gh-22915
2020-09-29 11:52:19 +01:00
Stephane Nicoll
4009acf025 Add support for Hazelcast
This commit upgrades to Hazelcast 4.0.3, yet keeping compatibility with
Hazelcast 3.x.

Closes gh-20856
Closes gh-23475
2020-09-24 15:57:07 +02:00
Phillip Webb
1ae1436211 Refactor BootstrapRegistry support
Refactor `BootstrapRegistry` support following initial prototype work
with the Spring Cloud team.

This update splits the `BootstrapRegistry` API into `BootstrapRegistry`,
`BootstrapContext` and  `ConfigurableBootstrapContext` interfaces and
moves it to the same package as `SpringApplication`.

A new `Bootstrapper` interface has been introduced that can be added
to the `SpringApplication` to customize the `BootstrapRegistry` before
it's used.

Closes gh-23326
2020-09-17 00:31:00 -07:00
dreis2211
97ec232935 Reinstate smoketest.rsocket.SampleRSocketApplicationTests.rSocketEndpoint()
See gh-23246
2020-09-10 16:42:00 +01:00
Andy Wilkinson
17b6910208 Merge branch '2.3.x'
Closes gh-23212
2020-09-07 16:44:07 +01:00
Andy Wilkinson
d50c8aa312 Update container versions used in deployment integration tests
Closes gh-23211
2020-09-07 16:43:27 +01:00
Andy Wilkinson
ab669bd73c Merge branch '2.3.x'
Closes gh-23208
2020-09-07 16:15:31 +01:00
Andy Wilkinson
b9ee545c78 Improve robustness of DeploymentIntegrationTests
Closes gh-23207
2020-09-07 16:15:12 +01:00
Stephane Nicoll
2e4b338704 Merge branch '2.3.x'
Closes gh-23155
2020-09-01 11:32:00 +02:00
Stephane Nicoll
a341d00529 Review instructions for running launch script tests with Gradle
Closes gh-20606
2020-09-01 11:30:50 +02:00
Phillip Webb
aa2580bb51 Merge branch '2.3.x' 2020-08-18 15:39:08 -07:00
Phillip Webb
ba2ab3363b Merge branch '2.2.x' into 2.3.x 2020-08-18 15:38:53 -07:00
Phillip Webb
60b5de192c Merge branch '2.2.x' into 2.3.x 2020-08-18 15:38:11 -07:00
Phillip Webb
4e76138ebc Update copyright year of changed files 2020-08-18 15:37:59 -07:00
Andy Wilkinson
969dd35e45 Upgrade to Mockito 3.4.6
Closes gh-22838
2020-08-10 15:22:03 +01:00
Stephane Nicoll
f2a52a87ec Merge branch '2.3.x'
Closes gh-22850
2020-08-10 16:05:47 +02:00
Stephane Nicoll
980ddcffd0 Merge branch '2.2.x' into 2.3.x
Closes gh-22849
2020-08-10 16:05:13 +02:00
Stephane Nicoll
dd9c9fd171 Polish "Migrate legacy endpoint that have a dash in their id"
See gh-21615
2020-08-10 14:53:18 +02:00
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
Andy Wilkinson
d1a0d9f11b Merge branch '2.3.x'
Closes gh-22783
2020-08-07 09:51:32 +01:00
Andy Wilkinson
8f27ad9726 Remove version from name of Ant-built jar
Previously, the project version was included in the name of the
Ant-built jar and the integration test assumed that there would be a
single jar in the output directory. This assumption did not hold true
if the project's version had changed and the project had been built
again without a clean. This resulted in two jars, one for the previous
version and one for the current version, in the output directory. This
caused a test failure.

This commit updates the build.xml to remove the version from the name
of the Ant-built jar and updates the integration test to find it.

Closes gh-22782
2020-08-07 09:49:14 +01:00
Danilo Piazzalunga
5352ec1cba Support configuration of entityId for a SAML Relying Party
See gh-22258
2020-08-05 09:41:38 +02:00
Andy Wilkinson
07b6f83c7a Merge branch '2.3.x' 2020-08-04 18:24:28 +01:00
Andy Wilkinson
1233288df0 Disable JarLaunchScriptIntegrationTests without Docker
See gh-21388
2020-08-04 18:23:06 +01:00
Andy Wilkinson
9264f6ab79 Temporarily disable rSocketEndpoint test
See gh-22725
2020-08-04 15:02:59 +01:00
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
2020-08-04 16:00:29 +02:00
Andy Wilkinson
3210bc59ca Merge branch '2.3.x'
Closes gh-22722
2020-08-04 13:33:19 +01:00
Andy Wilkinson
323b097623 Merge branch '2.2.x' into 2.3.x
Closes gh-22721
2020-08-04 13:32:49 +01:00
Andy Wilkinson
84ff233590 Polish "Test the launch script when executed directly"
See gh-21388
2020-08-04 11:29:53 +01:00
Alexey Vinogradov
02a6a84499 Test the launch script when executed directly
See gh-21388
2020-08-04 10:18:35 +01:00
Andy Wilkinson
fae4f5e36a Merge branch '2.3.x'
Closes gh-22676
2020-07-30 17:59:00 +01:00
Andy Wilkinson
cba9f5b86e Avoid having multiple wars when project's version changes
Fixes gh-21606
2020-07-30 17:58:17 +01:00
Stephane Nicoll
9bc71fe44f Polish "Upgrade to Spring Data Neo4j 6"
See gh-22299
2020-07-29 19:36:42 +02:00
Gerrit Meier
15cd343737 Upgrade to Spring Data Neo4j 6
See gh-22299
2020-07-29 18:58:08 +02:00
Brian Clozel
89688d61ac Revert back to /snapshot repository for SNAPTHOTs
See gh-22640
2020-07-29 18:36:11 +02:00
Brian Clozel
f185e07573 Add missing libs-snapshot repository declaration
See gh-22640
2020-07-29 16:26:24 +02:00
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
2020-07-29 14:41:17 +02:00
Andy Wilkinson
4a828c7db1 Merge branch '2.1.x' into 2.2.x 2020-07-25 09:10:50 +01:00
Andy Wilkinson
2e1366f61f Make spring-boot-dependencies available when building test app 2020-07-24 18:30:52 +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
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>
2020-07-22 21:02:32 -07:00
Andy Wilkinson
8436fa9159 Make spring-boot -dependencies and -parent available
See gh-22066
2020-06-29 14:46:10 +01:00
jfarcand
2d3e19cfe5 Update Atmosphere versions used in smoke test
See gh-221144
2020-06-26 08:28:13 +01:00
Andy Wilkinson
07fb4b065d Merge branch '2.3.x'
Closes gh-21940
2020-06-16 10:10:38 +01:00
Andy Wilkinson
0de466e06e Require dependency on s-b-dependencies to use its constraints
Previously, Spring Boot's modules published Gradle Module Metadata
(GMM) the declared a platform dependency on spring-boot-dependencies.
This provided versions for each module's own dependencies but also had
they unwanted side-effect of pulling in spring-boot-dependencies
constraints which would influence the version of other dependencies
declared in the same configuration. This was undesirable as users
should be able to opt in to this level of dependency management, either
by using the dependency management plugin or by using Gradle's built-in
support via a platform dependency on spring-boot-dependencies.

This commit reworks how Spring Boot's build uses
spring-boot-dependencies and spring-boot-parent to provide its own
dependency management. Configurations that aren't seen by consumers are
configured to extend a dependencyManagement configuration that has an
enforced platform dependency on spring-boot-parent. This enforces
spring-boot-parent's version constraints on Spring Boot's build without
making them visible to consumers. To ensure that the versions that
Spring Boot has been built against are visible to consumers, the
Maven publication that produces pom files and GMM for the published
modules is configured to use the resolved versions from the module's
runtime classpath.

Fixes gh-21911
2020-06-16 08:50:21 +01:00
Phillip Webb
866ebf7c13 Merge branch '2.3.x' 2020-06-11 12:26:42 -07:00
Phillip Webb
29f5468ada Use java 8 compiler
Update Ant smoke test to explicitly use Java 8.
2020-06-11 12:26:08 -07:00
Andy Wilkinson
6e68101b9f Upgrade to Postgresql 42.2.13
Closes gh-21859
2020-06-10 17:04:03 +01:00
Andy Wilkinson
8fb7a6cace Remove JUnit 5's vintage engine from spring-boot-starter-test
Closes gh-21625
2020-06-05 14:02:26 +01:00
Andy Wilkinson
4fdd1a64c9 Merge branch '2.2.x' into 2.3.x
Closes gh-21718
2020-06-05 13:41:21 +01:00
Andy Wilkinson
1a52009cfb Migrate CustomServletPathSampleActuatorTests to JUnit Jupiter
Closes gh-21717
2020-06-05 13:40:30 +01:00
dreis2211
b498d3903f Upgrade to Testcontainers 1.14.2
See gh-21581
2020-05-27 14:49:09 +02:00
Andy Wilkinson
3f56f97e03 Merge branch '2.2.x'
Closes gh-21472
2020-05-15 16:21:33 +01:00
Andy Wilkinson
4a896f2272 Merge branch '2.1.x' into 2.2.x
Closes gh-21471
2020-05-15 16:20:23 +01:00
Phillip Webb
038ae93406 Update copyright year of changed files 2020-05-13 16:48:51 -07:00
Stephane Nicoll
c3c7fc0f43 Polish smoke test with removal of View support in Couchbase
See gh-21383
2020-05-11 16:17:18 +02:00
Phillip Webb
ff3b05a421 Add json starter to integration test repo 2020-04-30 20:55:35 -07:00
Scott Frederick
a30740f8d2 Separate server properties for message and errors
Prior to this commit, there was a property server.error.include-details
that allowed configuration of the message and errors attributes in a
server error response.

This commit separates the control of the message and errors attributes
into two separate properties named server.error.include-message and
server.error.include-binding-errors. When the message attribute is
excluded from a servlet response, the value is changed from a
hard-coded text value to an empty value.

Fixes gh-20505
2020-04-29 17:56:47 -05:00
Stephane Nicoll
ee913503b4 Tolerate Hazelcast 4
This commit updates HazelcastHealthIndicator and
HazelcastCacheMeterBinderProvider so that they work with
Hazelcast 4 while retaining compatibility with Hazelcast 3. Reflection
is used when necessary.

This commit also adds a smoke test that validates those features are
working when Hazelcast 4 is on the classpath.

Closes gh-21169
2020-04-29 13:39:54 +02:00
Phillip Webb
ad1248e4ec Replace "folder" with "directory"
Consistently use the term "directory" instead of "folder"

Closes gh-21218
2020-04-28 19:20:24 -07:00
Phillip Webb
bf41da5322 Update copyright year of changed files 2020-04-21 18:12:27 -07:00
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
2020-04-19 15:49:05 +02:00
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
2020-04-16 10:46:36 -05:00
Madhura Bhave
1342e4970a Provide a condition for detecting war deployments
Closes gh-19421
2020-04-09 18:52:06 -07:00
Scott Frederick
5afcaa7455 Revert "Add jetty-server to classpath for integration test"
This reverts commit 4e55f2aab4.

This workaround is no longer required with the latest Micrometer
snapshot.
2020-04-08 08:48:39 -05:00
Scott Frederick
4e55f2aab4 Add jetty-server to classpath for integration test
This commit works around a problem with deploying Boot apps to Wildfly
for integration testing while we investigate the root cause.

See gh-20876
2020-04-07 17:10:45 -05:00
Scott Frederick
257703f546 Polish integration test 2020-04-07 17:08:51 -05:00
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
2020-04-07 14:14:58 -07:00
Stephane Nicoll
b7ac83a830 Fix typo 2020-04-03 17:03:57 +02:00
Madhura Bhave
8659102650 Add configuration options for SAML authentication requests
Closes gh-20584
2020-04-02 13:19:56 -07:00
Phillip Webb
9795262dc1 Polish 2020-04-01 11:20:56 -07:00
Stephane Nicoll
960ab159e4 Document how to initialize a database with R2DBC
This commit adds a section to the reference guide on how to initialize
a database using R2DBC. 2 smoke tests are also added to validate this
behaviour with Flyway and Liquibase.

Closes gh-20742
2020-03-31 13:15:06 +02:00
Phillip Webb
16b5ea3414 Update copyright year of changed files 2020-03-23 14:13:33 -07:00
Stephane Nicoll
579a6ac254 Adapt tests for support for Java 14
See gh-20576
2020-03-19 14:54:33 +01:00
Stephane Nicoll
5893786cbb Polish "Add 'threads' configuration group for embedded containers"
See gh-19475
2020-03-19 13:13:45 +01:00
Stephane Nicoll
988d650304 Adapt server not running check
The upgrade to the Couchbase SDK v3 changed how errors are reported
when the cluster is not available. This commit updates the check to
look for the new exception in the hope a more solid check can be found
shortly.
2020-03-17 17:55:57 +01:00
Stephane Nicoll
abe43b2e83 Upgrade to Couchbase SDK v3
This commit upgrades to the Couchbase SDK v3 which brings the following
breaking changes:

* Bootstrap hosts have been replaced by a connection string and the
authentication is now mandatory.
* A `Bucket` is no longer auto-configured. The
`spring.couchbase.bucket.*` properties have been removed
* `ClusterInfo` no longer exists and has been replaced by a dedicated
API on `Cluster`.
* `CouchbaseEnvironment` no longer exist in favour of
`ClusterEnvironment`, the customizer has been renamed accordingly.
* The bootstrap-related properties have been removed. Users requiring
custom ports should supply the seed nodes and initialize a Cluster
themselves.
* The endpoints-related configuration has been consolidated in a
single IO configuration.

The Spring Data Couchbase provides an integration with the new SDK. This
leads to the following changes:

* A convenient `CouchbaseClientFactory` is auto-configured.
* Repositories are configured against a bucket and a scope. Those can
be set via configuration in `spring.data.couchbase.*`.
* The default consistency property has been removed in favour of a more
flexible annotation on the repository query methods instead. You can now
specify different query consistency on a per method basis.
* The `CacheManager` implementation is provided, as do other stores for
consistency so a dependency on `couchbase-spring-cache` is no longer
required.

See gh-19893

Co-authored-by: Michael Nitschinger <michael@nitschinger.at>
2020-03-17 17:00:09 +01:00
Andy Wilkinson
c917b61484 Reinstate leading / in default value for spring.liquibase.change-log
Unfortunately, while redundant for new applications, removing the
leading slash adversely affected existing application upon upgrades as
it caused Liquibase to re-apply every change log.

Closes gh-20177
2020-03-10 21:22:27 +00:00
dreis2211
9588188800 Use isEmpty() where possible
See gh-20370
2020-03-03 18:33:26 -05:00
Stephane Nicoll
80bb9c5064 Add smoke test for r2dbc support
See gh-19988

Co-authored-by: Mark Paluch <mpaluch@pivotal.io>
2020-02-25 09:29:36 -05:00
Stephane Nicoll
2ede9e63b9 Merge branch '2.1.x' into 2.2.x
Closes gh-20117
2020-02-14 10:20:33 +01:00
Stephane Nicoll
1e43537212 Fix broken smoke test
See gh-19926
2020-02-11 11:56:52 +01:00
Stephane Nicoll
25e87620d3 Fix broken smoke test
See gh-19926
2020-02-11 11:23:19 +01:00
dreis2211
aa0360e1ba Fix some deprecation warnings
See gh-20108
2020-02-10 15:28:30 +01:00
Stephane Nicoll
bde7bd0a1a Cleanup cassandra smoke test removal
See gh-19588
2020-02-09 08:25:07 +01:00
dreis2211
c6ee121b03 Set includeantruntime in Ant smoke tests
See gh-20047
2020-02-06 16:47:44 +01:00
dreis2211
e4a95a8047 Upgrade to Ivy 2.5.0
See gh-20022
2020-02-03 17:35:33 +01:00
dreis2211
326092b69e Upgrade to Ant 1.10.7
See gh-20002
2020-02-03 10:29:24 +01:00
Phillip Webb
2198614359 Fix incorrect spring replace due to " change 2020-01-22 17:11:31 -08:00
Phillip Webb
e0013454b5 Use parentheses when declaring dependencies
Update all dependencies declarations to use the form `scope(reference)`
rather than `scope reference`.

Prior to this commit we declared dependencies without parentheses unless
we were forced to add them due to an `exclude`.
2020-01-22 16:02:38 -08:00
Phillip Webb
0209cd3e4c Polish quote form used in Gradle scripts
Replace Gradle single quote strings with the double quote form
whenever possible. The change helps to being consistency to the
dependencies section where mostly single quotes were used, but
occasionally double quotes were required due to `${}` references.
2020-01-22 15:49:52 -08:00
Phillip Webb
b4229239ab Protect against NPE in server tests
Update `AbstractApplicationLauncher` to not attempt to shutdown
the process if startup fails.
2020-01-22 12:54:35 -08:00
Phillip Webb
bfd2ca7fd9 Polish Gradle expression references
Expand all expression `$` references to the full `${...}` form.
2020-01-21 18:33:33 -08:00
Andy Wilkinson
4486da8ef3 Use JavaExec to invoke Ant with required dependencies on its classpath
Previously, we were adding dependencies to Ant's ClassLoader within
Gradle. It is suspected that this was causing sporadic loader
contraint violations as types that Gradle itself uses (from Commons
Compress) were then available from two different ClassLoaders.

This commit reworks the Ant smoke test to use JavaExec and Ant's
launcher to run the build. This allows us to make the necessary
dependencies available to Ant in an isolated manner. The javac
invocation within Ant is now forked to allow it to find the tools jar
even when the build itself is running on a JRE.

Closes gh-19839
2020-01-21 12:13:03 +00:00
Phillip Webb
fd792cedaf Polish DisabledIfDockerUnavailable
Convert `DisabledIfDockerUnavailable` to be an annotation and make
it slightly less noisy.
2020-01-16 16:54:43 -08:00
Andy Wilkinson
443d1a6a21 Upgrade to Liquibase 3.8.5
Closes gh-19754
2020-01-15 15:09:58 +00:00
Andy Wilkinson
714a187d8f Rework dep mgmt again to avoid consumers picking up strict constraints
This paves the way for publishing Gradle module metadata once the
problem caused by snapshot versions and our two-step publication
process has been addressed.

See gh-19609
2020-01-15 12:33:18 +00:00
dreis2211
6e189900ef Fix deprecations in spring-boot-smoke-test-hateoas
See gh-19711
2020-01-15 09:04:56 +01:00
Andy Wilkinson
aefe52e4d0 Revert "Rework dep management to avoid consumers picking up strict constraints"
This reverts commit b34a311d02 as,
having disabled the publishing of Gradle's module metadata (4f75ab5),
the changes are no longer needed.

See gh-19609
2020-01-14 12:15:53 +00:00
Phillip Webb
862462b791 Update copyright year of changed files 2020-01-13 17:04:19 -08:00
Andy Wilkinson
abbad9973a Polish smoke tests' Gradle configuration 2020-01-13 20:07:05 +00:00
Andy Wilkinson
b34a311d02 Rework dep management to avoid consumers picking up strict constraints
Previously, enforcedPlatform dependencies were using to pull in the
constraints defined in spring-boot-dependencies and
spring-boot-parent and applied them strictly so that the constrained
version had to be used. This worked as intended in Spring Boot's own
build but incorrectly enforced those same strict version requirements
on external consumers of Spring Boot's modules.

This commit reworks how Spring Boot defines its internal dependency
management so that platform dependencies are exposed to external
consumers while enforced platform dependencies are using internally.

See gh-19609
2020-01-13 19:59:56 +00:00
Stephane Nicoll
ca1710ee56 Upgrade to Apache Cassandra 4.3.1
See gh-19588
2020-01-13 15:12:41 +01:00
Brian Clozel
18ccbf031a Remove validation starter from web starters
This commit removes the validation starter from the web and
webflux starters - we've reconsidered that choice since many were
not using this feature as part of their default web experience.

Thit commit also changes the default EL implementation for the
Jakarta implementation, aligning all servers on it and simplifying
dependency management (especially exclusions that were required
previously).

Closes gh-19550
2020-01-13 09:14:21 +01:00
Andy Wilkinson
b5ae8b0af5 Disable tests that use Docker when Docker is unavailable
Closes gh-19616
2020-01-10 20:35:18 +00:00
Andy Wilkinson
ce99db1902 Port the build to Gradle
Closes gh-19609
Closes gh-19608
2020-01-10 14:15:35 +00:00
Andy Wilkinson
10ba17c390 Merge branch '2.2.x'
Closes gh-19571
2020-01-08 11:44:40 +00:00
Andy Wilkinson
6d8f07d899 Merge branch '2.1.x' into 2.2.x
Closes gh-19570
2020-01-08 11:42:56 +00:00
Stephane Nicoll
50aa2b60e5 Simplify cache smoke tests
Closes gh-19325
2019-12-30 16:38:28 +01:00
Andy Wilkinson
8b4c6c2cf9 Merge branch '2.1.x' into 2.2.x
Closes gh-19415
2019-12-20 14:43:53 +00:00
Andy Wilkinson
f75c73eb7a Use Testcontainers in the launch script integration tests
Closes gh-19366
2019-12-20 13:15:32 +00:00
Stephane Nicoll
01753ab5a0 Merge branch '2.1.x' into 2.2.x
Closes gh-19358
2019-12-12 16:50:27 +01:00
dreis2211
ded476b5ec Reduce visibility of test methods
See gh-19294
See gh-19287
2019-12-05 11:29:17 +00:00
Madhura Bhave
d60067e81f Fix checkstyle 2019-12-03 19:36:20 -08:00
Madhura Bhave
68bc82cfc2 Ignore CannotLoadBeanClassException in config props validator
If the bean definition type contains a placeholder value, beanFactory.getType
can throw a CannotLoadBeanClassException. We can ignore this exception while
validating the bean definitions for constructor binding beans.

Fixes gh-19207
2019-12-03 18:21:53 -08:00
Andy Wilkinson
aad63873c1 Merge branch '2.1.x' into 2.2.x
Closes gh-19187
2019-11-29 09:12:36 +00:00
Stephane Nicoll
945ce2e6b9 Merge branch '2.1.x' into 2.2.x
Closes gh-19096
2019-11-22 10:24:44 +01:00
Andy Wilkinson
8c0773361a Enable configuration properties scanning in smoke tests that need it
Closes gh-18674
2019-11-04 16:39:59 +00:00
Jafer Khan
56840f32fe Fix package in AOP pointcut
See gh-18558
2019-10-13 08:06:13 +02:00
Madhura Bhave
40ac5b4ae2 Autoconfigure RSocket Security
Closes gh-18356
2019-10-02 13:54:07 -07:00
Madhura Bhave
22ed56ac52 Add auto-config for Spring Security's SAML support
Closes gh-18260

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
2019-10-02 11:23:21 -07:00
Andy Wilkinson
1222a73dcc Polish 2019-10-01 21:58:53 +01:00
Phillip Webb
262eb686d0 Merge branch '2.1.x'
Closes gh-18468
2019-10-01 11:34:56 -07:00
Brian Clozel
76faf31f57 Add RSocket smoke test 2019-09-30 11:08:43 +02:00
Phillip Webb
de393aba8b Upgrade deployment test to TomEE 8.0.0
Closes gh-18395
2019-09-28 22:04:16 -07:00
Madhura Bhave
8088e79f48 Merge branch '2.1.x'
Closes gh-18355
2019-09-25 09:45:23 -07:00
dreis2211
de6c38398e Fix checkstyle errors in SampleReactiveOAuth2ClientApplicationTests
See gh-18351
2019-09-25 13:55:34 +01:00
Phillip Webb
f1ec810caf Polish 2019-09-24 19:53:50 -07:00
Phillip Webb
323a78c4b9 Add property to migrate deprecated endoint IDs
Allow legacy actuator endpoint IDs that contain dots to be transparently
migrated to the new format. This update will allow Spring Cloud users
to proactively migrate from endpoints such as `hystrix.stream` to
`hystrixstream`.

Closes gh-18148
2019-09-24 19:53:50 -07:00
Madhura Bhave
0a70e33009 Merge branch '2.1.x'
Closes gh-18345
2019-09-24 10:28:54 -07:00
Phillip Webb
303974fde9 Add block pixel mode support for image banners
Add support for a `spring.banner.image.pixelmode` property which can
be set to `block` to use unicode block characters when rendering image
banners.

Closes gh-18301
2019-09-22 00:18:54 -07:00
Phillip Webb
4ef1e18216 Add ANSI 8-bit color image banner support
Update `ImageBanner` and `AnsiColors` to optionally support 8-bit
color output.

See gh-18264
2019-09-21 23:30:05 -07:00
Andy Wilkinson
79b5fd9d73 Polish "Allow the user that runs the app to be specified via an env var"
See gh-16973
2019-09-21 20:14:49 +01:00
Wagner Macedo
b57f35893c Allow the user that runs the app to be specified via an env var
See gh-16973
2019-09-21 17:57:20 +01:00
Andy Wilkinson
1b237de5f5 Use Awaitility in our own tests
Closes gh-18227
2019-09-13 20:50:14 +01:00
Vedran Pavic
479b4be5f5 Update Quartz smoke test to use JDBC job store
See gh-18196
2019-09-11 10:00:22 +02:00
Andy Wilkinson
3e56e00ca0 Align with repackaging of Neo4j's ServiceUnavailableException
See gh-18162
2019-09-06 13:03:40 +01:00
Andy Wilkinson
9ed6b92ecc Merge branch '2.1.x' 2019-09-02 17:22:09 +01:00
Andy Wilkinson
b8070a8339 Skip tests on Windows that exceed its file system's limitations 2019-09-02 17:18:20 +01:00
Andy Wilkinson
bbec7b0f37 Merge branch '2.1.x'
Closes gh-17994
2019-08-29 12:30:06 +01:00
Andy Wilkinson
9961647c7f Improve handling of reserved characters in MetaInfResourceManager
Previously, MetaInfResourceManager that we use with Undertow to serve
static resources from jar's META-INF/resources did not correctly
handle characters in the path that should be percent-encoded when
used in a URL.

This commit updates MetaInfResourceManager to encode the path before
it is used to create a URL. Prior to this encoding, encoded slashes
(%2F) are decoded as, unlike other encoded characters in the request's
URL, encoded slashes are not decoded prior to calling the
ResourceManager.

Fixes gh-17853
2019-08-29 12:13:40 +01:00
Madhura Bhave
2726540e76 Merge branch '2.1.x'
Closes gh-17980
2019-08-28 13:13:48 +05:30
Phillip Webb
e03f822c6d Add support for health indicator groups
Update the `HealthEndpoint` to support health groups. The
`HealthEndpointSettings` interface has been replaced with
`HealthEndpointGroups` which provides access to the primary group
as well as an optional set of additional groups.

Groups can be configured via properties and may have custom
`StatusAggregator` and `HttpCodeStatusMapper` settings.

Closes gh-14022

Co-authored-by: Stephane Nicoll <snicoll@pivotal.io>
2019-08-21 18:43:25 -07:00
Stephane Nicoll
4d21efcc0a Remove outdated comment in smoke tests
Closes gh-17741
2019-08-01 10:36:08 +02:00
Stephane Nicoll
78d2578c78 Polish "Add WebFlux Coroutines smoke test"
See gh-17701
2019-07-31 10:00:22 +02:00
Sebastien Deleuze
3dfb69841f Add WebFlux Coroutines smoke test
See gh-17701
2019-07-31 09:46:53 +02:00
Madhura Bhave
1b10ecbe1b Merge branch '2.1.x' 2019-07-29 11:08:38 -07:00
Johnny Lim
77a262c542 Polish
See gh-17691
2019-07-29 11:01:23 -07:00
Phillip Webb
6675f49334 Switch to multi-line security configuration
Now that we have lambda style security configuration we can further
improve readability by switching to one statement per line.

See gh-17525
2019-07-29 11:28:51 +01:00
Madhura Bhave
39a7b9da38 Switch to lambda style security configuration
Closes gh-17525
2019-07-26 14:41:49 -07:00
Madhura Bhave
4a309ed491 Merge branch '2.1.x' 2019-07-24 16:27:49 -07:00
Madhura Bhave
f13f96d705 Fix customizer for windows tests
JettyServerCustomizers beans do not get picked up automatically in 2.1.x

See gh-15553
2019-07-24 16:11:18 -07:00
Madhura Bhave
9bd1187f40 Merge branch '2.1.x'
Closes gh-17628
2019-07-24 13:39:45 -07:00
Madhura Bhave
bb85612723 Add concourse pipeline for Windows
Closes gh-15553
2019-07-24 13:25:54 -07:00
Phillip Webb
8bc780762a Merge branch '2.1.x' 2019-07-24 11:42:48 +01:00
Phillip Webb
fb1dd8fe93 Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
Phillip Webb
913e831f4e Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00