Final release of v4.0.0
of the setup-gradle
, dependency-submission
and wrapper-validation
actions provided under gradle/actions
.
This release is available under the v4
tag.
Major changes from the v3
release
The arguments
parameter has been removed
Using the action to execute Gradle via the arguments
parameter was deprecated in v3
and this parameter has been removed.
See here for more details.
Cache cleanup enabled by default
After a number of fixes and improvements, this release enables cache-cleanup by default for all Jobs using the setup-gradle
and dependency-submission
actions.
Improvements and bugfixes related cache cleanup:
- By default, cache cleanup is not run if any Gradle build fails (#71)
- Cache cleanup is not run after configuration-cache reuse (#19)
This feature should help to minimize the size of entries written to the GitHub Actions cache, speeding up builds and reducing cache usage.
Wrapper validation enabled by default
In v3
, the setup-gradle
action was enhanced to support Gradle wrapper validation, removing the need to use a separate workflow
file with the gradle/actions/wrapper-validation
action.
With this release, wrapper validation has been significantly improved, and is now enabled by default (#12):
- The
allow-snapshot-wrappers
makes it possible to validate snapshot wrapper jars usingsetup-gradle
. - Checksums for nightly and snapshot Gradle versions are now validated (#281).
- Valid wrapper checksums are cached in Gradle User Home, reducing the need to retrieve checksum values remotely (#172).
- Reduce network calls in
wrapper-validation
for new Gradle versions: By only fetching wrapper checksums for Gradle versions that were not known when this action was released, this release reduces the likelihood that a network failure could cause failure in wrapper validation (#171) - Improved error message when
wrapper-validation
finds no wrapper jars (#284)
Wrapper validation is important for supply-chain integrity. Enabling this feature by default will increase the coverage of wrapper
validation on projects using GitHub Actions.
New input parameters for Dependency Graph generation
Some dependency-graph inputs that could previously only be configured via environment variables now have dedicated action inputs:
dependency-graph-report-dir
: sets the location where dependency-graph reports will be generateddependency-graph-exclude-projects
anddependency-graph-include-projects
: select which Gradle projects will contribute to the generated dependency graph.dependency-graph-exclude-configurations
anddependency-graph-include-configurations
: select which Gradle configurations will contribute to the generated dependency graph.
Other improvements
- In Job summary, the action now provides an explanation when cache is set to
read-only
ordisabled
(#255) - When
setup-gradle
requests a specific Gradle version, the action will no longer download and install that version if it is already available on thePATH
of the runner (#270) - To attempt to speed up builds, the
setup-gradle
anddependency-submission
actions now attempt to use theD:
drive for Gradle User Home if it is available (#290)
Deprecations and breaking changes
- The
gradle-home-cache-cleanup
input parameter has been deprecated and replaced bycache-cleanup
- The undocumented
dependency-graph: clear
parameter has been removed without replacement - The following parameters deprecated in
v3
have been removed:
Changelog
- Only fetch checksums for unknown wrapper versions by @bigdaz in #292
- Isolate 'dependency-submission' action from 'setup-gradle' by @bigdaz in #293
- Caching improvements by @bigdaz in #294
- Config cache cleanup by @bigdaz in #295
- Delete excluded paths on restore Gradle Home by @bigdaz in #298
- Use faster D: drive on windows for Gradle User Home and Gradle downloads by @bigdaz in #299
- Always set the GRADLE_USER_HOME env var by @bigdaz in #300
- Fix windows by @bigdaz in #302
- Use pre-installed Gradle when available by @bigdaz in #301
- Prepare for v4 release by @bigdaz in #303
- Include RUNNER_ARCH in cache key by @bigdaz in #305
- Introduce dependency graph params by @bigdaz in #304
- Finish enabling cache-cleanup by default by @bigdaz in #306
- Bump references to Develocity Gradle plugin from 3.17.5 to 3.17.6 by @bot-githubaction in #315
- Group cache-cleanup log messages by @bigdaz in #319
- Enable wrapper-validation by default in setup-gradle by @bigdaz in #318
- Improve error messages for min-wrapper-count by @bigdaz in #321
Full Changelog: v3.5.0...v4.0.0