Releases: ansman/auto-dagger
0.10.0
Changes
⚠️ Breaking: Rename of BindGenericAs entries ⚠️
BindGenericAs.Type has been renamed to BindGenericAs.ExactType and BindGenericAs.TypeAndWildcard has been renamed to BindGenericAs.ExactTypeAndWildcard.
These names are much clearer as Type wasn't really indicative of what it did.
BindGenericAs.Default
There is now a new annotation called @BindGenericAs.Default which can be placed on the target type to set the default value for BindGenericAs.
As a quick example:
@BindGenericAs.Default(BindGenericAs.Wildcard)
interface Resource<T>
// This will be bound as Resource<*> since the default has been set to wildcard for Resource.
@AutoBindIntoSet
class SomeResource @Inject constructor() : Resource<Something>See the documentation for more information.
Details
- Remove the deprecated typealiases by @ansman in #85
- Bump androidx.lifecycle:lifecycle-viewmodel from 2.6.1 to 2.6.2 by @dependabot in #87
- Add a way to change the default
BindGenericAs. by @ansman in #90
Full Changelog: 0.9.1...0.10.0
0.9.1
Changes
Change of an invalid package name
The code for the AndroidX ViewModel and Room extensions had accidentally been added to the co.ansman namespace instead of se.ansman. These files have been moved and new deprecated type aliases have been added. These type aliases will be removed in the next release.
Details
- Bump dokka from 1.8.20 to 1.9.0 by @dependabot in #83
- Fix the package name of AutoProvideDaos and the ViewModel code by @ansman in #84
Full Changelog: 0.9.0...0.9.1
0.9.0
Features
Dagger 2.48
Dagger 2.48 has been released and auto-dagger now supports it.
Official KSP support
Starting with Dagger 2.48 there is experimental KSP support. AutoDagger already had KSP support but with 2.48 Dagger stopped supporting using receivers for bindings which auto-dagger used so it now uses a parameter instead.
Kotlin 1.9.10
auto-dagger now uses Kotlin 1.9.10
Details
- Bump kotlin from 1.9.0 to 1.9.10 by @dependabot in #79
- Bump ksp from 1.9.0-1.0.13 to 1.9.10-1.0.13 by @dependabot in #80
- Add support for Dagger 2.48 with KSP support by @ansman in #82
Full Changelog: 0.8.0...0.9.0
0.8.0
Changes
AndroidX Room Support
AutoDagger can now automatically provide all DAOs in a Room Database by annotating your database with @AutoProvideDaos. See the documentation for information on how to get set up.
Details
Full Changelog: 0.7.0...0.8.0
0.7.0
Changes
Retrofit service contribution
There is now a new annotation, @AutoProvideService, which can be added to Retrofit services in order to automatically contribute them to the dependency graph. See the documentation for more information.
ViewModel CoroutineScope
If you use Kotlin Coroutines with ViewModels you can now inject a CoroutineScope into your view models. See the documentation for more information.
Details
- Implement support for automatically providing retrofit services by @ansman in #75
- Add an integration with ViewModel by @ansman in #76
Full Changelog: 0.6.5...0.7.0
0.6.5
Changes
Fix for out of order compilation
All AutoDagger annotations have now been correctly marked as @GeneratesRootInput meaning Hilt will wait for AutoDagger before building the components.
Thanks @burntcookie90 for finding this.
Details
- Bump com.squareup.okio:okio from 3.3.0 to 3.4.0 by @dependabot in #62
- Bump org.jetbrains.kotlinx:kotlinx-metadata-jvm from 0.6.2 to 0.7.0 by @dependabot in #64
- Bump dagger from 2.46.1 to 2.47 by @dependabot in #65
- Bump ksp from 1.9.0-1.0.11 to 1.9.0-1.0.12 by @dependabot in #66
- Bump org.junit.jupiter:junit-jupiter from 5.9.3 to 5.10.0 by @dependabot in #67
- bump com.squareup.okio:okio from 3.4.0 to 3.5.0 by @dependabot in #68
- bump ksp from 1.9.0-1.0.12 to 1.9.0-1.0.13 by @dependabot in #69
- Annotate all module generating annotations with @GeneratesRootInput by @ansman in #72
Full Changelog: 0.6.4...0.6.5
0.6.4
Changes
Kotlin 1.9 support
With 0.6.4, auto-dagger now supports Kotlin 1.9
Details
- Bump dokka from 1.8.10 to 1.8.20 by @dependabot in lshttps://github.com//pull/55
- Bump org.jetbrains.kotlinx.binary-compatibility-validator from 0.13.1 to 0.13.2 by @dependabot in #53
- Bump kotlin from 1.8.21 to 1.8.22 by @dependabot in #56
- Bump com.google.auto:auto-common from 1.2.1 to 1.2.2 by @dependabot in #58
- Bump autoService from 1.1.0 to 1.1.1 by @dependabot in #59
- Bump ksp from 1.8.21-1.0.11 to 1.8.22-1.0.11 by @dependabot in #57
- Update to Kotlin 1.9 by @ansman in #63
Full Changelog: 0.6.3...0.6.4
0.6.3
0.6.2
Features
Validation of component
The target installComponent will now be validated against the scope of the object.
Experimental Kotlin 2.0 support
WIth the release of kotlinx-metadata 0.6.2, there is limited support for Kotlin 2.0
What's Changed
- Bump kotlinpoet from 1.13.2 to 1.14.2 by @dependabot in #49
- Bump autoService from 1.0.1 to 1.1.0 by @dependabot in #47
- Bump org.jetbrains.kotlinx:kotlinx-metadata-jvm from 0.6.0 to 0.6.2 by @dependabot in #51
- Validate that the target component is a parent of the scope by @ansman in #52
Full Changelog: 0.6.1...0.6.2
0.6.1
Changes
Auto binding qualified things
A bug has been fixed that prevented binding objects that also had a qualifier.
Easier binding of initializable objects
You no longer need to specify asTypes if an auto bind object also implements Initializable and is annotated with @AutoInitialize.
PRs
- Bump dagger from 2.46 to 2.46.1 by @dependabot in #42
- Bump com.willowtreeapps.assertk:assertk-jvm from 0.25 to 0.26 by @dependabot in #41
- Make it easier to use @autoBind with @AutoInitialize by @ansman in #43
- Bump org.robolectric:robolectric from 4.10.2 to 4.10.3 by @dependabot in #44
- Bump com.willowtreeapps.assertk:assertk-jvm from 0.26 to 0.26.1 by @dependabot in #45
- Fix auto binding qualified objects by @ansman in #46
Full Changelog: 0.6.0...0.6.1