Commit Graph

404 Commits

Author SHA1 Message Date
Phillip Webb
beaf03a008 Update copyright year of changed files 2021-04-15 12:22:48 -07:00
Phillip Webb
6cc116b9fb Merge branch '2.4.x' 2021-04-13 21:06:55 -07:00
Phillip Webb
c0e12ce5a3 Merge branch '2.3.x' into 2.4.x 2021-04-13 21:06:36 -07:00
Phillip Webb
f29c707e6c Increase SampleSessionApplicationTests timeout
Increase timeout in `SampleSessionApplicationTests` to fix flaky local
builds.
2021-04-13 21:05:26 -07:00
dreis2211
4a1924ed73 Fix Spring Data Elasticsearch deprecations
See gh-26078
2021-04-13 20:05:48 +01:00
Andy Wilkinson
288e86d871 Revert "Work around micrometer-metrics/micrometer#2557"
This reverts commit 5e03612a53.

Closes gh-26003
2021-04-12 17:15:40 +01:00
Andy Wilkinson
5e03612a53 Work around micrometer-metrics/micrometer#2557
Closes gh-26002
2021-04-11 09:50:04 +01:00
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