Releases: derklaro/aerogel
Releases · derklaro/aerogel
v2.1.0
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
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
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
toInjectionContext
to lookup an instance which was created during the current injection lifecycle - Misc build dependency updates
v1.2.0
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 ainstance(Class<T>)
method for defined type instance accessProvider
has now a lot of new methods for easier work with themInjectionContext
now exposes the overridden types passed via the buildInjectionContext
now exposes the element which gets currently constructed
v1.1.0
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
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