Commit Graph

3127 Commits

Author SHA1 Message Date
Stephane Nicoll fc35975fcc Merge branch '3.1.x'
Closes gh-37028
2023-08-18 14:33:46 +02:00
Stephane Nicoll d9cc6e810f Merge branch '3.0.x' into 3.1.x
Closes gh-37027
2023-08-18 14:31:51 +02:00
Stephane Nicoll 1f6d0600b5 Merge branch '2.7.x' into 3.0.x
Closes gh-37026
2023-08-18 14:15:48 +02:00
Stephane Nicoll 6efd9ed0b0 Test Gradle plugin against Gradle 8.3
Closes gh-37025
2023-08-18 14:05:50 +02:00
Scott Frederick eb45aab712 Upgrade default CNB builders to Paketo Jammy
Closes gh-36689
2023-08-14 13:29:42 -05:00
Stephane Nicoll b0ac3a7835 Merge branch '3.1.x'
Closes gh-36973
2023-08-14 16:13:07 +02:00
Stephane Nicoll 5f2432aca2 Merge branch '3.0.x' into 3.1.x
Closes gh-36972
2023-08-14 16:12:55 +02:00
Stephane Nicoll 0271efae4c Polish "Avoid setting null compiler option"
See gh-36971
2023-08-14 16:07:25 +02:00
omaryaya a0ad00c542 Avoid setting null compiler option
See gh-36971
2023-08-14 16:06:34 +02:00
Stephane Nicoll 70ea830277 Merge branch '3.1.x'
Closes gh-36967
2023-08-14 15:14:59 +02:00
Stephane Nicoll 0cf21b21ca Merge branch '3.0.x' into 3.1.x
Closes gh-36966
2023-08-14 15:14:49 +02:00
normandra 62902a798d Fix typo
See gh-36964
2023-08-14 15:01:39 +02:00
Stephane Nicoll e073d14950 Merge branch '3.1.x'
Closes gh-36960
2023-08-14 11:37:14 +02:00
Stephane Nicoll b903df7327 Merge branch '3.0.x' into 3.1.x
Closes gh-36959
2023-08-14 11:37:07 +02:00
Stephane Nicoll 3ae65e073c Use Aether to download JUnit platform launcher
This commit updates our maven plugin to use aether directly, rather than
the now deprecated maven features.

Closes gh-36724
2023-08-14 11:23:43 +02:00
Phillip Webb 8edec21a6f Update copyright year of changed files 2023-08-13 20:44:44 -07:00
Phillip Webb 407fa780c8 Polish 2023-08-13 20:44:44 -07:00
Phillip Webb d73d8f8e4f Merge branch '3.1.x' 2023-08-13 19:15:56 -07:00
Phillip Webb 848a61a3a8 Merge branch '3.0.x' into 3.1.x 2023-08-13 18:50:33 -07:00
Phillip Webb a0089c5c76 Merge branch '2.7.x' into 3.0.x 2023-08-13 18:44:36 -07:00
Phillip Webb 46773dd5df Update copyright year of changed files 2023-08-13 18:19:05 -07:00
Andy Wilkinson d1449fb97c Make milestone plugin dependencies available to Maven integration tests 2023-08-09 21:20:40 +01:00
Andy Wilkinson 1e28ebd8aa Merge branch '3.1.x'
Closes gh-36823
2023-08-09 09:25:38 +01:00
Andy Wilkinson 9f2e592b9b Merge branch '3.0.x' into 3.1.x
Closes gh-36822
2023-08-09 09:21:02 +01:00
Andy Wilkinson 4062ba6d28 Merge branch '2.7.x' into 3.0.x
Closes gh-36821
2023-08-09 08:25:41 +01:00
Andy Wilkinson 68baa6e7df Make section IDs consistent in Maven Plugin docs and enforce it
Closes gh-26619
2023-08-09 08:06:38 +01:00
Moritz Halbritter 0588f9bf37 Use Deque instead of Stack 2023-08-08 14:06:31 +02:00
Moritz Halbritter e4484c3db5 Use constants in SpringBootAotPlugin 2023-08-08 13:12:48 +02:00
Moritz Halbritter 62fb45f75f Replace contains/put/get pattern with computeIfAbsent 2023-08-08 13:12:47 +02:00
Moritz Halbritter 7bb337aeb1 Polish tests 2023-08-08 13:12:47 +02:00
Moritz Halbritter ed9169501e Polish 2023-08-08 13:12:47 +02:00
Andy Wilkinson b1d26fe961 Revert "Upgrade default CNB builders to Paketo Jammy"
This reverts commit 6506208d29. The
upgrade to the Jammy builder was causing
failsWhenBuildImageIsInvokedOnMultiModuleProjectWithBuildImageGoal to
hang on CI.

See gh-36689
2023-08-07 12:10:27 +01:00
Andy Wilkinson 579aac055d Upgrade to Maven Shade Plugin 3.5.0
Closes gh-36752
2023-08-04 19:27:49 +01:00
Andy Wilkinson 1368593199 Upgrade to Maven Resolver 1.9.14
Closes gh-36751
2023-08-04 19:27:46 +01:00
Andy Wilkinson 0c7c7ac8a9 Upgrade to Maven 3.9.4
Closes gh-36747
2023-08-04 19:27:42 +01:00
Andy Wilkinson ce14c70fbd Upgrade to Maven Resolver 1.9.14
Closes gh-36731
2023-08-04 13:49:32 +01:00
Andy Wilkinson 64463fe7ec Upgrade to Maven 3.9.4
Closes gh-36729
2023-08-04 13:49:31 +01:00
Andy Wilkinson 14cf2335ee Upgrade to Maven Resolver 1.9.14
Closes gh-36719
2023-08-04 11:49:11 +01:00
Andy Wilkinson 0457519fab Upgrade to Maven 3.9.4
Closes gh-36717
2023-08-04 11:49:10 +01:00
Andy Wilkinson 2c7fe47529 Upgrade to Maven Resolver 1.9.14
Closes gh-36707
2023-08-04 08:22:56 +01:00
Andy Wilkinson 59bd6879a2 Upgrade to Maven 3.9.4
Closes gh-36705
2023-08-04 08:22:55 +01:00
Scott Frederick ecdb9f6b07 Add support for CNB platform API 0.12
Closes gh-36712
2023-08-03 15:57:36 -05:00
Moritz Halbritter 1a8b8ce26e Revert "Revise synchronized blocks"
This reverts commit 497bbf9c2d.
2023-08-03 17:26:31 +02:00
Stephane Nicoll f34dc05452 Rename run goal's directories property to additionalClasspathElements
This clarifies what used to be called "directories" as both a directory
and a jar file can be provided. A directory with `/*` would also load
all the jar files from that directory.

The "directories" property has been deprecated as a result.

Closes gh-35179
2023-08-03 16:22:07 +02:00
Moritz Halbritter 497bbf9c2d Revise synchronized blocks
- Replace synchronized with Lock when guarding long-running operations
- Remove unnecessary synchronization in FileSystemWatcher
- Replace HashMap with ConcurrentHashMap in Restarter
- Remove unnecessary locking on AtomicBoolean in
  SpringApplicationBuilder
- Remove unnecessary locking in SimpleFormatter

Closes gh-36670
2023-08-03 09:23:46 +02:00
Scott Frederick 6506208d29 Upgrade default CNB builders to Paketo Jammy
Closes gh-36689
2023-08-02 19:06:16 -05:00
Andy Wilkinson b02c1877fc Fix configIsReadWithProvidedContext on Windows
See gh-36445
2023-08-02 14:59:47 +01:00
Moritz Halbritter 5d9d0f43b6 Implement AssertJ assertions for SimpleAsyncTaskExecutor 2023-08-02 10:51:09 +02:00
Scott Frederick 2e50d11d86 Add since attribute to @DeprecatedConfigurationProperty annotation
Closes gh-36482
2023-08-01 16:13:22 -05:00
Andy Wilkinson 21ce7a08fc Polish "Polish"
See gh-36620
2023-07-28 11:40:34 +01:00
Johnny Lim 5a205dbfd1 Polish
See gh-36620
2023-07-28 11:35:33 +01:00
Andy Wilkinson e3eb2893f0 Merge branch '3.1.x'
Closes gh-36623
2023-07-28 10:11:24 +01:00
Andy Wilkinson 3ba5f501ea Merge branch '3.0.x' into 3.1.x
Closes gh-36622
2023-07-28 10:10:58 +01:00
Andy Wilkinson 6b6e8b3fd4 Merge branch '2.7.x' into 3.0.x
Closes gh-36621
2023-07-28 10:10:32 +01:00
Christoph Dreis 42e89079d3 Enable debug option for Kotlin in Gradle Plugin tests
See gh-36617
2023-07-28 10:09:59 +01:00
Stephane Nicoll 150526a6a0 Merge branch '2.7.x' into 3.0.x
Closes gh-36611
2023-07-27 14:52:37 +02:00
Stephane Nicoll 87554fb4dc Add test for RabbitMQ smoke test
Closes gh-36610
2023-07-27 14:51:50 +02:00
Stephane Nicoll 4d708641b3 Test Gradle plugin against Gradle 8.2.1
Closes gh-36548
2023-07-25 11:52:48 +02:00
Stephane Nicoll 26ff1a2df6 Merge branch '3.1.x'
Closes gh-36551
2023-07-25 11:52:14 +02:00
Stephane Nicoll 9889adfa43 Merge branch '3.0.x' into 3.1.x
Closes gh-36550
2023-07-25 11:52:03 +02:00
Stephane Nicoll d30afee06e Merge branch '2.7.x' into 3.0.x
Closes gh-36549
2023-07-25 11:51:46 +02:00
Stephane Nicoll a350ede711 Test Gradle plugin against Gradle 8.2.1
Closes gh-36548
2023-07-25 11:41:48 +02:00
Scott Frederick 2452958f7b Merge branch '3.1.x'
Closes gh-36486
2023-07-24 15:10:48 -05:00
Scott Frederick bf08cc25df Use DockerImageNames in Docker compose integration tests
Closes gh-36485
2023-07-24 11:00:20 -05:00
Andy Wilkinson 07a7ff473b Merge branch '3.1.x'
Closes gh-36495
2023-07-21 16:47:35 +01:00
Andy Wilkinson 519966e230 Merge branch '3.0.x' into 3.1.x
Closes gh-36494
2023-07-21 16:47:24 +01:00
Andy Wilkinson 84c1c5ccaa Polish "Don't run process-aot or process-test-aot on reactor projects"
See gh-35377
2023-07-21 16:39:50 +01:00
Urs Keller 0308de1672 Don't run process-aot or process-test-aot on reactor projects
See gh-35377
2023-07-21 16:39:24 +01:00
Andy Wilkinson 12254b11ce Don't run KotlinPluginActionITs on JVMs not support by Gradle 7.6 2023-07-21 16:24:32 +01:00
Andy Wilkinson 2029117999 Upgrade to Kotlin 1.9.0
Closes gh-36362
2023-07-19 20:27:41 +01:00
Scott Frederick 4393a2244c Use Docker CLI context to determine daemon host address for image building
Configuration files managed by the Docker CLI are now used to determine
the host address of the Docker daemon used when building images using
buildpacks when a host address is not configured with environment
variables or build tool plugin configuration.

