Skip to content

Depending on multiple feature variants of the same library reports the library as unused and breaks reason task #1667

Description

@Vampire

Build scan link
https://scans.gradle.com/s/cwythadwgzmp2

Plugin version
3.6.1

Gradle version
9.4.1

JDK version
17

(Optional) reason output for bugs relating to incorrect advice

* What went wrong:
Execution failed for task ':reason'.
> A failure occurred while executing com.autonomousapps.tasks.ReasonTask$ExplainDependencyAdviceAction
   > Could not create an instance of type com.autonomousapps.tasks.ReasonTask$ExplainDependencyAdviceAction.
      > Coordinates 'net.kautler:command-framework' matches more than 1 dependency: [net.kautler:command-framework:0.6.0, net.kautler:command-framework:0.6.0]

Describe the bug
If you depend on multiple feature variants of one library, DAPG gets confused.
It reports the library as unused even though it is used, and the reason task errors out.

To Reproduce
Steps to reproduce the behavior:

dependencies {
    implementation("net.kautler:command-framework:0.6.0") {
        capabilities {
            requireFeature("jda-support")
        }
    }
    implementation("net.kautler:command-framework:0.6.0") {
        capabilities {
            requireFeature("javacord-support")
        }
    }
}

Expected behavior

  • No wrong advice
  • Reason working

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions