Commit Graph

1852 Commits (217335092739198fdde1a45ea6d1535a8fe105d7)

Author SHA1 Message Date
Andy Wilkinson 4fd2e0c916 Polish "Fix typos"
See gh-30773
3 years ago
Andy Wilkinson f6d24dc1a8 Fix typos
See gh-30773
3 years ago
Andy Wilkinson 193ef9a06d Package META-INF/services/ files beneath BOOT-INF/classes/
Closes gh-30413
3 years ago
Andy Wilkinson f7d181e65b Handle null additional properties more gracefully
Closes gh-30654
3 years ago
izeye 40d0e38e76 Test Spring Boot Gradle Plugin against Gradle 7.4.2
See gh-30506
3 years ago
Andy Wilkinson 05b7befc7a Fix javadoc of ResolveMainClassName setClasspath(Object)
Closes gh-30468
3 years ago
Andy Wilkinson d574563616 Document @ConstructorBinding and @DefaultValue with records
Closes gh-30460
3 years ago
Octavia Togami 264a6888a9 Refactor code to avoid using internal LazyPublishArtifact
See gh-30209
3 years ago
Andy Wilkinson f11ddb4bd7 Prevent eager creation of bootWar task
Previously, querying the artifact's extension in
SinglePublishedArtifact would result in eager creation of the task
that creates the artifact. Typically, this is the bootWar task.

Instead of querying the extension, this commit reworks
SinglePublishedArtifact and its callers to call separate methods for
jar and war artifacts so that the extension check is no longer
required.

Tests have been added to ensure that running help does not trigger
any unexpected task creation. The tests' assertions tolerate some
variation in behavior that depend on the version of Gradle and
whether the configuration cache is enabled.

Closes gh-30211
3 years ago
Andy Wilkinson 5264fb3d1e Test our Gradle Plugin against Gradle 7.4.1
Closes gh-30139
3 years ago
Andy Wilkinson 20d21d4e58 Set up CI with JDK 18
Closes gh-30104
3 years ago
Madhura Bhave 480ccc6175 Clarify devtools documentation when using with build plugins
Closes gh-17851
3 years ago
Moritz Halbritter f3eb90046f Remove @Repeatable support for @DisabledOnOs
We'll add it back again when we need it, and delay the naming issue.

See gh-30082
3 years ago
Moritz Halbritter be38311c5d Disable incompatible tests on Linux AArch64
- Adds a new @DisableOnOs annotation, which is inspired from JUnit5s
  @DisableOnOs annotation. This new annotation supports the architecture
  and is repeatable

Closes gh-30082
3 years ago
Andy Wilkinson e7566e968e Use configuration avoidance APIs in Gradle plugin's docs
Closes gh-30056
3 years ago
Andy Wilkinson 4073cf8334 Only apply special handling of META-INF to jar files
The changes for gh-28562 attempted to align the Gradle plugin's
handling of META-INF with the Maven plugin's behavior. Unfortunately,
they want too far, applying the handling to both jar and war files
when the Maven plugin only applies it to jar files.

This commit reworks the changes so that they only apply to jar files.

Closes gh-30026
3 years ago
Andy Wilkinson a265f150ac Improve parsing of numeric default values
Previously, all integral numbers were parsed as integers. This
caused two problems:

1. Compilation would fail if the default value for a long wasn't a
   valid integer.
2. The default value for a byte or short could be out of range,
   resulting in the generation of invalid metadata and an error
   that could have been caught at compile time not being caught
   until runtime.

This commit updates the parsing of all numeric values to use the
parse method of the target primitive type. For example,
Short.parseShort(String) is now used to parse a short.

