Skip to content

Releases: derklaro/aerogel

v2.1.0

25 Apr 19:33
0b0761e
Compare
Choose a tag to compare

What's Changed

  • Added AnnotationPredicate#annotationValues() that exposes the values of each annotation declared method in a method-name to value map (this can for example be used to create a value based on an annotation value, see https://github.com/derklaro/aerogel/blob/v2/src/test/java/dev/derklaro/aerogel/MatchingElementBindingTest.java)
  • Ensure to always unwrap the inner value of a "KnownValue" returned by a binding provider. An error could be triggered by f. ex. applying the singleton scope multiple times to a binding which causes an invalid unwrap of the KnownValue.
  • Fixed a memory leak caused by each injector storing each binding of the injector tree when first requested.

Dependency

Maven:

<dependency>
  <groupId>dev.derklaro.aerogel</groupId>
  <artifactId>aerogel</artifactId>
  <version>2.0.0</version>
</dependency>

Gradle:

implementation("dev.derklaro.aerogel:aerogel:2.0.0")

Releases can take up to 20 minutes to show up in Maven-Central.

Full Changelog: v2.0.0...v2.1.0

v2.0.0

30 Jan 10:24
c47c2c1
Compare
Choose a tag to compare

Initial release of v2. This release contains major improvements over v1 and should be much more stable and reliable overall (listing all changes is impossible, as the whole internal core was rewritten). The readme was updated to contain new examples on how to use v2.

Dependency

Maven:

<dependency>
  <groupId>dev.derklaro.aerogel</groupId>
  <artifactId>aerogel</artifactId>
  <version>2.0.0</version>
</dependency>

Gradle:

implementation("dev.derklaro.aerogel:aerogel:2.0.0")

Releases can take up to 20 minutes to show up in Maven-Central.

v1.3.0

08 Oct 13:48
Compare
Choose a tag to compare

Bugfix / Features release of aerogel:

  • Improved generated code for creating instances
  • Improved handling of circular dependencies
  • Fixed that injection a type two times on a non-proxied type will result in the same instance even if the type is no a singleton
  • Fixed that factory methods do not respect singletons when taking no arguments
  • An InjectionContext now returns current context when requested during construction
  • Added findConstructedValue to InjectionContext to lookup an instance which was created during the current injection lifecycle
  • Misc build dependency updates

v1.2.0

01 Oct 07:24
Compare
Choose a tag to compare

Bugfix / Features release of aerogel:

  • Fix that overridden types given to an InjectionContext are ignored after the first construction
  • The release manifest jar has now some useful information and an automatic module name set
  • The release pom now contains all repositories which are used for dependency lookups
  • Getting an Injector instance from an Injector will now always return the current injector instance, never the parent one
  • All exception types were replaced with an AerogelException for a better workflow
  • Injector now has a instance(Class<T>) method for defined type instance access
  • Provider has now a lot of new methods for easier work with them
  • InjectionContext now exposes the overridden types passed via the build
  • InjectionContext now exposes the element which gets currently constructed

v1.1.0

29 Sep 15:38
Compare
Choose a tag to compare

Bugfix / Features release of aerogel:

  • Bindings are now taking qualifier information from the associated class or method
  • Auto annotation detection for @Provider works now as expected
  • The auto module will now be tested during the compile time
  • AerogelException is now fully documented

v1.0.0

28 Sep 14:09
Compare
Choose a tag to compare

Initial release of aerogel:

  • Full jsr 330 compatibility (constructor & member injection)
  • Dynamic creation of instances and bindings when possible
  • Circular dependency handling
  • Automatic bindings of @Factory and @Provides annotation when using the auto module
  • Kotlin extensions for easier generic work when using kotlin