1.0.1 - 2022-01-19
- Fix: Sort methods in generated module code by name to ensure compatiblity with Gradle remote caching.
1.0.0 - 2021-03-27
Change package name and Maven groupId to app.cash
.
No other changes since 0.9.1.
Looking for Assisted Inject? It's built in to Dagger now!
0.9.1 - 2021-03-26
- Fix: Do not add Kotlin stdlib as a dependency to inflation inject runtime which is written in Java.
0.9.0 - 2021-03-25
Assisted injection has been removed from the project because it is now available upstream as part of Dagger. See https://dagger.dev/dev-guide/assisted-injection.html
This project now solely hosts inflation injection, which otherwise had no changes in this version.
0.8.1 - 2021-03-22
- Fix: Allow inflation inject processor to work in modules that do not have assisted inject annotations present.
0.8.0 - 2021-03-22
- New: Inflation injection now uses its own
@Inflated
annotation forContext
andAttributeSet
. Using@Assisted
is no longer supported.
0.7.0 - 2021-03-21
- Similar to how Dagger disambiguates two injections of the same type, qualifier annotations are now required to disambiguate assisted parameters. Parameter names are no longer significant.
- Fix: Do not wrap types annotated with Dagger's
@AssistedFactory
in aProvider
if injected into one of our@AssistedInject
or@InflationInject
types.
Note: This first was erroneously tagged as 0.6.1.
0.6.0 - 2020-09-14
- New: Annotate generated module with
@InstallIn
if the@AssistedModule
is also annotated with@InstallIn
. If the@AssistedModule
is not annotated with@InstallIn
and Hilt is available on the classpath, the generated module will be annotated with@DisableInstallInCheck
. - Fix: Ignore
copy
method when searching for@Assisted
annotation. The Kotlin compiler will copy the annotation to this method on adata class
which we cannot disable.
0.5.2 - 2019-11-22
- Fix: Properly honor target
-source
version when generating the@Generated
annotation on sources.
0.5.1 - 2019-10-28
- New: Support incremental annotation proessing in inflation inject (previously it was only supported by assisted inject).
- Fix: Change annotations to class retention to actually allow incremental annotation processing to work.
0.5.0 - 2019-08-08
- New: Support incremental annotation processing.
- Fix: Explicitly sort generated module bindings to ensure stable output and avoid recompilation.
- Fix: Support nested
@AssistedModule
and@InflationModule
classes.
0.4.0 - 2019-04-05
- New: Other annotation processors using this tool as a library can now specify factory superinterfaces with any type, not just a class.
- Fix: Allow duplicates for provided dependencies. Dagger does not prohibit this so neither should this tool.
0.3.3 - 2019-03-07
- Fix: Support
@AssistedModule
s which are generated by other annotation processors.
0.3.2 - 2018-11-27
- Relax the message for when zero assisted parameters or zero provided parameters were used from being an error to a warning. While assisted injection isn't needed in either of those cases, nothing actually prevent it from still working.
0.3.1 - 2018-11-19
- Fix: Honor abstract factory methods which come from supertypes.
- Fix: Support generic use in factory parameters and return type.
0.3.0 - 2018-10-16
- New: Allow multiple assisted parameters of the same type. This also brings validation that all parameter names in the factory match those of the constructor. Without this, there is no way to correctly match arguments when multiple of the same type are present.
- New: Validate that modules annotated with
@AssistedModule
or@InflationModule
actually include the generated module in theirincludes=
list. - New: Include a
@Generated
annotation which is appropriate for the target JDK on all generated code. - Fix: Mark invalid usages of
@Assisted
at compile time:- Cannot be used on a non-constructor parameter.
- Cannot be used on a constructor without
@AssistedInject
or@InflationInject
. - Cannot be used on a constructor which is annotated with
@Inject
.
- Fix: Inflation injection now validates that targets are subtypes of View rather than generating code which fails to compile.
- Fix: Support injection of primitives by boxing them when generating a
Provider<..>
type. - Fix: Generate correct code for types which are nested inside others.
0.2.1 - 2018-09-04
- Fix: Ensure the generated Dagger 2 module is public if the user-defined module is public.
0.2.0 - 2018-08-20
- New: Android view-inflation injection! Inject dependencies into your custom views as constructor parameters while still allowing inflation from XML.
- Fix: Factory parameter order is no longer required to match constructor parameter order.
- Fix: Requesting a
Provider<T>
injection now works correctly. - Fix: Duplicate assisted or provided dependencies now issue a compiler error.
- Fix: Validate visibility of the type, constructor, and factory prior to generating the factory. This produces a better error message instead of generating code that will fail to compile.
0.1.2 - 2017-07-19
- Fix: Support creating parameterized types.
0.1.1 - 2017-07-03
- Fix: Ensure annotation processors are registered as such in the jar.
0.1.0 - 2017-07-02
Initial preview release.