Skip to content

Releases: google/dagger

Dagger 2.15

07 Mar 22:00
Compare
Choose a tag to compare
  • 98b9c3f:
    • Fix a bug where binding collisions were not properly checked across subcomponent boundaries when a parent provided a concrete Set/Map and a child provided a multibinding contribution with the same key.
    • Also applies to providing a concrete optional binding and @BindsOptionalOf declarations.
  • Fix a case where injecting a Provider<GeneratedType> might not have properly delayed processing until that type was generated (57a43df)
  • Add Android proguard specs (b34edaf)
  • Adds a dagger.spi package (in the com.google.dagger:dagger-spi artifact) so users can hook into the Dagger binding graph at build time to report custom validation or generate extra files at build time. Note that this is still experimental and the APIs may change. (120a339)
  • Scopes are no longer allowed on @Module elements. They never had a function and are now disallowed. (beeb29d)
  • Clarified DaggerBroadcastReceiver documentation with respect to when injection is performed (a49cee0)
  • Fix some cases of the Kythe plugin (412c879)
  • Fixed a bug with @Provides/@Produces methods in generic modules. (716dbcf)
  • FluentFuture is now a supported return type of @ProductionComponent and @Produces methods. (c98f88f)
  • Always parameterize Optional.<Foo>absent/empty() to fix a javac7 issue (83459f2)

Dagger 2.14.1

19 Dec 23:28
Compare
Choose a tag to compare
  • Fix a NoClassDefFound issue with 2.14 (4a202b7)

Dagger 2.14

19 Dec 17:39
Compare
Choose a tag to compare
  • Fix JPMS issue with javax.annotation types (b04e769)
  • Remove dependency on JSR 305 annotations (02de197)
  • Fixed a compilation issue with Eclipse (4e74fce)
  • Adds a new error for component methods with type variables (71d0ad1)
  • Improved compilation times (8ddc04e)

An issue (#994) was discovered with this release - please use dagger-2.14.1 instead.

Dagger 2.13

07 Nov 18:33
Compare
Choose a tag to compare
  • Reductions in code size - code for repeated bindings is now placed in private methods instead of duplicating it throughout the component
  • dagger.android speed improvements:
    • Avoid calling Class.getCanonicalName(), which is slow on Android, during normal execution (c19f0c2)
  • dagger.grpc - update to gRPC 1.8 (19cc9f4)

Dagger 2.12

10 Oct 19:53
Compare
Choose a tag to compare
  • The following kind of bindings are now inlined in the generated components and do not need a Provider wrapper object (unless they are scoped or otherwise requested as a Provider).
    • Multibound Sets and Maps
      • If you have Guava on your classpath, these will be implemented using ImmutableSet/ImmutableMap too
    • Optional bindings
    • @Binds bindings
    • @BindsInstance bindings
    • Component dependencies
    • Subcomponent Builders
    • All members injection methods on a component
  • Unused Provider objects are now removed from components, which should speed up initialization times!
  • In Dagger Producers, a provision binding that is used in a producers context will no longer be cached.
  • Better support for running the dagger compiler with javac9

Dagger 2.11

07 Jun 15:03
Compare
Choose a tag to compare
  • Map multibindings are no longer in beta.
  • New API: @ContributesAndroidInjector simplifies the usage of dagger.android
  • All HasDispatching*Injectors are renamed to Has*Injector. They also return an AndroidInjector instead of a DispatchingAndroidInjector
  • Added DaggerApplication and DaggerContentProvider
  • auto-common is properly shaded again
  • dagger-android-processor works better with Gradle if you're not using dagger.android.support
  • First release of dagger-grpc
  • Fixes for #421 and #671
  • dagger-gwt is now being released again
  • @GwtIncompatible is propagated to generated factories

Dagger 2.11-rc2

03 May 20:57
Compare
Choose a tag to compare
  • dagger-android-processor works better with Gradle if you're not using dagger.android.support
  • First release of dagger-grpc
  • Fixes for #421 and #671
  • dagger-gwt is now being released again

Dagger 2.11 - Release Candidate

24 Apr 17:35
Compare
Choose a tag to compare
  • Map multibindings are no longer in beta.
  • New API: @ContributesAndroidInjector simplifies the usage of dagger.android
  • All HasDispatching*Injectors are renamed to Has*Injector. They also return an AndroidInjector instead of a DispatchingAndroidInjector
  • Added DaggerApplication and DaggerContentProvider
  • auto-common is properly shaded again

Dagger 2.10

20 Mar 17:47
Compare
Choose a tag to compare
  • Release of dagger.android classes to simplify injection of Android core types
  • By default, stop emitting "Prefer to run the dagger processor" warnings
  • Allow component builders' build() methods to return a supertype of the component
  • Generated components with @BindInstance methods in their builders no longer generate a static create() method, since it would always be invalid.

Dagger 2.10-rc4

13 Mar 16:59
Compare
Choose a tag to compare
  • Add dagger.android support for Services and BroadcastReceivers
  • Prevent scoping of AndroidInjector.Factorys
  • Compiled code now has debug information (javac -g)
  • dagger.android.processor can be used without dagger.android.support on the classpath