autonomousapps / autonomousapps/dependency-analysis-gradle-plugin
JPMS
- 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.**
java module (module-info) should agree with the gradle dependencies, for example `compileOnlyApi` should generally match `requires static transitive`
I suspect this is a bidirectional thing though. For example if I have `exports com.myorg.foo` but do not have `exports com.myorg.foo.internal` then even if something that would normally be detected as `api` should not be api.
if possible, `opens... to` specifications should possibly be determined, I suspect this would require looking at tests though.
I hope this is clearer than mud.
cc: @jjohannes you might be interested in this issue, or have ideas/suggestions
Contributor guide
Research direction
Start by reviewing the existing dependency analysis for compileOnlyApi and the handling of Java module-info descriptors. Then inspect tests covering exported and opened packages, including possible test-only behavior. Done means the project has an agreed, tested bidirectional mapping between Gradle dependency classification and requires, exports, and opens declarations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, kotlin
- Domain
- build-system, devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100