3097 Commits

Author SHA1 Message Date
Stéphane Nicoll
242803d59b Polish "Replace Configuration fully qualified name by constant"
See gh-42311
2024-09-16 09:01:36 +02:00
mushroom528
9bcfc72307 Replace Configuration fully qualified name by constant
See gh-42311
2024-09-16 09:01:23 +02:00
Andy Wilkinson
9a74437fbc Delete unused javadoc CSS file
Closes gh-42187
2024-09-09 13:52:23 +01:00
Phillip Webb
f3645bba13 Update copyright year of changed files 2024-09-03 21:04:26 -07:00
Moritz Halbritter
e7d6bd6ccd Test spring-boot-maven-plugin against Maven 3.9.9
Closes gh-42097
2024-09-03 14:29:49 +02:00
Johnny Lim
a8452b54b5 Polish
See gh-42069
2024-09-01 18:50:38 -07:00
Phillip Webb
8c1d9872d2 Fix support for large zip files
Update `spring-boot-loader` to support large zip files by correctly
dealing with unsigned ints.

Fixes gh-42012
2024-09-01 15:13:46 -07:00
Phillip Webb
cc2dc558f1 Don't report already migrated properties when has group
Refine the fix adding commit 962936370a so that items with a group
are correctly checked.

Fixes gh-42068
2024-08-31 11:18:47 -07:00
Stéphane Nicoll
1822b2fade Include spring-boot-starter-parent in Integration tests repository
This commit makes sure that integration tests for the Maven Plugin have
access to the current "spring-boot-starter-parent" pom and its
hierarchy as new integration tests rely on that.

Closes gh-42000
2024-08-22 16:46:52 +02:00
Andy Wilkinson
0b24ee8571 Improve loading of jar entry certificates
Co-Authored-By: Phillip Webb <phil.webb@broadcom.com>
2024-08-22 10:56:25 +01:00
Scott Frederick
21b15558a2 Use classpath index when building classpath in PropertiesLauncher
Fixes gh-41719
2024-08-20 15:47:44 -05:00
Phillip Webb
f1987e6f8b Update copyright year of changed files 2024-08-19 16:45:34 -07:00
Christoph Dreis
393ec8ae51 Fix duplicate words
See gh-41916
2024-08-19 09:44:29 +02:00
rajin
c808d44c11 Register JarUrlClassLoader as parallel capable
See gh-41665
2024-08-15 11:11:18 +01:00
Andy Wilkinson
cc88a1db97 Test Gradle Plugin against Gradle 8.10
Closes gh-41870
2024-08-15 11:07:15 +01:00
Andy Wilkinson
e9da0c237e Correct grammar in 'Running your Application with Maven'
Closes gh-41868
2024-08-15 10:38:57 +01:00
Moritz Halbritter
1d45016d8c Upgrade to spring-javaformat 0.0.43
Closes gh-41853
2024-08-14 16:32:41 +02:00
Stéphane Nicoll
200fc15b5d Detect backup jar when the package lifecycle is forked
Previously, if a classifier was set and build-image was executed from
the command-line, the build will fail as the plugin was unable to find
the original jar. This is because it relies on the attached artifacts
of the project, and those are not set when package has run as part of
a forked lifecycle.

This commit makes sure that the backup file is found by convention
first, the same way it is done for the target file.

Closes gh-26721
2024-07-31 17:01:00 +02:00
Stéphane Nicoll
59b47e336b Remove invalid checksum policy setting
This might be a copy/paste error as the checksum policy is used for
deploying and our integration tests do not do that.

Closes gh-41651
2024-07-30 11:20:44 +02:00
Stéphane Nicoll
05468def54 Tolerate module-info with AOT processing
This commit updates the Maven Plugin to tolerate projects that are using
the module path on the JVM and targeting native images with AOT.

Previously, the plugin compiled AOT sources directly to target/classes
and the presence of a module-info there is enough to trigger a
compilation on the module path.

With this change we now compile in a separate directory that contains
the generated AOT classes (typically CGLIB proxies). These are copied to
target/classes once compilation completes already.

The integration test also uses our parent, rather than relying on what
Maven provides. That's because older Maven versions provide a default
compiler plugin version that did not handle the module path correctly.

Closes gh-33383
2024-07-30 10:56:06 +02:00
Stéphane Nicoll
47465f6ed5 Do not validate settings if publishing is disabled
This commit improves the Maven Plugin to only validate the publishing
settings if publishing is actually enabled.

Closes gh-29756
2024-07-29 16:55:02 +02:00
Andy Wilkinson
4ee24bf9bd Polish "Add rule to prevent calls to Objects.requireNonNull()"
See gh-41611
2024-07-29 11:41:26 +01:00
Andy Wilkinson
5f666eec5b Reduce warnings reported by Eclipse
Closes gh-41598
2024-07-25 14:55:00 +01:00
Andy Wilkinson
f9f530ddaa Remove method references to improve compatibility
The use of method references requires the referenced method to be
present even if it isn't called. This made it impossible for Gradle
to remove the deprecated methods as it would break our plugin.
By switching the lambdas, the methods only have to be present when
they're called which will only happen with Gradle 8.2 and earlier.

