Upgrading from 3.x and 4.x

Artifacts are now prefixed with grolifant5 and not grolifant. Builds must be changes to use the new Maven coordinates.

Toplevel packages are now org.ysb33r.grolifant5. Update your source code to use the new packages.

Minimum support level is Gradle 7. grolifant70 & grolifant80 artifacts are JDK8 compatible. grolifant90 requires JDK17.

Remove any references to grolifant, grolifant40, grolifant50 and grolifant60 artifacts. Your Grolifant dependency list only requires

build.gradle
dependencies {
  api 'org.ysb33r.gradle:grolifant5-core:5.1.0'
  implementation 'org.ysb33r.gradle:grolifant5-rawhide:5.1.0' (1)
  runtimeOnly 'org.ysb33r.gradle:grolifant5-herd:5.1.0'
}
1 Only needed if you want to access the worker API directly from your plugin.

OR if you are using the version catalog

gradle/libs.versions.toml
[versions]
grolifant = "5.1.0"

[libraries]
grolifantApi = { module = "org.ysb33r.gradle:grolifant5-api", version.ref = "grolifant" }
grolifantRuntime = { module = "org.ysb33r.gradle:grolifant5-herd", version.ref = "grolifant" }
grolifantRawhide = { module = "org.ysb33r.gradle:grolifant5-rawhide", version.ref = "grolifant" } (1)
1 Only needed if you want to access the worker API directly from your plugin.

Remove references to ProjectOperations in task classes. If possible, derive your task hierarchy from GrolifantDefaultTask instead of DefaultTask. Where this is not possible, create an instance of ConfigCacheSafeOperations inside the task constructor using GrolifantTaskComponents.from.

Upgrading from 2.x

Upgrade to 4.x first.

If you have still using any of the deprecated APIs from org.ysb33r.grolifant.api.v4, you need to change the code to use the new APIs in org.ysb33r.grolifant.api.core.

Upgrading from 1.x

Upgrade to 2.x first. See the legacy documentation. Then see the instructions for 4.x.