You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Currently, bundles do not assist with fixing "misused" transitive dependencies. This can result in awkward cases like this
Project A depends on project B
Project B depends on androidx.paging:paging-runtime, which in turns depends on an internal-ish dependency androidx.paging:paging-common
Project A uses something from paging-common, so DAGP suggests adding paging-common. This is not ideal because that dependency shouldn't usually be depended on directly. The preferred shim is paging-runtime.
Describe the solution you'd like
A new optional preferredIdentifier for bundles to use if defined when advising dependencies contained within it.
The issue here from the perspective of the current implementation is that the bundle rules require that one of the dependencies in the bundle being explicitly declared in the build. That is, in your scenario, you'd have to apply paging-runtime and declare a bundle on that + paging-common and then it would "just work." But because you're getting paging-common through project B, such a bundle rule wouldn't work currently.
I know we already discussed this elsewhere; I'm adding it here so that I remember later.
Is your feature request related to a problem? Please describe.
Currently, bundles do not assist with fixing "misused" transitive dependencies. This can result in awkward cases like this
Project A depends on project B
Project B depends on
androidx.paging:paging-runtime
, which in turns depends on an internal-ish dependencyandroidx.paging:paging-common
Project A uses something from paging-common, so DAGP suggests adding paging-common. This is not ideal because that dependency shouldn't usually be depended on directly. The preferred shim is paging-runtime.
Describe the solution you'd like
A new optional
preferredIdentifier
for bundles to use if defined when advising dependencies contained within it.Describe alternatives you've considered
We can manually shim these in our "DependencyRake" solution for now: slackhq/foundry#14
Additional context
The text was updated successfully, but these errors were encountered: