Compatibility

5.x

Version 5.x+ is only compatible with Gradle 7.3+

4.x

Version 4.x+ is compatible with Gradle 4.3+, but not by default. As it ships it is only compatible with Gradle 6.x+. In order have 4.x & 5.x compatibility the grolifant50 and grolifant40 artifacts have to be palced on the classpath manually.

2.x and 3.x

As of version 2.0, the minimum version of Gradle that is supported by Grolifant, is 4.3. We dropped the compatibility package for 3.0. We also moved most of the APIs in the org.ysb33r.grolifant.api.v4 package to org.ysb33r.grolifant.core and deprecated most of the packages, classes and interfaces in org.ysb33r.grolifant.api.v4.

Each package that refers to a major Gradle version, will now have minimal APIs which will be used to load the appropriate compatibility for the specific major Gradle version. For instance if a class is in the v4 package it will be compatibility with Gradle 4.0+. If it appears in the v5 package then it will only be compatible with Gradle 5.0+. The same for v6, v7 etc. Any class which appears in core is not dependent on specific Gradle versions. In this version, each artifact has been built against a specific version deom a the Gradle major version is is meant to support.

As per usual you should not rely on anything that appears in the org.ysb33r.grolifant.internal package. If you need anything from there please raise an issue.

Legacy V4 APIs are now available in the grolifant40-legacy-api artifact. For the life of 2.0, these will be a transitive dependency, but come 3.0 they will be dropped and will have to be explicitly included. In 4.0 we plan to drop 4.x support completely.

1.x

Version 1.0.x was the first series that became aware of the restrictions introduced by configuration caching as from Gradle 6.6. It introduced [GrolifantExtension] to help.