Closes gh-36445
2023-07-18 13:21:01 -06:00
Stephane Nicoll 62c9936abf Merge branch '3.1.x'
Closes gh-36428
2023-07-17 15:25:10 +02:00
Stephane Nicoll bb16ed1245 Merge branch '3.0.x' into 3.1.x
Closes gh-36427
2023-07-17 15:24:58 +02:00
Stephane Nicoll 3586bfb629 Merge branch '2.7.x' into 3.0.x
Closes gh-36426
2023-07-17 15:22:43 +02:00
Stephane Nicoll 09e5d38348 Polish "Replace @CsvSource with @ValueSource where feasible"
See gh-36062
2023-07-17 15:16:27 +02:00
Yanming Zhou acb7acd5d9 Replace @CsvSource with @ValueSource where feasible
@ValueSource is more appropriate for single parameter.

See gh-36062
2023-07-17 15:16:26 +02:00
Andy Wilkinson fc8a8d363f Polish 2023-07-05 15:50:32 +01:00
Andy Wilkinson ce8253ea95 Merge branch '3.1.x'
Closes gh-36238
2023-07-05 09:51:35 +01:00
Andy Wilkinson c9f8d92656 Merge branch '3.0.x' into 3.1.x
Closes gh-36237
2023-07-05 09:47:43 +01:00
Johnny Lim 0fa58c04e7 Use Stream.toList()
See gh-36167
2023-07-05 09:38:19 +01:00
Andy Wilkinson 8ed160a144 Merge branch '3.1.x'
Closes gh-36228
2023-07-05 08:53:33 +01:00
Andy Wilkinson 480049ef5b Merge branch '3.0.x' into 3.1.x
Closes gh-36227
2023-07-05 08:53:15 +01:00
Andy Wilkinson cbc0f7117f Merge branch '2.7.x' into 3.0.x
Closes gh-36226
2023-07-05 08:52:55 +01:00
Andy Wilkinson fe08c70973 Test Gradle plugin against Gradle 8.2
Closes gh-36207
2023-07-05 08:13:24 +01:00
Andy Wilkinson 9985c845f2 Adapt to Framework changes missed due to predictive test selection
See gh-36198
2023-07-04 12:39:52 +01:00
Andy Wilkinson 5a9ca67fba Start building against Spring Framework 6.2.0-M2 snapshots
See gh-36198
2023-07-04 10:20:33 +01:00
Phillip Webb 1bf334ae0f Polish config metadata changelog generator
See gh-21486
2023-07-01 00:30:26 +01:00
Andy Wilkinson 32b7b312f0 Add config metadata changelog generator to main build
Closes gh-21486
2023-06-30 10:26:33 +01:00
Andy Wilkinson 6d8ca7286a Merge branch '3.1.x'
Closes gh-36128
2023-06-30 08:26:26 +01:00
Andy Wilkinson a268c6433e Merge branch '3.0.x' into 3.1.x
Closes gh-36127
2023-06-30 08:26:12 +01:00
Andy Wilkinson 93f8bd2170 Merge branch '2.7.x' into 3.0.x
Closes gh-36126
2023-06-30 08:25:53 +01:00
Andy Wilkinson b32697b3ce Add support to @ClassPathExclusions for excluding packages
Closes gh-36120
2023-06-29 16:53:36 +01:00
Scott Frederick c32877493c Merge branch '3.1.x'
Closes gh-36055
2023-06-23 15:47:00 -06:00
Scott Frederick b9b314622f Merge branch '3.0.x' into 3.1.x
Closes gh-36054
2023-06-23 15:46:44 -06:00
Scott Frederick 4a3abdd7c3 Merge branch '2.7.x' into 3.0.x
Closes gh-36053
2023-06-23 15:46:27 -06:00
Johnny Lim 59d4bf97a1 Add Javadoc since to ImageReference.inTaglessForm()
See gh-36048
2023-06-23 15:45:29 -06:00
Scott Frederick 90dd7449bb Merge branch '3.1.x'
Closes gh-36051
2023-06-23 15:20:25 -06:00
Scott Frederick 92b2573a60 Merge branch '3.0.x' into 3.1.x
Closes gh-36050
2023-06-23 15:20:06 -06:00
Scott Frederick eeeb2ad72a Merge branch '2.7.x' into 3.0.x
Closes gh-36049
2023-06-23 15:19:44 -06:00
Johnny Lim 4a2c9d99dc Remove redundant Files.delete() calls in tests
See gh-35986
2023-06-23 15:14:59 -06:00
Andy Wilkinson b645eb32ac Remove deprecated code that was to be removed in 3.2
Closes gh-36034
2023-06-23 18:14:22 +01:00
Andy Wilkinson fc403f4f18 Merge branch '3.1.x' 2023-06-21 13:15:06 +01:00
Andy Wilkinson d3522a78a8 Merge branch '3.0.x' into 3.1.x 2023-06-21 13:14:46 +01:00
Andy Wilkinson 641f00f24c Disable test when Java version is too high
Gradle 7.3.3 does not support Java 20 so the test that verifies that
the plugin fails fast when running on a version of Gradle that it
does not support needs to be disabled on Java 20 and later.

See gh-35931
2023-06-21 13:12:20 +01:00
Andy Wilkinson b394553b30 Merge branch '3.1.x' 2023-06-21 12:11:06 +01:00
Andy Wilkinson 660dbb9afd Fix Maven-built native images with Docker Compose dependency
Previously, we tried to prevent spring-boot-docker-compose from
causing problems with AOT and native images by excluding it from
the AOT processing classpath. This allowed AOT processing to
succeed. We cannot apply the same exclusion to the native image
classpath so spring-boot-docker-compose was still included in the
native image. This results in a failure at runtime due to missing
reflection hints.

This commit reverts that changes that excluded
spring-boot-docker-compose from the AOT processing classpath. This
allows AOT processing to generate reflection hints but reintroduces
the failure caused by the connection details bean definitions using
an instance supplier callback. To overcome this problem we disable
DockerComposeLifecycleManager during AOT processing and in a native
image. This ensures that no attempt is made to call docker compose up
and no connection details beans are defined.

Fixes gh-35676
2023-06-21 11:44:30 +01:00
Andy Wilkinson 818f096890 Merge branch '3.1.x' 2023-06-21 10:46:35 +01:00
Andy Wilkinson 853caf9a59 Do not exclude DevTools from Maven AOT processing classpath
When excluded from the AOT processing classpath, a reflection hint
for DevTools' RestartScopeInitializer that's registered in
spring.factories is not generated. When the native image is compiled
we have no control over its classpath so DevTools is included. This
causes a failure at runtime as RestartScopeInitializer cannot be
loaded due to the missing reflection hint.

Until we have control over the native image classpath, we need to
include DevTools on the AOT processing classpath and then rely on
DevTools disabling itself in a native image which it already does.

