Features

  • #13 - Support Gradle workers for JVM task executions.

  • #83 - Executable specifications for JVM that are not tied to Gradle API.

  • #86 - Simplified executable specifications for external non-JVM processes.

  • #88 - Simplified Distribution downloader API.

  • #91 - Property resolver migrated.

  • #92 - Migrate Artifact & Repository APIs to core.

  • #93 - Migrate AbstractCacheBinaryTask to core API.

  • #94 - Migrate AbstractScriptWrapperTask to core API.

  • #95 - Simplify Git Downloader API.

  • #96 - Add files and filesDropNull to FileSystemOperations.

  • #98 - Add asConfiguration(s) functionality to ProjectTools

  • #101 - Simplify dependency management, but setting grolifant-herd as the only dependency. Additional artifacts will be pulled by this dependency and allow future Gradle major version updates, without need to remove specific Grolifant artifacts.

  • #104 - Handle @SkipWhenEmpty in Gradle 7.x

  • #107 - Handle tools that can only be found in system installations.

  • #108 - Support for Gradle 8.

  • #111 - Handle more TaskInputFilePropertyBuilder options.

Bugs

  • #89 - Fix bootstrap classpath parsing on Windows when Gradle < 5.6.

  • #90 - StackOverflowError when calling getVersionProvider on Gradle 5.x.

  • #109 - Classpath substitution is not working on Gradle 6.6+.

  • #112 - ProvisionedExecMethods has been deprecated, but there is no alternative.

  • #113 - Closure support to Executable, ExecutableScript, ForkedJvmExecutable & ForkedJvmScript.

  • #114 - Tasks based upon Executable & ForkedJvmExecutable must be out-of -date if arguments change.

  • #115 - Executable not resolved on Gradle 6.6+.

  • #118 - Proj4ectTools.getGroupProviders NPEs on Gradle 6.x.

Breaking changes

  • #87 - Deprecated v4 APIs are now in a separate artifact.

  • #97 - Minimum supported Gradle version is now 4.3.

  • grolifant-compat3 has been removed.

Other

  • #84 - Each specific Grolifant artifact is compiled against a different version of the Gradle API. Although this has been tested reasonably well, there might be unexpected behaviour in specific environments. If you think, this is related to you 2.0 upgrade, please report this as an issue.

  • #85 - Remove usage of deprecated CollectionUtils.

  • #100 - Refactored and cleaned up TaskTools interface as well as implementations.

  • stringize & fileize methods also support java.util.function.Supplier.

  • org.ysb33r.grolifant.api.v5 is deprecated.