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
I have a large AppComponent that implements a significant number of *Dependencies interfaces. Previously (before version 1.6.0), everything resolved correctly, but now it seems to depend heavily on the order in which these interfaces are declared.
For example:
My AppComponent includes modules that provide dependencies, and the component itself implements both ADependencies and BDependencies.
ModuleA provides someA(): SomeA
ModuleB provides someB(): SomeB
In ADependencies, I request someB
Now, if I define AppComponent like this:
AppComponent : ADependencies, BDependencies
Yatagan fails with the following error:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler output below.
/Users/me/StudioProjects/my-project/app/build/generated/ksp/debug/java/app/my/project/di/core/Yatagan$AppComponent.java:XXX: error: Yatagan$AppComponent is not abstract and does not override abstract method someB() in ADependencies
However, if I reverse the order of interface declarations, everything works fine and Yatagan proceeds without issue.
Unfortunately, in real-world projects, managing the order of more than fifty interfaces manually is not very practical — and there’s no guarantee it will always resolve the problem.
Worth noting: this issue doesn’t occur with KSP 1, where everything works as expected.
The text was updated successfully, but these errors were encountered:
Uh oh!
There was an error while loading. Please reload this page.
I have a large AppComponent that implements a significant number of *Dependencies interfaces. Previously (before version 1.6.0), everything resolved correctly, but now it seems to depend heavily on the order in which these interfaces are declared.
For example:
My AppComponent includes modules that provide dependencies, and the component itself implements both ADependencies and BDependencies.
ModuleA provides someA(): SomeA
ModuleB provides someB(): SomeB
In ADependencies, I request someB
Now, if I define AppComponent like this:
AppComponent : ADependencies, BDependencies
Yatagan fails with the following error:
However, if I reverse the order of interface declarations, everything works fine and Yatagan proceeds without issue.
Unfortunately, in real-world projects, managing the order of more than fifty interfaces manually is not very practical — and there’s no guarantee it will always resolve the problem.
Worth noting: this issue doesn’t occur with KSP 1, where everything works as expected.
The text was updated successfully, but these errors were encountered: