autonomousapps / autonomousapps/dependency-analysis-gradle-plugin

Report unused `exclude` clauses in dependencies

Open
#1,368 3 comments 2 reactions 0 assignees View on GitHub
enhancement
Dominant language
Kotlin
Stars
2.2k
Forks
158
Avg merge
16h 25m
Merged PRs (30d)
46

Description

**Is your feature request related to a problem? Please describe.**
It's not a problem but is a nice feature to have.

**Describe the solution you'd like**
Say I have this script:
```groovy
implementation('some:dependency:1.0.0') {
exclude group: 'this.is.not.actually.a', module: 'dependency'
}
```
`some:dependency` doesn't have `this.is.not.actually.a:dependency` as a dependency. Or it used to but I've updated it to a new version and now it doesn't. It would be nice to get a report that this exclusion is unneeded.

**Describe alternatives you've considered**
N/A

**Additional context**
[Gradle Lint](https://github.com/nebula-plugins/gradle-lint-plugin/) has a similar feature.

Contributor guide

Open the contributing guide

Research direction

The issue names no implementation files or tests. Start by locating the dependency-analysis code that processes Gradle exclude clauses and compare its behavior with the similar Gradle Lint feature. Done means reporting an exclusion whose target is not a dependency of the declared module, including the shown version-change case, with tests for that example.

Written by the indexing model from the issue text.

Assessment

Tech stack
groovy, kotlin
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.