Fixes gh-35853
2023-06-21 10:36:38 +01:00
Andy Wilkinson ca5bd37e81 Upgrade to Spring Framework 6.1.0-M1
Closes gh-35977
Closes gh-35980
2023-06-19 18:12:16 +01:00
Phillip Webb 8afbff3f28 Merge branch '3.1.x' 2023-06-16 16:17:59 -07:00
Phillip Webb 3d6c6a6611 Merge branch '3.0.x' into 3.1.x
Closes gh-35934
2023-06-16 16:15:04 -07:00
Phillip Webb af846da69b Merge branch '2.7.x' into 3.0.x
Closes gh-35933
2023-06-16 16:14:52 -07:00
Phillip Webb 23eb7ec1f8 Merge branch '3.1.x' 2023-06-16 14:35:44 -07:00
Phillip Webb 5d6a507142 Merge branch '3.0.x' into 3.1.x 2023-06-16 14:35:23 -07:00
Phillip Webb 48e13af8c4 Merge branch '2.7.x' into 3.0.x 2023-06-16 14:34:54 -07:00
Scott Frederick fe927f0e06 Merge branch '3.1.x' 2023-06-16 16:11:00 -05:00
Scott Frederick e8301a065f Merge branch '3.0.x' into 3.1.x
Closes gh-35932
2023-06-16 16:10:48 -05:00
Scott Frederick fbba2df7bf Enable Gradle plugin tests on Java 20
Closes gh-35931
2023-06-16 16:10:24 -05:00
Andy Wilkinson b9c2c289b3 Start working on Spring Boot 3.2
This commit also disables the creation of forward merge issues
when merging into main. Forward merge issues will be re-enabled
once 3.1.1 has been released.
2023-06-08 17:22:21 +01:00
Andy Wilkinson cdcebe452c Polish "Test Gradle plugin against Gradle 8.2-rc-1"
See gh-35708
2023-06-05 10:59:30 +01:00
Andy Wilkinson 45ce18e1c7 Polish "Test Gradle plugin against Gradle 8.2-rc-1"
See gh-35708
2023-06-02 15:35:34 +01:00
Andy Wilkinson d6192a0fa1 Merge branch '3.0.x'
Closes gh-35708
2023-06-02 15:18:13 +01:00
Andy Wilkinson 5a793a6d49 Merge branch '2.7.x' into 3.0.x
Closes gh-35707
2023-06-02 15:17:35 +01:00
Andy Wilkinson 5623fe3b94 Test Gradle plugin against Gradle 8.2-rc-1
Closes gh-35699
2023-06-02 13:23:36 +01:00
kitbolourchi 1ac6e9ebe1 Upgrade Kafka image used in integration tests
See gh-35625
2023-05-24 16:12:08 -05:00
Stephane Nicoll dcb97594c3 Merge branch '3.0.x'
Closes gh-35618
2023-05-24 13:30:54 +02:00
Stephane Nicoll 44c2090092 Polish "Fix description of build-image[-no-fork] Maven plugin goals"
See gh-35609
2023-05-24 13:28:01 +02:00
Thomas Kåsene e84025b1b8 Fix description of build-image[-no-fork] Maven plugin goals
See gh-35609
2023-05-24 13:24:37 +02:00
Phillip Webb 1ec78e5437 Add devtools and docker-compose to test maven repository
See gh-35548
2023-05-18 15:15:16 -07:00
Phillip Webb c2961a1e4a Exclude docker-compose and devtools during AOT processing
Update `ProcessAotMojo` so that `spring-boot-docker-compose` and
`spring-boot-devtools` are not included on the classpath.

Fixes gh-35548
2023-05-18 11:21:13 -07:00
Phillip Webb ae90add7c7 Polish 2023-05-16 14:04:48 -07:00
Andy Wilkinson 37cc6b6a70 Merge branch '3.0.x'
Closes gh-35444
2023-05-16 09:27:30 +01:00
Andy Wilkinson c39a37cd23 Exclude developmentOnly dependences from AOT processing classpaths
Fixes gh-35433
2023-05-16 09:26:20 +01:00
Phillip Webb e3ed87d165 Merge branch '3.0.x' 2023-05-12 13:21:52 -07:00
Phillip Webb 92e420a098 Merge branch '2.7.x' into 3.0.x 2023-05-12 13:14:12 -07:00
Phillip Webb 57e45dfb21 Update copyright year of changed files 2023-05-12 13:01:43 -07:00
Phillip Webb ef4b09718c Fix loading of PKCS#8 PEM encoded EC and DSA keys for buildpack
Polish and port support for PKCS#8 PEM encoded EC and DSA keys to
the buildpack code.

See gh-35322
2023-05-12 13:01:30 -07:00
Phillip Webb e9c4a5d663 Polish 2023-05-12 13:01:30 -07:00
Moritz Halbritter e930801eb1 Separate tag in the Docker API tag call
Closes gh-35358
2023-05-11 09:52:52 +02:00
Moritz Halbritter d00e070cdb Separate tag in the Docker API tag call
Closes gh-35358
2023-05-11 09:52:45 +02:00
Moritz Halbritter 4eef8d5a53 Separate tag in the Docker API tag call
Closes gh-35358
2023-05-11 09:52:41 +02:00
Johnny Lim ff9fd1abeb Polish
See gh-35185
2023-05-10 08:31:36 +02:00
Moritz Halbritter 05add58976 Merge branch '3.0.x'
Closes gh-35373
2023-05-10 08:23:35 +02:00
Moritz Halbritter 42cc84070b Merge branch '2.7.x' into 3.0.x
Closes gh-35372
2023-05-10 08:23:27 +02:00
Moritz Halbritter 52789cb191 Fix anchors in Maven plugin documentation
Closes gh-35371
2023-05-10 08:21:44 +02:00
Andy Wilkinson 93c3116b3a Fix failsGracefullyWhenNoTestMainMethodIsFound on Windows 2023-05-09 16:56:18 +01:00
Moritz Halbritter a4092fb396 Remove HTML tags from TestRunMojo javadoc
Closes gh-35349
2023-05-09 10:14:55 +02:00
Scott Frederick cf180fa1cc Merge branch '2.7.x' into 3.0.x
Closes gh-35243
2023-05-05 16:07:23 -05:00
Scott Frederick 5d91c24f63 Update Couchbase image tag used in tests
Closes gh-35228
2023-05-05 14:45:58 -05:00
Andy Wilkinson 07a11045d9 Merge branch '3.0.x'
Closes gh-35328
2023-05-05 17:35:50 +01:00
Andy Wilkinson fd864c35aa Improve mapping of resolved artifacts to dependency coordinates
Closes gh-31216
2023-05-05 17:32:59 +01:00
Moritz Halbritter 441ed30ee4 Polish "Replace Mockito argument captors with assertArg"
Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>

See gh-35015
2023-05-05 15:41:31 +02:00
Marc Leroux b61834c92d Replace Mockito argument captors with assertArg
See gh-35015
2023-05-05 11:34:55 +02:00
Scott Frederick 1143396531 Add smoke tests to verify Couchbase SSL connections
See gh-34811
2023-05-04 17:09:52 -05:00
Andy Wilkinson 19d7973776 Add bootTestRun to run app using test source set output and classpath
Closes gh-35248
2023-05-04 15:27:10 +01:00
Andy Wilkinson e43998615c Add a test-run goal to the Maven plugin
Closes gh-35202
2023-05-04 15:06:03 +01:00
Moritz Halbritter 9b5a2643cc Polish "Add service connection from Testcontainers Zipkin"
See gh-35107
2023-05-03 13:09:50 +02:00
Phillip Webb d86e82d026 Merge branch '3.0.x' 2023-05-02 15:42:05 -07:00
Phillip Webb 2c27ec5b7b Merge branch '2.7.x' into 3.0.x 2023-05-02 15:42:00 -07:00
Phillip Webb b3226c55d2 Polish 2023-05-02 15:41:55 -07:00
Scott Frederick 23ae91b008 Add native image manifest entry
A manifest entry `Spring-Boot-Native-Processed: true` is added to the
jar manifest by the Maven or Gradle plugin when the jar has been built
for use in a native image. With the Gradle plugin, this is done in
reaction to the GraalVM Native Image Plugin being applied to the
project. With the Maven plugin, this is done when the `native` profile
is applied to the build.
2023-05-02 15:11:49 -05:00
Scott Frederick 5ac6a3d90b Add smoke test to verify MongoDB SSL connections
See gh-35042
2023-05-02 15:11:09 -05:00
Scott Frederick 3bb271e320 Add smoke test to verify Redis SSL connection
See gh-34815
2023-05-02 13:52:50 -05:00
Moritz Halbritter 9d50d92b9c Merge branch '3.0.x' 2023-05-02 16:36:49 +02:00
Moritz Halbritter 1f4a337ad2 Merge branch '2.7.x' into 3.0.x 2023-05-02 16:17:50 +02:00
Moritz Halbritter 091d6204cb Disable build image integration tests on aarch64 linux and mac
See gh-35229
2023-05-02 15:38:42 +02:00
Moritz Halbritter 7c725a7560 Polish DockerImageNames 2023-05-02 15:01:45 +02:00
Andy Wilkinson ce7bf0d0af Merge branch '3.0.x'
Closes gh-35197
2023-04-28 18:06:37 +01:00
Andy Wilkinson 4581c25e20 Merge branch '2.7.x' into 3.0.x
Closes gh-35196
2023-04-28 18:06:12 +01:00
Andy Wilkinson de2df9311c Test Gradle plugin against Gradle 8.1.1
Closes gh-35195
2023-04-28 18:05:06 +01:00
Andy Wilkinson b64adbc34b Fix disabled conditions on AbstractDockerComposeIntegrationTests 2023-04-20 16:12:36 +01:00
Andy Wilkinson d4f857683d Polish formatting of DockerImageNames 2023-04-19 14:22:12 +01:00
Stephane Nicoll a323bd90a8 Polish "Reintroduce support for ActiveMQ"
See gh-35048
2023-04-19 13:08:14 +02:00
Andy Wilkinson 651f341385 Fix compatibility of Redpanda Docker image name
See 3e010b12
2023-04-18 19:52:17 +01:00
Phillip Webb 3e010b1230 Fetch redpanda directly from docker hub
Attempt to avoid rate limiting issues by fetching redpanda directly
from docker hub.