Closes gh-41599
2024-07-24 19:22:05 +01:00
Phillip Webb
61dc82d836 Update copyright year of changed files 2024-07-22 18:16:19 +01:00
Andy Wilkinson
f702230c12 Test Gradle plugin against Gradle 8.9
Closes gh-41454
2024-07-12 07:31:24 +01:00
Andy Wilkinson
d71fdd9712 Make buildSrc's custom Gradle tasks consistently abstract
Closes gh-41272
2024-06-28 15:40:56 +01:00
Sébastien Deleuze
a6f1bb9590 Update Kotlin DSL examples of bootBuildImage to be additive
See gh-41173
2024-06-28 13:47:42 +02:00
Andy Wilkinson
365fdfee45 Reduce scope of mavenOptional feature to only the Maven Plugin
Previously, the mavenOptional was added to every published module but it
was only used by spring-boot-maven-plugin. This commit reduces its scope
so that it only affects the Maven plugin. It also reworks the
implementation to reuse the existing optional configuration rather than
declaring a new mavenOptional configuration. Lastly, publication of
Gradle Module Metadata (GMM) has been disabled for
spring-boot-maven-plugin. This is seen as preferable to publishing the
metadata – which isn't really needed as it does not contain any useful
additional information – and having to suppress warnings about
incomplete mapping of GMM to pom metadata.

Closes gh-41263
2024-06-28 11:39:46 +01:00
Andy Wilkinson
2ed72c6e4d Correct syntax for plexus-utils exclusion
See 07442f836600fc346db49b8c0640f3977be18dfd
See gh-41248
2024-06-28 11:39:46 +01:00
Andy Wilkinson
d2f74426f7 Work around bug in Gradle's Eclipse model
The model incorrectly marks the Gradle API and all of its
dependencies as test dependencies, making them unavailable in Eclipse
to code in src/main/java. We work around this by modifying the
classpath container to remove the test attribute from the
dependencies that should be available to main code.

See gh-41228
2024-06-27 12:58:36 +01:00
Andy Wilkinson
4515c882c7 Merge branch 'gh-41228' into 3.2.x
Closes gh-41228
2024-06-27 09:55:59 +01:00
Phillip Webb
962936370a Don't report already migrated properties
Update `PropertiesMigrationReporter` so that already migrated properties
are not reported. Prior to this commit, if a deprecated property was
replaced by a property that could bind with the name relaxed name it
would be reported. For example: `test.someproperty` being replaced with
`test.some-property`.

In order to check the actual underlying property name, the
`PropertySourceOrigin` class has been updated so that it is always
returned, even if another `Origin` is available.

Fixes gh-35774
2024-06-26 16:24:32 -07:00
Andy Wilkinson
654016af7f Move Docker-related test support into a separate module
See gh-41228
2024-06-26 19:47:35 +01:00
Andy Wilkinson
89a06608d2 Update spring-boot-maven-plugin to use docker-test plugin
See gh-41228
2024-06-26 19:46:29 +01:00
Andy Wilkinson
7d5a761d51 Update spring-boot-gradle-plugin to use docker-test plugin
See gh-41228
2024-06-26 19:46:25 +01:00
Andy Wilkinson
d5ef5e9c9d Update spring-boot-buildpack-platform to use docker-test plugin
See gh-41228
2024-06-26 19:46:08 +01:00
Andy Wilkinson
07442f8366 Exclude plexus-utils in favor of Maven's build-in version
Closes gh-41248
2024-06-26 16:59:23 +01:00
Phillip Webb
85f6641a7e Allow 'npipe://' prefix in Docker host address
Update `LocalHttpClientTransport` to support explicit `npipe://` prefix
in the host name. This is the format used in the Docker config from
v4.31.1 onward.

Fixes gh-41199
2024-06-25 12:40:11 -07:00
Phillip Webb
2a4582b084 Update copyright year of changed files 2024-06-19 22:54:40 -07:00
Andy Wilkinson
491f34d25c Improve container test code
Replace `DockerImageNames` with a enum and relocate it from the
`testcontainers` to `container` package. The enum now also
becomes a common location that we can use to apply container
configuration such as timeouts.

Closes gh-41164

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2024-06-19 20:10:03 -07:00
Scott Frederick
e228ed39b3 Support CNB builders that do not specify a stack
Fixes gh-41046
2024-06-12 15:16:21 -05:00
Phillip Webb
bcbcafaab2 Polish "Use method references when possible in test code"
See gh-40974
2024-06-11 12:58:04 -07:00
Ahmed Ashour
207327d97c Use method references when possible in test code
See gh-40974
2024-06-11 12:58:00 -07:00
Phillip Webb
dcccb3b2b1 Polish "Use method references when possible"
See gh-40974
2024-06-11 12:57:59 -07:00
Ahmed Ashour
507229eef8 Use method references when possible
See gh-40974
2024-06-11 12:57:55 -07:00
Ahmed Ashour
2c5934dab2 Use 'switch' instead of 'if'
See gh-40985
2024-06-11 12:24:11 -07:00
Scott Frederick
2bb74b261c Disable stale checking for local Docker daemon connections
Fixes gh-40697
2024-06-10 17:27:02 -05:00
Andy Wilkinson
217c2c862b Ignore file entries in META-INF/versions of multi-release jar
Fixes gh-41001
2024-06-06 13:28:36 +01:00
Andy Wilkinson
dd6f516d66 Test Gradle Plugin against 8.8
Closes gh-40573
2024-06-03 08:29:02 +01:00