Releases: nebula-plugins/gradle-resolution-rules-plugin
v8.0.0
v7.8.9
v7.8.8
v7.8.7
Avoid inherent performance issues in both dependencySubstitutions.all
and resolutionStrategy.eachDependency
when applying substitutions and use the same method to apply versioned and unversioned substitutions.
v7.8.6
Avoid repeatedly parsing replacement rules module identifiers.
v7.8.5
Move core alignment feature warning message to INFO
level to avoid polluting UI output.
(v7.8.4 was unreleased)
v7.8.3
Avoid reinitializing substitution rules within every apply.
v7.8.2
- Avoid registering more than one action for
componentSelection.all
(reject rules) andresolutionStrategy.eachDependency
(substitution rules). Now uses aHashMap
lookup using the module identifier. Improves both the performance of applying the rule initially, and evaluating the rules during dependency resolution - Use the build-in
DefaultModuleIdentifier
/DefaultModuleVersionIdentifier
classes to avoid additional parsing on some paths: many dependency related methods takeObject
and will pass-through already parsed representations
v7.8.1
Avoid eager resolution of task configuration dependencies caused by the ambiguity of using DependencySubstitutions.all
for dependency substitutions for substitutions with version selectors. Switches to ResolutionStrategy.eachDependency
which doesn't have the same limitation.
This will have a limited impact for serial builds, but greatly improves parallel build performance because configuration resolution can occur during task execution where configuration resolution is parallelized.
v7.8.0
Core Gradle alignment can be enabled from an extension
The value from the extension will be used if there is no passed in property. The extension value defaults to false
This enables setting the value via an extension without using a property, and allows us to update the value until project.onExecute
or config.onResolve
take place