Fixes gh-30020
3 years ago
Andy Wilkinson 9c9e04b8e4 Use mainClass rather than deprecated main in BootRun examples
Closes gh-29965
3 years ago
Phillip Webb c86b1330cf Update copyright year of changed files 3 years ago
Phillip Webb 9ab1b669d0 Polish 3 years ago
Andy Wilkinson 03352b0a8c Prohibit use of APIs that prevent task configuration avoidance
Closes gh-29809
3 years ago
izeye 6bd6f590d3 Fix Javadoc since for ResolveMainClassName#setClasspath(Object)
See gh-29826
3 years ago
Andy Wilkinson c84b35c460 Polish "Avoid using Gradle APIs that trigger eager task creation"
See gh-29762
3 years ago
Lars Grefer 7cd87acd73 Avoid using Gradle APIs that trigger eager task creation
See gh-29762
3 years ago
Andy Wilkinson 1fd4a4d86b Remove code related to unsupported versions of Gradle
Closes gh-29681
3 years ago
Andy Wilkinson c3eee4ad68 Align Gradle's plugin's META-INF repackaging with Maven plugin's
Closes gh-28562
3 years ago
Andy Wilkinson 6901f6dab2 Test our Gradle plugin against Gradle 7.4
Closes gh-29673
3 years ago
Moritz Halbritter 262db65a38 Ignore invalid stream types when reading log update events
See gh-29675
3 years ago
Andy Wilkinson 48fe1513fe Test documented build script snippets when they change
Closes gh-29684
3 years ago
Mike Partridge 2e9dcdd96d Replace use of classifier with archiveClassifier
classifier has been deprecated so the docs should be using its
replacement, archiveClassifier, instead.

See gh-29611
3 years ago
Andy Wilkinson 43ca2d2cb0 Access classpath lazily to allow later changes to be picked up
Previously, the classpath of bootJar, bootWar, and bootRun was
configured directly as a FileCollection derived from the main source
set's runtime classpath. This direct configuration meant that
subsequent changes to the main source set's runtime classpath may not
have been picked up.

This commit changes the configuration of the classpath to use a
Callable. This indirection allows subsequent changes to the main
source set's runtime classpath to be picked up as long as they
occur before Gradle calls the callable.

Closes gh-29672
3 years ago
Phillip Webb 2b40ce09d8 Update copyright year of changed files 3 years ago
Stephane Nicoll 7f17f819a6 Polish "Enforce use of BDDMockito"
See gh-29178
3 years ago
Yanming Zhou b49418aaaf Enforce use of BDDMockito
1. Replace Mockito.verify*() with BDDMockito.then()
2. Replace Mockito.doReturn() with BDDMockito.willReturn()
3. Adjust checkstyle rule

See gh-29178
3 years ago
Andy Wilkinson 3ed65f2383 Avoid running Maven plugin ITs for each s-b-dependencies change
Closes gh-28781
3 years ago
Scott Frederick 000cbfa2d9 Set file permissions on all created test files
Closes gh-29551
3 years ago
Phillip Webb 9cf55808fb Ensure run user actually exists
Update `launch.script` so that the `run_user` variable is only set when
the user actually exists. Prior to this commit, if the jar file was
owned by a non-existing user the startup script could fail.

Fixes gh-29370
3 years ago
Andy Wilkinson 41b01cc289 Only write parent entries when entry is new
Previously, when writing a repackaged jar, an attempt to write all of
an entry's parent directories would always be made, irrespective of
whether or not the entry itself had already been written. This was
inefficient as, due to the way that the jar is written, once an entry
itself has been written, we know that all of its parent directories
will also have been written.

This commit updates the jar writer so that no attempt is made to
write parent directory entries if the entry itself has already been
written.

Fixes gh-29175
3 years ago
izeye 9a6c1c531d Test our Gradle plugin against Gradle 7.3.3
See gh-29161
3 years ago
Stephane Nicoll 8c9d398422 Test our Gradle plugin against Gradle 7.3.2
Closes gh-29093
3 years ago
Phillip Webb f3bcbca841 Update copyright year of changed files 3 years ago
Stephane Nicoll 496cd3d2ba Polish
See gh-28999
3 years ago
Scott Frederick b0b2cd79b4 Use latest buildpack image tag when no tag is provided
Fixes gh-28921
3 years ago
Scott Frederick 467c092fdc Remove classpath index manifest attribute from repackaged war files
Fixes gh-28895
3 years ago
Andy Wilkinson af60a8a7cf Test our Gradle plugin against Gradle 7.3.1
Closes gh-28890
3 years ago
Andy Wilkinson 015cf920da Name custom task inputs
Closes gh-28753
3 years ago
Andy Wilkinson 96d98a0f6f Declare dir task inputs with relative path sensitivity
Closes gh-28751
3 years ago
Andy Wilkinson c083e0b049 Avoid using temp before @TempDir has initialized it
Closes gh-28748
3 years ago
Andy Wilkinson 0aae9c26da Test our Gradle plugin against Gradle 7.3
Closes gh-28679
3 years ago
Andy Wilkinson 4cfbc0db36 Merge branch '2.4.x' into 2.5.x
Closes gh-28680
3 years ago