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-wrappersmakes 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-validationfor 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-validationfinds 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-projectsanddependency-graph-include-projects: select which Gradle projects will contribute to the generated dependency graph.dependency-graph-exclude-configurationsanddependency-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-onlyordisabled(#255) - When
setup-gradlerequests a specific Gradle version, the action will no longer download and install that version if it is already available on thePATHof the runner (#270) - To attempt to speed up builds, the
setup-gradleanddependency-submissionactions now attempt to use theD:drive for Gradle User Home if it is available (#290)
Deprecations and breaking changes
- The
gradle-home-cache-cleanupinput parameter has been deprecated and replaced bycache-cleanup - The undocumented
dependency-graph: clearparameter has been removed without replacement - The following parameters deprecated in
v3have 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