Skip to content

Advice to configure dependency only for specific variant #1625

@emartynov

Description

@emartynov

Plugin version
3.5.1

Gradle version
9.2.1

JDK version
21

(Optional) Kotlin and Kotlin Gradle Plugin (KGP) version
2.2.21

(Optional) Android Gradle Plugin (AGP) version
8.13.1

(Optional) reason output for bugs relating to incorrect advice

./gradlew :core:track:reason --id :external:SomeTracker
Parallel Configuration Cache is an incubating feature.
Calculating task graph as no cached configuration is available for tasks: :core:track:reason --id :external:SomeTracker

> Configure project :app
WARNING: The option setting 'android.enableBuildConfigAsBytecode=true' is experimental.
The current default is 'false'.

> Task :core:tracking:reason

------------------------------------------------------------
You asked about the dependency ':external:SomeTracker'.
You have been advised to change this dependency to 'variantADebugImplementation' from 'variantAImplementation'.
------------------------------------------------------------

There is no path from :core:tracking to :external:SomeTracker for variantBDebugCompileClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBDebugRuntimeClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBDebugUnitTestCompileClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBDebugUnitTestRuntimeClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBDebugAndroidTestCompileClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBDebugAndroidTestRuntimeClasspath


Shortest path from :core:tracking to :external:AomeTracker for variantADebugCompileClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantADebugRuntimeClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantADebugUnitTestCompileClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantADebugUnitTestRuntimeClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantADebugAndroidTestCompileClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantADebugAndroidTestRuntimeClasspath:
:core:tracking
\--- :external:SomeTracker

There is no path from :core:tracking to :external:SomeTracker for variantBReleaseCompileClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBReleaseRuntimeClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBReleaseUnitTestCompileClasspath


There is no path from :core:tracking to :external:SomeTracker for variantBReleaseUnitTestRuntimeClasspath


Shortest path from :core:tracking to :external:SomeTracker for variantAReleaseCompileClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantAReleaseRuntimeClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantAReleaseUnitTestCompileClasspath:
:core:tracking
\--- :external:SomeTracker

Shortest path from :core:tracking to :external:SomeTracker for variantAReleaseUnitTestRuntimeClasspath:
:core:tracking
\--- :external:SomeTracker

Source: variantBDebug, android_test
-----------------------------
(no usages)

Source: variantBDebug, main
---------------------
(no usages)

Source: variantBDebug, test
---------------------
(no usages)

Source: variantBRelease, main
-----------------------
(no usages)

Source: variantBRelease, test
-----------------------
(no usages)

Source: variantADebug, android_test
------------------------------
(no usages)

Source: variantADebug, main
----------------------
* Uses 5 classes: <Some classes> (implies implementation).
* Uses 1 constant: URL (implies implementation).

Source: variantADebug, test
----------------------
(no usages)

Source: variantARelease, main
------------------------
* Uses 5 classes: <Some classes> (implies implementation).
* Uses 1 constant: URL (implies implementation).

Source: variantARelease, test
------------------------
(no usages)

Describe the bug
Suggests to limit to debug variantA while it is uses in both build types

Expected behavior
Don't suggest

Additional information
The module :external:SomeTracker is just binary sdk:

build.gradle
SomeTrackerSDK_x.x.x.aar

And build.gradle is:

configurations.maybeCreate("default")
artifacts.add("default", file('SomeTrackerSDK_x.x.x.aar'))

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions