Skip to content

Releases: nebula-plugins/gradle-resolution-rules-plugin

v7.8.5

05 Mar 00:42

Choose a tag to compare

Move core alignment feature warning message to INFO level to avoid polluting UI output.

(v7.8.4 was unreleased)

v7.8.3

05 Mar 00:41

Choose a tag to compare

Avoid reinitializing substitution rules within every apply.

v7.8.2

04 Mar 01:33
b008c2b

Choose a tag to compare

  • Avoid registering more than one action for componentSelection.all(reject rules) and resolutionStrategy.eachDependency (substitution rules). Now uses a HashMap 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 take Object and will pass-through already parsed representations

v7.8.1

12 Feb 00:33

Choose a tag to compare

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

18 Sep 16:39
bf2e077

Choose a tag to compare

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

v7.7.7

15 Sep 22:14

Choose a tag to compare

  • Java 13 compatibility avoiding java.lang.NoSuchFieldException: modifiers

v7.7.2

19 Jun 18:55
909b974

Choose a tag to compare

*AlignRule: useRequestedVersion should use distinct (#124)

v7.7.1

19 Jun 18:17
8e8a08a

Choose a tag to compare

  • Remove usage of afterEvaluate to prevent resolution rules from running after other plugins such as dependency locking

v7.7.0-rc.3

19 Jun 02:00

Choose a tag to compare

Only parse rules once and filter independently for each project

This avoids Jackson ObjectMapper and zip file reading overhead for each project.

v7.7.0-rc.2

18 Jun 16:57

Choose a tag to compare

rules.kt - Memoize should use computeIfAbsent