See gh-34780
2023-04-18 10:51:46 -07:00
Andy Wilkinson 0da209db08 Polish "Add support for Oracle R2DBC Service Connection"
See gh-34852
2023-04-18 13:47:46 +01:00
Eddu Melendez f4bcf99d30 Add service connection from Testcontainers Redpanda
Redpanda (https://redpanda.com/) is Kafka-compatible and
Testcontainers provides a module. This commit adds support for
creating KafkaConnectionDetails from a
@ServiceConnection-annotated RedpandaContainer.

See gh-34780
2023-04-18 12:49:25 +01:00
Stephane Nicoll 16563a6a0a Upgrade to Native Build Tools Plugin 0.9.21
Closes gh-35055
2023-04-18 13:45:53 +02:00
Andy Wilkinson 2b4f565b76 Merge branch '3.0.x'
Closes gh-35038
2023-04-17 17:52:11 +01:00
Andy Wilkinson df93b39f60 Merge branch '2.7.x' into 3.0.x
Closes gh-35037
2023-04-17 17:51:53 +01:00
Andy Wilkinson d6bbbb8bac Merge branch '3.0.x'
Closes gh-35036
2023-04-17 17:49:55 +01:00
Andy Wilkinson 284e4d6f6d Merge branch '2.7.x' into 3.0.x
Closes gh-35035
2023-04-17 17:46:33 +01:00
Andy Wilkinson 88ec47ff2b Test Gradle plugin against Gradle 8.1
Closes gh-35034
2023-04-17 17:38:28 +01:00
Andy Wilkinson 751fc9fe54 Fix includeProjectDependencies with Kotlin DSL 2023-04-17 17:35:15 +01:00
Mortitz Halbritter 24d1620a93 Add 'excludeDockerCompose' Maven property
Update `AbstractPackagerMojo` so that the docker-compose module
can be filtered from the packaged jar.

Co-authored-by: Phillip Webb <pwebb@vmware.com>
Co-authored-by: "Andy Wilkinson <wilkinsona@vmware.com>
2023-04-17 01:00:16 -07:00
Phillip Webb 4ae24e404e Add @DisabledIfProcessUnavailable test support annotation
Add `@DisabledIfProcessUnavailable` annotation that can disable
a test if a process isn't available to execute.

Closes gh-35023
2023-04-17 01:00:04 -07:00
Andy Wilkinson d5756db54c Stop using Native Build Tools "requiredVersion" configuration option
Closes gh-34840
2023-04-14 11:55:20 +01:00
Andy Wilkinson b8ec7d291d Upgrade to Jackson Bom 2.15.0-rc2
Closes gh-34980
2023-04-14 11:55:20 +01:00
Phillip Webb e9a198a68f Merge branch '3.0.x' 2023-04-12 22:16:35 -07:00
Phillip Webb 9b6a2a59a1 Set offset when checking date in tests
Update integration tests that check the current date so that the offset
is set for the current time before comparing results.

See gh-34786
2023-04-12 22:13:08 -07:00
Phillip Webb 8d2f550f8c Merge branch '3.0.x' 2023-04-10 21:14:42 -07:00
Phillip Webb 3ba3558cff Merge branch '2.7.x' into 3.0.x 2023-04-10 21:14:34 -07:00
Phillip Webb 3e9a136143 Polish gradle formatting 2023-04-10 21:14:09 -07:00
Phillip Webb 463701db18 Merge branch '3.0.x' 2023-04-10 16:22:57 -07:00
Phillip Webb d442bfbeff Polish 2023-04-10 16:22:11 -07:00
Scott Frederick 56bc6d2fa0 Allow image application directory to be configurable
An `applicationDirectory` option on the Maven
`spring-boot:build-image` goal and the Gradle `bootBuildImage` task
can be configured to set the location that will be used to upload
application contents to the builder image, and will contain the
application contents in the generated image.

Closes gh-34786
2023-04-07 14:00:00 -05:00
Scott Frederick 5817c8441d Allow image Created date to be configurable
A `createdDate` option on the Maven `spring-boot:build-image` goal
and the Gradle `bootBuildImage` task can be used to set the `Created`
metadata field on a generated OCI image to a specified date or to
the current date.

Closes gh-28798
2023-04-06 15:08:34 -05:00
Stephane Nicoll 5c1c0a2b2e Upgrade to Kotlin 1.8.20
Closes gh-34879
2023-04-06 16:25:23 +02:00
Andy Wilkinson 29193c4b9e Merge branch '3.0.x'
Closes gh-34789
2023-03-28 09:33:55 +01:00
Andy Wilkinson 4b58eefe7b Merge branch '2.7.x' into 3.0.x
Closes gh-34788
2023-03-28 09:33:41 +01:00
Andy Wilkinson 4705e82a6e Note that optional dependencies are included by run and repackage
Closes gh-34636
2023-03-28 09:33:06 +01:00
Andy Wilkinson 95f45eab1f Create service connections from Testcontainers-managed containers
Building upon the auto-configuration support for service connections,
this commit adds support for deriving connection details from a
Testcontainers-managed container. Several service-specific
annotations have been introduced. These annotations can be used on a
container field to indicate that it is a source of the details for
a service connection.

See gh-34658

Co-Authored-By: Phillip Webb <pwebb@vmware.com>
Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
2023-03-24 10:04:21 +00:00
Scott Frederick 9fa5aa3649 Merge branch '3.0.x'
Closes gh-
2023-03-21 14:56:16 -05:00
Scott Frederick 6a6f4a3928 Merge branch '2.7.x' into 3.0.x
Closes gh-34704
2023-03-21 14:56:02 -05:00
Scott Frederick ad680ed4ea Polish "Add documentation for publishing images with Maven command line"
See gh-34517
2023-03-21 13:30:50 -05:00
Anthony Dahanne 21978da02a Add documentation for publishing images with Maven command line
See gh-34517
2023-03-21 13:30:50 -05:00
Andy Wilkinson 7283493031 Upgrade to Maven Help Plugin 3.4.0
Closes gh-34687
2023-03-21 12:04:36 +00:00
Andy Wilkinson bfeeda6fbc Merge branch '3.0.x'
Closes gh-34601
2023-03-14 14:40:50 +00:00
Andy Wilkinson 220c4b671b Merge branch '2.7.x' into 3.0.x
Closes gh-34600
2023-03-14 14:40:26 +00:00
Johnny Lim 00f388fa6f Polish Javadoc since tags for gh-34324
See gh-34587
2023-03-14 14:39:10 +00:00
Scott Frederick dab8b07302 Merge branch '3.0.x'
Closes gh-34496
2023-03-06 15:31:09 -06:00
Scott Frederick 29ad690d56 Merge branch '2.7.x' into 3.0.x
Closes gh-34495
2023-03-06 15:30:55 -06:00
Scott Frederick 7730eee439 Use image manifest when exporting layers
A tar archive of a Docker image contains a `mainfest.json` file that
lists the path to each embedded tar file containing the contents of a
layer in the image. This manifest file should be used to identify the
layer files instead of relying on file naming conventions and
assumptions on the directory structure that are not consistent
between container engine implementations.

Fixes gh-34324
2023-03-06 15:13:08 -06:00
Andy Wilkinson 185dc18126 Merge branch '3.0.x'
Closes gh-34488
2023-03-06 10:53:52 +00:00
Andy Wilkinson fab4230246 Merge branch '2.7.x' into 3.0.x
Closes gh-34487
2023-03-06 10:53:32 +00:00
Andy Wilkinson 27ba20f310 Test Gradle plugin against Gradle 8.0.2
Closes gh-34486
2023-03-06 10:21:21 +00:00
Johnny Lim 390629eefd Add Javadoc since to BuildInfoMojo.skip
See gh-34482
2023-03-06 10:05:07 +00:00
Scott Frederick 2602ce48b8 Merge branch '3.0.x'
Closes gh-34476
2023-03-03 16:50:55 -06:00
Scott Frederick 17755e5376 Merge branch '2.7.x' into 3.0.x
Closes gh-34475
2023-03-03 16:49:45 -06:00
Scott Frederick 10d71f5645 Document how to get socket location for podman configuration
Closes gh-34435
2023-03-03 16:47:48 -06:00
Phillip Webb 91ce2d6e1e Merge branch '3.0.x'
Closes gh-34473
2023-03-03 11:00:19 -08:00
Phillip Webb 4370757fb2 Use Java 17 in Maven integration tests
Closes gh-34472
2023-03-03 10:59:00 -08:00
Andy Wilkinson 2cb585aeb6 Merge branch '3.0.x'
Closes gh-34471
2023-03-03 16:28:22 +00:00
Andy Wilkinson 5c43e42839 Merge branch '2.7.x' into 3.0.x
Closes gh-34470
2023-03-03 16:27:49 +00:00
Andy Wilkinson 95cd0f2435 Test Boot's Maven Plugin against Maven 3.9.0
Closes gh-34469
2023-03-03 16:27:02 +00:00
Andy Wilkinson 671d8a876f Merge branch '3.0.x'
Closes gh-34463
2023-03-03 10:47:28 +00:00
Andy Wilkinson 6a95f44f67 Merge branch '2.7.x' into 3.0.x
Closes gh-34462
2023-03-03 10:47:08 +00:00
Andy Wilkinson 68a1dd3a76 Document support for Gradle 8
Closes gh-34458
2023-03-03 10:42:28 +00:00
Andy Wilkinson f180a02015 Merge branch '3.0.x'
Closes gh-34461
2023-03-03 10:36:55 +00:00
Andy Wilkinson 03dd666818 Merge branch '2.7.x' into 3.0.x
Closes gh-34460
2023-03-03 10:27:32 +00:00
Andy Wilkinson 4f7e038f14 Test Gradle plugin against Gradle 8.0.1
Closes gh-34457
2023-03-03 10:21:26 +00:00
Phillip Webb c735652e0b Merge branch '3.0.x'
Closes gh-34453
2023-03-02 12:09:01 -08:00
Phillip Webb 956b9e06c9 Merge branch '2.7.x' into 3.0.x
Closes gh-34452
2023-03-02 12:08:52 -08:00
Phillip Webb 69d34c96bf Apply consistent timestamps to files added to a fat archive
Update logic in `BootZipCopyAction` to align with the recent changes
made in the Maven plugin (commit 998d59b7). Timestamps are now
specified in UTC and offset against the default timezone before being
written.

Removing the offset from our UTC time before calling `entry.setTime()`
ensures that we get consistent bytes in the zip file when the output
stream reapplies the offset during write.

Closes gh-21005
2023-03-02 12:06:42 -08:00
Phillip Webb 2b94484078 Merge branch '3.0.x'
Closes gh-34431
2023-03-01 21:29:13 -08:00
Phillip Webb f5cf821479 Merge branch '2.7.x' into 3.0.x
Closes gh-34430
2023-03-01 21:28:51 -08:00
Phillip Webb 998d59b7ac Ignore system timezone when applying outputTimestamp to entries
Update `JarWriter` so that entry times are set with the default TimeZone
offset removed. The Javadoc for `ZipEntry.setTime` states:

  The file entry is "encoded in standard `MS-DOS date and time format`.
  The default TimeZone is used to convert the epoch time to the MS-DOS
  data and time.

Removing the offset from our UTC time before calling `entry.setTime()`
ensures that we get consistent bytes in the zip file when the output
stream reapplies the offset during write.

Fixes gh-34424
2023-03-01 21:27:08 -08:00
Chintan Radia a98760125c Add support for CNB platform API 0.11
See gh-34383
2023-03-01 09:24:42 +01:00
Diego Díez b073ef0310 Add build-info skip support
See gh-34393
2023-03-01 09:19:14 +01:00
Andy Wilkinson 7e364cd67d Merge branch '3.0.x'
Closes gh-34392
2023-02-27 13:55:17 +00:00
Andy Wilkinson 814b77c33f Merge branch '2.7.x' into 3.0.x
Closes gh-34391
2023-02-27 13:54:59 +00:00
Andy Wilkinson 81882ecca4 Apply plugins consistently in Gradle documentation examples
Closes gh-34038
2023-02-27 13:26:05 +00:00
Andy Wilkinson eb105572f6 Test Gradle plugin against Gradle 6.9.4
Closes gh-34368
2023-02-24 10:36:08 +00:00
Phillip Webb 157091a811 Merge branch '3.0.x' 2023-02-22 18:36:57 -08:00
Phillip Webb 0b15962aca Merge branch '2.7.x' into 3.0.x 2023-02-22 18:36:16 -08:00
Phillip Webb a5902d7a00 Update copyright year of changed files 2023-02-22 18:35:17 -08:00
Phillip Webb b07269a018 Merge branch '3.0.x' 2023-02-21 23:20:07 -08:00
Phillip Webb c4de86c244 Merge branch '2.7.x' into 3.0.x 2023-02-21 23:17:57 -08:00
Phillip Webb df5898a146 Reformat code following spring-javaformat upgrade 2023-02-21 22:53:27 -08:00
Andy Wilkinson 6e9d94edb1 Merge branch '3.0.x'
Closes gh-34183
2023-02-14 19:49:50 +00:00
Johnny Lim d368115128 Fix name for Implementation-Title in Spring Boot Gradle plugin
See gh-34177
2023-02-14 19:47:43 +00:00
Scott Frederick 12537c7170 Merge branch '3.0.x'
Closes gh-34162
2023-02-09 15:47:57 -06:00
Scott Frederick cbac3c81d6 Merge branch '2.7.x' into 3.0.x
Closes gh-34161
2023-02-09 15:47:34 -06:00
Scott Frederick 33aef7fe27 Update CLI installation docs to download releases from Maven Central
Closes gh-33962
2023-02-09 15:45:15 -06:00
Andy Wilkinson bbe526df70 Merge branch '3.0.x'
Closes gh-34120
2023-02-08 11:00:29 +00:00
Andy Wilkinson 9378fc47a7 Set implementation name and version in Gradle-built archives
Closes gh-34059
2023-02-08 10:59:55 +00:00
Andy Wilkinson 5a95fd0d2b Make httpcore5-h2 classes available to Gradle tests
httpclient5 now requires classes in httpcore5-h2 in addition to those
in httpcore5.

See gh-34086
2023-02-07 15:13:48 +00:00
Andy Wilkinson f595b46bd3 Upgrade to HttpClient5 5.2.1
Closes gh-34086
2023-02-06 14:46:05 +00:00
Moritz Halbritter e0d8d528b7 Merge branch '3.0.x'
Closes gh-34073
2023-02-06 11:54:58 +01:00
Moritz Halbritter 2e61acb979 Merge branch '2.7.x' into 3.0.x
Closes gh-34072
2023-02-06 11:54:51 +01:00
Enimiste d6032c9d2c Remove inputStream.close() line to conform to the interface
The "ReproducibleResourceTransformer" interface says that "An input
  stream for the resource, the implementation should *not* close this
  stream".

See gh-34063
2023-02-06 11:47:25 +01:00
lars-christian stitz a186055c51 Improve log message when repackaging by specifying the involved files
See gh-33350
2023-01-31 13:16:56 +01:00
Moritz Halbritter 48db5ff35c Merge branch '3.0.x'
Closes gh-34018
2023-01-31 10:51:45 +01:00
Moritz Halbritter 0a080736d8 Merge branch '2.7.x' into 3.0.x
Closes gh-34017
2023-01-31 10:50:30 +01:00
Moritz Halbritter 23f1c896c9 Merge branch '3.0.x'
Closes gh-34015
2023-01-31 10:20:36 +01:00
Johnny Lim bc7fc90550 Replace Base64Utils with JDK's Base64
See gh-33967
2023-01-31 10:20:06 +01:00
Phillip Webb 390892f11b Merge branch '3.0.x'
Closes gh-33998
2023-01-26 21:45:57 -08:00
Krzysztof Krason 94996664bc Drop unnecessary Collections.unmodifiableSet
See gh-33987
2023-01-26 20:47:35 -08:00
Krzysztof Krason d3efd7e091 Use try with close
See gh-33987
2023-01-26 20:36:38 -08:00
Krzysztof Krason 0e68cae57f Use instanceof patterns
See gh-33987
2023-01-26 20:36:25 -08:00
Krzysztof Krason a9c547e767 Use text blocks
See gh-33987
2023-01-26 20:36:01 -08:00
Krzysztof Krason 6e46423983 Use diamond operators
See gh-33987
2023-01-26 20:35:08 -08:00
Moritz Halbritter 2601020337 Merge branch '3.0.x'
Closes gh-33964
2023-01-24 10:09:10 +01:00
Moritz Halbritter dfda153da5 Merge branch '2.7.x' into 3.0.x
Closes gh-33963
2023-01-24 10:09:01 +01:00
Scott Frederick 0b6dade142 Migrate CLI to Apache HttpClient 5
Closes gh-33534
2023-01-23 13:59:15 -06:00
Scott Frederick 1588f9d881 Migrate buildpack-platform to Apache HttpClient 5
Closes gh-33533
2023-01-23 13:59:08 -06:00
Andy Wilkinson 63abaa4cd2 Start working on 3.1.0 2023-01-23 12:04:39 +00:00
Phillip Webb 71efc55bf9 Merge branch '2.7.x' 2023-01-18 16:31:53 -08:00
Phillip Webb 470a255b0d Polish 2023-01-18 15:47:50 -08:00
Phillip Webb 7c508fa324 Update copyright year of changed files 2023-01-18 15:37:58 -08:00
Moritz Halbritter 94f4a4396c Merge branch '2.7.x'
Closes gh-33880
2023-01-18 17:35:52 +01:00
Moritz Halbritter e8d809fe65 Replace 'via' with 'over' or 'through' in the documentation
Closes gh-33878
2023-01-18 16:56:42 +01:00
Moritz Halbritter fe8d8f4ed3 Merge branch '2.7.x' 2023-01-18 13:50:06 +01:00
Moritz Halbritter 524a4b6c1e Only return complete accessor name when accessor has a backing field 2023-01-18 13:42:56 +01:00
Moritz Halbritter ae64b205d4 Merge branch '2.7.x'
Closes gh-33871
2023-01-18 12:08:58 +01:00
Moritz Halbritter 26d658802f Add support for record accessors in spring-boot-configuration-processor
Closes gh-29526
2023-01-18 12:02:34 +01:00
Moritz Halbritter 6c44055fd4 Polish PropertyDescriptorResolver 2023-01-18 12:01:06 +01:00
Moritz Halbritter b1f8024e8a Merge branch '2.7.x'
Closes gh-33845
2023-01-16 16:06:44 +01:00
Moritz Halbritter 9f2ed201b2 Improve error message when start goal can't contact running application
Closes gh-24044
2023-01-16 15:58:03 +01:00
Moritz Halbritter d26fa80741 Merge branch '2.7.x'
Closes gh-33843
2023-01-16 14:10:35 +01:00
Moritz Halbritter 6cec0187c3 Include exception message in condition result when docker is unavailable
Closes gh-20582
2023-01-16 14:09:21 +01:00
Andy Wilkinson 485025310e Merge branch '2.7.x'
Closes gh-33777
2023-01-12 12:04:04 +00:00
Andy Wilkinson 433364601d Merge branch '2.7.x' 2023-01-11 17:04:33 +00:00
Andy Wilkinson 3b2e5e5292 Remove references to https://repo.spring.io/release 2023-01-11 17:03:45 +00:00
Phillip Webb 29b7c121fb Merge branch '2.7.x'
Closes gh-33739
2023-01-09 19:01:57 -08:00
Phillip Webb a369f936c9 Replace references to Pivotal
Closes gh-33737
2023-01-09 18:09:20 -08:00
Phillip Webb a2ac38e203 Update copyright year of changed files 2023-01-09 15:46:07 -08:00
Phillip Webb 1621cfd578 Merge branch '2.7.x' 2023-01-09 15:44:44 -08:00
Krzysztof Krason cf6493f65c Simplify AssertJ assertions and also make them more readable
See gh-33653
2023-01-09 11:10:20 +01:00
Andy Wilkinson 2d372edcfc Fix Homebrew formula's install --head support
This commit updates the Homebrew formula's install --head support to
use the main branch (rather than the default of master) and to build
the project using Gradle rather than trying to use Maven.

Closes gh-33704
2023-01-06 18:15:31 +00:00
Phillip Webb 5ec5007bf0 Merge branch '2.7.x'
Closes gh-33706
2023-01-05 17:21:34 -08:00
Phillip Webb f588793445 Update copyright year of changed files 2022-12-22 01:00:42 -08:00
Phillip Webb 0254619782 Merge branch '2.7.x' 2022-12-22 00:59:40 -08:00
Phillip Webb e4772cf3b7 Update copyright year of changed files 2022-12-22 00:59:32 -08:00
Phillip Webb 6367a8c62c Merge branch '2.7.x' 2022-12-21 22:54:01 -08:00
Phillip Webb 5ba52d0000 Polish formatting 2022-12-21 22:53:54 -08:00
Phillip Webb e57824fb58 Merge branch '2.7.x'
Closes gh-33617
2022-12-21 22:52:59 -08:00
Phillip Webb a2a59dd627 Polish 'Improve gradle plugin tags documentation'
See gh-33614
2022-12-21 22:52:27 -08:00
Shekhar Aggarwal a1df607dd8 Improve gradle plugin tags documentation
See gh-33614
2022-12-21 22:50:02 -08:00
Phillip Webb 5814543bb1 Merge branch '2.7.x'
Closes gh-33616
2022-12-21 22:49:40 -08:00
Phillip Webb c205ba0694 Polish 'Improve maven plugin tags documentation'
See gh-33609
2022-12-21 22:47:28 -08:00
Shekhar Aggarwal 79557012a7 Improve maven plugin tags documentation
See gh-33609
2022-12-21 22:46:42 -08:00
Moritz Halbritter b132b5c317 Polish JSON classes 2022-12-16 16:09:21 +01:00
Moritz Halbritter f36e2ecb7b Use AutoClosables with try-with-resources
Closes gh-33538
2022-12-16 15:43:15 +01:00
Moritz Halbritter 725337f976 Make fields final
Closes gh-33537
2022-12-16 14:28:44 +01:00
peter-janssen 9a74c862dd Fix documented Java compiler level
See gh-33505
2022-12-12 11:34:25 +01:00
Craig Andrews 703935612f Update instead of replace environment in bootBuildImage documentation
Closes gh-32886
See gh-33424
2022-12-01 11:25:53 +01:00
Scott Frederick 9ed8b25e6b Make AOT goals release option mutually exclusive with source and target
Fixes gh-33382
2022-11-30 17:18:02 -06:00
Moritz Halbritter c6536c54d8 Write native-image argfile only if there are excludes
Refactors duplicate logic in BootZipCopyAction and Packager into
separate classes.

Closes gh-33363

Co-authored-by: Phillip Webb <pwebb@vmware.com>
2022-11-30 14:29:35 +01:00
Andy Wilkinson d88f968d22 Merge branch '2.7.x'
Closes gh-33403
2022-11-28 20:20:24 +00:00
Andy Wilkinson 2da8bc1f3b Reduce Gradle versions used for compatibility testing
Closes gh-33401
2022-11-28 19:14:41 +00:00
Andy Wilkinson abcbac92ef Merge branch '2.6.x' into 2.7.x
Closes gh-33343
2022-11-24 11:29:24 +00:00
Andy Wilkinson ebfbf4a412 Stop testing Gradle plugin against Gradle 7.6 RCs
Closes gh-33342
2022-11-24 11:23:45 +00:00
Stephane Nicoll 75b74637f6 Make sure the 'native' profile can be used in a multi-modules project
This commit updates the 'native' profile so that it provides plugin
management for the plugins involved in building a native image, rather
than forcing their executions.

This commit also update the Maven Plugin reference guide to describe
what the native profile does, and how it can be used in various
scenarios.

Closes gh-33184
2022-11-22 12:33:52 +01:00
Stephane Nicoll a7f57091a6 Add support for building an image without forking the Maven lifecycle
This commit adds a new "build-image-no-fork" goal that behaves exactly
as "build-image", except it does not fork the lifecycle. This is a
common pattern in maven plugins where a goal can be invoked on the
command-line and conveniently make sure that a certain phase has run
prior to its execution.

The new goal is suitable for binding the goal in a phase, typically
package, and rely on it rather than invoking the goal. This makes sure
that the lifecycle is forked, which would run everything again.

Closes gh-26455
2022-11-22 10:42:26 +01:00
Andy Wilkinson b8142d168b Merge branch '2.7.x'
Closes gh-33269
2022-11-18 17:16:01 +00:00
Andy Wilkinson 9879538c02 Merge branch '2.6.x' into 2.7.x
Closes gh-33268
2022-11-18 17:15:13 +00:00
Andy Wilkinson e860efca65 Test Gradle plugin against 7.6-rc-3
Closes gh-33267
2022-11-18 17:14:29 +00:00
Moritz Halbritter 9206b6cda1 Add warning to not disable jar task when building native images
Closes gh-33238
2022-11-18 13:26:59 +01:00
Andy Wilkinson 931cc8a508 Merge branch '2.7.x'
Closes gh-33250
2022-11-18 10:39:52 +00:00
Johnny Lim 6027508cf7 Polish
See gh-33108
2022-11-16 10:00:36 +01:00
Scott Frederick c28c614c47 Set Java source and target when compiling AOT generated sources
When compiling AOT-generated sources in the Maven plugin `process-aot`
and `process-test-aot` goals, the Java compiler should be provided
with the same `--source`, `--target`, and `--release` configuration
values as the Maven compiler plugin uses to compile main sources.

Fixes gh-33112
2022-11-14 15:05:13 -06:00
Scott Frederick 11652bd8e6 Add compilerArguments parameter to process-aot Maven goal
This commit adds a `compilerArguments` parameter to the Maven plugin
`process-aot` and `process-test-aot` goals to allow the user to
configure the command used to compile the AOT-generated sources.

Fixes gh-33012
2022-11-14 15:05:12 -06:00
Andy Wilkinson 112bed886c Merge branch '2.7.x'
Closes gh-33085
2022-11-09 10:37:40 +00:00
Andy Wilkinson b1494d4a39 Merge branch '2.6.x' into 2.7.x
Closes gh-33084
2022-11-09 10:37:06 +00:00
Andy Wilkinson 6423535f67 Delete temp directory after MavenBuild has exected
Closes gh-33083
2022-11-09 10:35:56 +00:00
Andy Wilkinson 843493d915 Merge branch '2.7.x'
Closes gh-33075
2022-11-08 17:30:16 +00:00
Andy Wilkinson 00d22c9fc5 Merge branch '2.6.x' into 2.7.x
Closes gh-33074
2022-11-08 17:28:50 +00:00
Andy Wilkinson eed86c0d0a Test Boot's Gradle plugin against Gradle 7.6-rc-2
Closes gh-33073
2022-11-08 16:46:22 +00:00
Andy Wilkinson 6940e348a7 Try to fix NativeImagePluginActionIntegrationTests on Windows 2022-11-08 11:00:52 +00:00
Andy Wilkinson b67c427259 Upgrade to Servlet 6.0 and related EE 10 specs
Co-authored-by: Phillip Webb <pwebb@vmware.com>

Closes gh-33036
Closes gh-33037
Closes gh-33038
Closes gh-33039
Closes gh-33040
Closes gh-33041
Closes gh-33042
Closes gh-33043
2022-11-07 17:33:38 +00:00
Andy Wilkinson fce6016399 Merge branch '2.7.x'
See gh-33016
2022-11-07 13:36:48 +00:00
Andy Wilkinson 7c0f397129 Merge branch '2.6.x' into 2.7.x
See gh-33015
2022-11-07 13:36:11 +00:00
Andy Wilkinson ac6ad7c0f1 Fix ModifiedClassPathExtension with parameterized tests
Closes gh-33014
2022-11-07 13:34:54 +00:00
Phillip Webb 3bd945766f Merge branch '2.7.x' 2022-11-05 17:03:10 -07:00
Phillip Webb b4283d45c5 Merge branch '2.6.x' into 2.7.x 2022-11-05 17:03:02 -07:00
Phillip Webb d2cceb6b77 Polish 2022-11-05 17:02:57 -07:00
Phillip Webb 262c30ddc1 Improve error message when DirtiesUrlFactoriesExtension fails
See gh-33019
2022-11-05 16:44:53 -07:00
Phillip Webb 34b4ae8e05 Merge branch '2.7.x'
Closes gh-33019
2022-11-05 16:36:55 -07:00
Phillip Webb 2ab1f49442 Merge branch '2.6.x' into 2.7.x
Closes gh-33018
2022-11-05 16:35:26 -07:00
Phillip Webb caf46043c6 Add @DirtiesUrlFactories annotation
Add `@DirtiesUrlFactories` annotation that can be used to reset URL
factories.

Closes gh-33017
2022-11-05 16:30:27 -07:00
Phillip Webb fb3c095e35 Merge branch '2.7.x'
Closes gh-33016
2022-11-05 16:06:13 -07:00
Phillip Webb 948893f36d Merge branch '2.6.x' into 2.7.x
Closes gh-33015
2022-11-05 16:04:40 -07:00
Phillip Webb d4cc8fc3a6 Support modified classpath on methods and parameterized tests
Update `ModifiedClassPathExtension` and related classes so that
annotations can be used directly on test methods, or on classes
passed into parameterized tests.

Closes gh-33014
2022-11-05 16:04:19 -07:00
Andy Wilkinson 443d80ce6e Polish
See gh-32924
2022-11-04 17:23:01 +00:00
Andy Wilkinson fe8644cc59 Fail more elegantly when GraalVM version is too old
Closes gh-32924
2022-11-04 13:05:22 +00:00
Andy Wilkinson 2d5a3eac51 Include AOT-generated classes in native test binary
Closes gh-32940
2022-11-04 11:53:33 +00:00
Scott Frederick 67af4c0a65 Polish documentation 2022-11-03 15:45:09 -05:00
Scott Frederick bb684cc0ad Add support for CNB platform API 0.10
Fixes gh-32949
2022-11-03 11:29:02 -05:00
Andy Wilkinson 9ccc1e8d62 Merge branch '2.7.x'
Closes gh-32988
2022-11-03 10:27:42 +00:00
Andy Wilkinson a3870f8da7 Merge branch '2.6.x' into 2.7.x
Closes gh-32987
2022-11-03 10:23:30 +00:00
Andy Wilkinson beb62be843 Test Boot's Gradle plugin against Gradle 7.6-rc-1
Closes gh-32933
2022-11-03 10:22:14 +00:00
Andy Wilkinson 519250cacf Polish Gradle tasks for AOT processing
Closes gh-32946
2022-11-01 16:42:26 +00:00
Andy Wilkinson b192c29edb Use AOT's outputs to configure source set's inputs
Closes gh-32919
2022-11-01 10:33:17 +00:00
Andy Wilkinson 0103e24bbb Stop configuring AOT-generated classes as output of AOT source set
Closes gh-32940
2022-11-01 10:32:37 +00:00
Andy Wilkinson 2bb9b2640e Separate classpath of AOT tasks from source sets they populate
Closes gh-32930
2022-11-01 10:06:33 +00:00
Johnny Lim 5067aab552 Polish
See gh-32840
2022-10-27 16:33:14 +02:00
Phillip Webb a59b6cb1f3 Polish 2022-10-25 21:56:53 -07:00
Phillip Webb 4be3218cb6 Merge branch '2.7.x' 2022-10-25 15:48:26 -07:00
Phillip Webb c8676a81de Merge branch '2.6.x' into 2.7.x 2022-10-25 15:48:04 -07:00
Phillip Webb d7ac20cd6c Update copyright year of changed files 2022-10-25 15:47:30 -07:00
Scott Frederick c22e76632c Add Build-Jdk-Spec to jar and war manifest when building with Gradle
This commit adds a `Build-Jdk-Spec` attribute to the manifest in a
jar or war file built with the Spring Boot Gradle plugin. This
aligns the Gradle plugin's behavior with the default Maven plugin
behavior.

This removes the need to set a `BP_JVM_VERSION` environment variable
when invoking Cloud Native Buildpacks, as the Paketo buildpacks will
honor `Build-Jdk-Spec` in a jar or war manifest to determine the
default JVM version.

Fixes gh-32829
2022-10-25 15:48:05 -05:00
Andy Wilkinson 99edda735e Polish 2022-10-25 12:57:58 +01:00
Andy Wilkinson 9e6259cd37 Remove development-only dependencies from native image classpath
Fixes gh-32843
2022-10-24 09:22:13 +01:00
Andy Wilkinson eebe23a081 Make all AOT-generated resources available to native-compile
Fixes gh-32841
2022-10-21 16:38:52 +01:00
Phillip Webb d8c4aec946 Merge branch '2.6.x' into 2.7.x 2022-10-20 17:04:37 -07:00
Phillip Webb 1a14f39f83 Polish 2022-10-20 17:04:29 -07:00
Scott Frederick b78b22b6f6 Allow Gradle task property to be set with String or enum value
See gh-32769
2022-10-20 13:59:54 -05:00
Phillip Webb c53c8c84b8 Fix annotation processor to deal with relocated @ConstructorBinding
Update `ConfigurationMetadataAnnotationProcessor` to use the correct
location for the `@ConstructorBinding` annotation and to deal with
finding it as a meta-annotation.

Closes gh-32660
2022-10-20 10:19:57 -07:00
Andy Wilkinson 26e747d2db Fix package tangle in spring-boot-gradle-plugin
Closes gh-32814
2022-10-20 13:12:12 +01:00
Scott Frederick 8acf9afccb Use String instead of enum for Gradle task Property
See gh-32769
2022-10-19 17:23:23 -05:00
Madhura Bhave ce3c933f77 Adapt to Spring Security changes
Closes gh-32604
2022-10-19 11:46:27 -07:00
Andy Wilkinson 8621be6bba Make consistent use of Property for Gradle task configuration
Closes gh-32769
2022-10-19 19:08:45 +01:00
Phillip Webb 45ce096b6b Replace our TestCompiler with Spring Framework's version
Replace the last use of our `TestCompiler` with Spring Framework's
version.

See gh-31266
2022-10-18 11:39:03 -07:00
Stephane Nicoll 4b778ff4c1 Polish Maven documentation to mention native profile 2022-10-18 15:36:38 +02:00
Andy Wilkinson 2dacddb4d7 Make bootBuildImage produce native image when NBT plugin is applied
Closes gh-32768
2022-10-18 13:12:45 +01:00
Andy Wilkinson 2c756ea874 Use collectReachabilityMetadata task to add metadata to bootJar
Closes gh-32737
2022-10-18 11:25:34 +01:00
Phillip Webb a34b1d3c6e Don't detect private constructors on member classes for binding
Refine constructor binding detection logic so that `private`
constructors on member classes are no longer automatically picked for
constructor binding. This provides users a way of signalling that
they wish to use the constructor directly.

Closes gh-32639
2022-10-18 00:59:46 -07:00
Phillip Webb 754f39e6ef Polish 2022-10-18 00:59:45 -07:00
Phillip Webb c16c6bc3b5 Fix reachability argfile format
Update the argfile to a format that actually works when
passed to the `native-image` command.

See gh-32738
2022-10-17 18:59:50 -07:00
Phillip Webb 8358a0e3f3 Fix reachability-metadata.properties location
Update tools to use the correct `reachability-metadata.properties`
location which should include the version number.

See gh-32738
2022-10-17 14:31:38 -07:00
Andy Wilkinson 3082b0c5bf Add a section on AOT to the Gradle plugin's docs
Closes gh-32750
2022-10-17 18:15:34 +01:00
Andy Wilkinson 3d5c864bc9 Merge branch '2.6.x' into 2.7.x
Closes gh-32758
2022-10-17 17:11:59 +01:00
Andy Wilkinson dade5ec3aa Test against Gradle 6.9.3
Closes gh-32757
2022-10-17 17:11:37 +01:00
Andy Wilkinson ff16f6d6c6 Work around configuration cache problem in NBT Gradle Plugin
See gh-32752
See graalvm/native-build-tools#338
2022-10-17 13:58:07 +01:00
Phillip Webb 071649360b Generate 'META-INF/native-image/argfile' file for buildpack use
Update the Maven and Gradle plugin to generate an `argfile` file
file under `META-INF/native-image` that contains `--exclude-config`
arguments that should be passed when generating a native image.

The contents of the file is generated for each nested jar that has a
`reachability-metadata.properties` file containing 'override=true'.

The `reachability-metadata.properties` file is expected to be generated
by the Graal native build tools plugin.

Closes gh-32738
2022-10-14 15:23:06 -07:00
Phillip Webb 430c6b7e9f Downgrade to SLF4J 1.7 for spring-boot-gradle-plugin tests
The downgrade is required for tests to run in Eclipse.

Closes gh-32626
2022-10-14 11:58:16 -07:00
Scott Frederick 3ea18f07fa Polish "Use NBT plugin version from gradle.properties in image tests"
See gh-32643
2022-10-13 15:05:06 -05:00
Phillip Webb 7e8ed075c0 Merge branch '2.7.x'
Closes gh-32682
2022-10-11 23:21:52 -07:00
Phillip Webb ed01a77a99 Merge branch '2.6.x' into 2.7.x
Closes gh-32681
2022-10-11 23:19:34 -07:00
Phillip Webb e0c79ce598 Support PEM formatted elliptic-curve TLS keys
Update `PrivateKeyParser` to support loading PEM formatted
elliptic-curve keys. We need to do a similar trick to the PKCS1 keys
and convert them to a `PKCS8EncodedKeySpec`.

Fixes gh-32646
2022-10-11 23:18:44 -07:00
Andy Wilkinson 3ca5c7ff5b Create AOT source sets as soon as the Java plugin is applied
Previously, the AOT source sets were not created until both the
Java and Spring Boot plugins had been applied. This could create
ordering problems when the Spring Boot plugin's native image plugin
action tried to access the AOT source sets to configure the
classpaths of the nativeCompile and nativeTest tasks. If the
plugins were applied in a particular order the AOT source sets
would not exist and a failure would occur.

This commit updates the Spring Boot AOT plugin to create the source
sets as soon as the Java plugin has been applied. This ensure that
they're in place when reacting to the native image plugin being
applied.

Closes gh-32661
2022-10-11 19:58:03 +01:00
Andy Wilkinson 808e0be552 Merge branch '2.7.x'
Closes gh-32679
2022-10-11 19:16:08 +01:00
Andy Wilkinson 1b604e30f7 Merge branch '2.6.x' into 2.7.x
Closes gh-32678
2022-10-11 19:15:33 +01:00
Andy Wilkinson 215eb96355 Improve error handling in SpringBootPlugin
Closes gh-32677
2022-10-11 19:15:23 +01:00
Andy Wilkinson d351086a06 Adapt to breaking changes to AOT processing entry points
See gh-32550
2022-10-10 22:02:25 +01:00
Andy Wilkinson 0e23fbe30b Use Neo4j 4.4.11 for integration testing
See gh-32620
2022-10-06 19:53:46 +01:00
Andy Wilkinson 188cac6540 Protect against null run process customizer
See 0ee277b8c3
See gh-32607
2022-10-06 11:55:41 +01:00
Andy Wilkinson 0ee277b8c3 Ensure that run mojo's child process is killed when Maven is killed
Fixes gh-32607
2022-10-06 10:19:22 +01:00
Stephane Nicoll 44c843145a Add support for specifying application arguments
This commit makes sure that application arguments can be provided when
optimizing an application at build-time. It uses the same mechanism of
the regular run goal, merging the profile property if set.

Closes gh-32579
2022-10-05 16:36:38 +02:00
Stephane Nicoll 39cf17ed81 Add missing integration test for profile management in process-aot 2022-10-05 16:22:44 +02:00
Phillip Webb e0b67889a8 Use Stream.toList instead of Stream.collect when possible
Update code to make use of `Stream.toList()` whenever possible.

Closes gh-28177
2022-10-04 00:29:22 -07:00
Scott Frederick d25a99692f Replace Spring Boot TestCompiler with Spring Framework's version
See gh-31266
2022-09-30 15:58:11 -05:00
Stephane Nicoll e2dd0ef9a4 Adapt AotProcessor to changes in Spring Framework
Closes gh-32560
2022-09-30 16:47:03 +02:00
Andy Wilkinson 51df7813a5 Remove code deprecated in 2.x and add since and forRemoval attributes
Closes gh-32548
Closes gh-32549
2022-09-30 14:39:05 +01:00
dreis2211 65ef8fc51a Use ByteArrayOutputStream.toString where possible
See gh-32534
2022-09-29 15:03:24 +02:00
Andy Wilkinson 17953eeb33 Merge branch '2.7.x'
Closes gh-32544
2022-09-29 11:41:15 +01:00
Andy Wilkinson 3ef633b096 Merge branch '2.6.x' into 2.7.x
Closes gh-32543
2022-09-29 11:39:42 +01:00
Andy Wilkinson 84a25c7dcf Configure Log4j2 classpath overrides consistently
Closes gh-32537
2022-09-29 11:25:21 +01:00
dreis2211 f0b4a65546 Avoid usage of StringBuffer where possible
See gh-32519
2022-09-29 09:29:10 +02:00
Andy Wilkinson 0bfa9cd704 Upgrade to Logback 1.4 and SLF4J 2.0
Closes gh-12649
2022-09-28 21:14:08 +01:00
Andy Wilkinson 0f44e69995 Merge branch '2.7.x'
Closes gh-32500
2022-09-26 13:15:39 +01:00
Andy Wilkinson 5124ae94ae Merge branch '2.6.x' into 2.7.x
Closes gh-32499
2022-09-26 13:15:11 +01:00
Andy Wilkinson cfac7f55a4 Correct annotations on BootBuildImage's file-based inputs
Closes gh-32495
2022-09-26 13:13:16 +01:00
Andy Wilkinson f67db3d9ad Move spring-boot-cli into spring-boot-tools
Closes gh-32492
2022-09-23 16:44:57 +01:00
Andy Wilkinson 4a05230d5d Move spring-boot-properties-migrator into spring-boot-tools
Closes gh-32491
2022-09-23 16:18:30 +01:00
Madhura Bhave afce559050 Remove unused dependency from Maven integration test 2022-09-22 14:07:26 -07:00
Andy Wilkinson 7c7c34cda1 Fix classpath roots of AOT test processing
This was regressed in 6175c4210d so that
each class on the classpath was passed in as a "root". This commit
corrects this so that only the roots are passed to the AOT test
processor.

See gh-32424
2022-09-22 12:30:43 +01:00
Scott Frederick f9c341c75a Revert "Generate the AutoConfiguration.imports file from annotations"
This reverts commit da4de7d67d.
2022-09-21 14:50:15 -05:00
Scott Frederick d62d7ca75d Revert "Generate ManagementContextConfiguration.imports file from annotations"
This reverts commit 6b3b0dd3a6.
2022-09-21 14:50:15 -05:00
Scott Frederick 1f53eb7df9 Revert "Sort the contents of generated imports files"
This reverts commit 95e62b7ff8.
2022-09-21 14:50:15 -05:00
Scott Frederick 910e9c9fcc Revert "Fix windows build"
This reverts commit 9fe24fe692.
2022-09-21 14:50:15 -05:00
Andy Wilkinson 4a80b36160 Configure native image classpath outside of task realisation
Closes gh-32465
2022-09-21 18:14:46 +01:00
Andy Wilkinson 6175c4210d Fix skipping of processAot when there is no main source
See gh-32424
2022-09-21 14:57:54 +01:00
Andy Wilkinson fa81e8ca79 Skip processAot and processTestAot if there is no main or test code
Closes gh-32424
2022-09-20 17:15:19 +01:00
Andy Wilkinson e8aa5680d6 Support file-based reachability metadata repositories
See gh-32408
2022-09-20 14:06:18 +01:00
Andy Wilkinson 8323f24ccc Make classes generated by AOT test processing available to nativeTest
Closes gh-32428
2022-09-20 11:29:18 +01:00
Scott Frederick 1ed4d89466 Copy native reachability metadata to jar file in Gradle plugin
When the Spring Boot Gradle plugin builds a fat jar and the Native
Build Tools Gradle plugin is applied to the build, any configuration
files from the GraalVM reachability metadata repository that match
project dependencies are copied to a `META-INF/native-image`
directory in the fat jar.

Closes gh-32408
2022-09-16 12:26:24 -05:00
Andy Wilkinson 2b503ee334 Add AOT-generated classes as a dependency
Previously, the AOT-generated classes were added directly to the
compile classpath of the AOT compilation task. This didn't work
perfectly in IntelliJ IDEA, leaving the generated classes in the
runtime scope and causing compilation problems where the
AOT-generated source tried to reference those classes.

This commit updates the plugin to add the AOT-generated classes as
a dependency to the AOT source set's implementation configuration.
This makes the classes available during compilation by the source
set's Java compilation task while also makeing IntelliJ IDEA aware
of their presence on the compile classpath.

Closes gh-32395
2022-09-15 14:02:54 +01:00
Phillip Webb 20b91c5ae2 Include 'classesDirectory' in ProcessTestAotMojo classpath
Update `ProcessTestAotMojo` so that the classesDirectory and
the testClassesDirectory are on the classpath when compiling
code.

See gh-32191
2022-09-14 13:50:27 -07:00
Stephane Nicoll 88f2b33cc1 Add AOT-generated classes to classpath of the compiler
See gh-32304
2022-09-13 14:58:16 +02:00
Andy Wilkinson 867c49337a Add AOT-generated classes to classpath of AOT JavaCompile tasks
See gh-32304
2022-09-13 13:03:24 +01:00
Stephane Nicoll 9fe24fe692 Fix windows build
This commit makes sure that files that are generated in a temporary
directory are closed once the related test completes.
2022-09-10 16:24:29 +02:00
Andy Wilkinson aafceb3868 Merge branch '2.7.x'
Closes gh-32285
2022-09-09 16:47:06 +01:00
Andy Wilkinson f17df7bf30 Merge branch '2.6.x' into 2.7.x
Closes gh-32284
2022-09-09 16:46:43 +01:00
Andy Wilkinson 23c2f73b3f Update tests to allow them to run on Java 19
Closes gh-32280
2022-09-09 16:46:14 +01:00
Andy Wilkinson 144fdaa703 Merge branch '2.6.x' into 2.7.x
Closes gh-32283
2022-09-09 15:14:40 +01:00
Andy Wilkinson 78f4242e46 Build with Gradle 7.5 while still supporting Gradle 6.8+
Closes gh-32281
2022-09-09 15:13:43 +01:00
Phillip Webb 46be4a3f30 Merge branch '2.7.x' 2022-09-08 19:38:18 -07:00
Phillip Webb e88a682220 Merge branch '2.6.x' into 2.7.x 2022-09-08 19:37:52 -07:00