autonomousapps / autonomousapps/dependency-analysis-gradle-plugin

Count of transitive dependencies that would be required to add when removing an unused dependency

Open
#1,145 0 comments 0 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.**

When looking at the `buildHealth` report, there are a number of unused dependencies that can be removed, and a number of transitive dependencies that are suggested to add directly. For many of our internal libraries that are relatively lightweight, the transitive dependencies are okay to be included in a transparent way, if it means we add a single internal library instead of 15 other dependencies.

**Describe the solution you'd like**

For each suggested unused dependency to remove, I would like it to include a count of how many transitives from that dependency are used. If the count is zero, then that dependency can be removed no questions asked. If it's 10+, we'd probably just leave it for conciseness of the build file.

**Describe alternatives you've considered**

I think I saw an issue asking for the "reason" report to include all dependencies in one go - this would also be useful. Running the reason on every dependency one at a time isn't really practical for us.

Contributor guide

Open the contributing guide

Research direction

Start at the buildHealth report generation and the unused-dependency removal advice. Determine how transitive dependencies used by each removable dependency are counted, then verify that each suggestion reports the count and that a zero count is distinguishable.

Written by the indexing model from the issue text.

Assessment

Tech stack
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.