-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: improve gradle plugin accuracy
This patch set improves the accuracy of the gradle plugin. Newer version of Gradle added two attributes to configs for controlling the resolution process: `canBeResolved` and `canBeConsumed` (see https://docs.gradle.org/current/userguide/declaring_dependencies.html#sec:resolvable-consumable-configs for details). A recent change to the plugin brought it in line with Gradle best practices, i.e. prefer `canBeResolved=true` and `canBeConsumed=false`. If no configs match the criteria, it falls back to configs with both attributes set to `true`. While this is a good approach, the implementation is a bit too strict: if _any_ `true`- `false` configs are found, the `true`-`true` ones won't be considered. This misses some configs, and hence some dependencies that users expect to see. The first change is to relax the strategy, and accept all the configs that have `canBeResolved=true`. This is equivalent to taking the union of `true`-`false` and `true`-`false` configs. Since this will (correctly) result in more dependencies, I had to update `test/system/kotlin.test.ts`. The second change fixes a bug in the plugin where sub-projects with the same name at different levels of a multi-project hierarchy would overwrite each other. To patch now uses the full path of the sub-project to disambiguate between sub-projects with the same name. In addition to the above changes, the patch refactors the plugin code.
- Loading branch information
Showing
17 changed files
with
770 additions
and
186 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.