anvil
anvil copied to clipboard
A Kotlin compiler plugin to make dependency injection with Dagger 2 easier.
Basically the build failes after you rename a module and on the next build it hangs when using `ContributesSubcomponent` and you rename module. I have done 3 attemps to build...
Do not merge this before Anvil dropped support for Kotlin 1.7. This is a proof of concept.
Kotlin 1.6 will deprecate the old compiler backend. The IR compiler backend for JVM/Android projects became the default with Kotlin 1.5. At this point there should be no reason why...
Currently it only looks at properties, but method injection is another supported mechanism in Dagger
Perhaps this is correct behavior, but to my knowledge Dagger does not allow nulls to be passed through directly. ```kotlin class Example @Inject constructor() { @Inject var injected: String? =...
Not an issue just a general question. I tried Anvil and it works perfectly in the runtime. One issue is that my generated code does not contain component interfaces ```kotlin...
Consider this example ```kotlin @MergeComponent(StartupScope::class) @SingleIn(StartupScope::class) interface StartupComponent { val okHttpClient: OkHttpClient } // Elsewhere @ContributesTo(StartupScope::class) interface ThingDependencies { val okHttpClient: OkHttpClient } ``` Currently, this would fail to compile...
We are looking at code gen use case such as below ```kt @ContributesJsonAdapter internal fun Moshi.Builder.myAdapter( one: One, @Named("foo") another: Another, ) { add(MyAdapter(one, other)) } ``` that will generate:...
This PR reimplements binding module generation to perform all merging at the IR level and eliminate intermediate _merged_ binding modules. At a high level, this does the following - Updates...
[](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [softprops/action-gh-release](https://togithub.com/softprops/action-gh-release) | action | major | `v1` -> `v2` | ---...