Release notes
Features
-
#140 - Make grolifant tasks configuration cache-safe.
-
#141 - XZ, MSI & DMG are provided as separate SPIs.
-
#146 - Add
provideValues(Provider),providesValuesDropNull(Map),provideValuesDropNull(Provider),stringizeValuesDropNull(Map)methods. -
#152 - Add ability to control output to
ProvisionedExecMethods. -
#153 - Allow role-focused configurations to be marked visible or invisible.
-
#154 -
StringTools.patternizeis not compatible with configuration cache. -
#156 - Make
Transformutility public. -
#157 - Add conversion tools for byte arrays.
Bugs
-
#145 - Fix ExecTools on Gradle 7.x.
-
#147 - Make
ProvisionedExecMethodsCC-safe. -
#148 - Make
ProviderTools.getVersionProviderCC-safe. -
#149 - Only update versionProvider in afterEvaluate if the subproject has the plugin applied.
-
#150 - Forward output in JVM processes even if there is an error.
-
#151 - API docs are incorrectly linked in index.
Breaking changes
-
Support for Gradle 4,5,6 dropped.
-
Top-level package is now called
org.ysb33r.grolifant5. When upgrading to this, please rename allorg.ysb33r.grolifantto the new package name. -
All methods in
ProjectOperationsthat were deprecated in v.x or earlier have been removed. -
All task classes now implement
GrolifantTaskComponentsand directProjectOperationsaccess is now not allowed within a task. Methods fromGrolifantTaskComponentsshould be used. This can be achieved by extendingGrilfantDefaultTaskinstead ofDefaultTask. AlternativelyGrolifantTaskComponents.fromcan be used to create an instance to be placed within a task. -
ProvisionedExecMethods.getProjectOperationshas been dropped in favour ofProvisionedExecMethods.getConfigCacheSafeOperations. -
All
execmethods onProvisionedExecMethodsandExecMethodsnow return Grolifant’sExecOutputinstead of Gradle’sExecResult. -
It is now longer possible to set streams on
ProcessExecutionSpec. Use new methodsforwardOutput,forwardErrorOutputandafterExecuteinstead. -
xz,dmgandmsiare no longer supported out of the box. Only.gz,.bz2,.zip,.tar,.tar.bz2, andtar.gzipis supported in core. Implementors that require these formats should place the appropriategrolifant5-unpacker-<EXT>on the runtimn classpath of their plugins. Addinggrolifant5-unpacker-xzas a runtime dependency will support.tar.xzas well. -
Adds an extension called
grolifantOpsrather thangrolifant. -
SimplePasswordCredentialsnow implementsorg.gradle.api.credentials.PasswordCredentials, rather thanorg.gradle.api.artifacts.repositories.PasswordCredentials. If you need the latter then useSimpleRepositoryCredentials. You can convert fromSimplePasswordCredentialstoSimpleRepositoryCredentialsusing theasRepositoryCredentialsmethod.