Releases: avaje/avaje-inject
4.1
3.1
4.0 (jakarta.inject)
jakarta.inject release
This release is functionally the same as 3.0 but depends on and uses jakarta.inject
#82 - Change to jakarta.inject from javax.inject
3.0 (javax.inject)
breaking change
#81 - Refactor BeanContextBuilder extract interface, use static newBuilder()
#80 - Refactor remove BuilderFactory and move newBuilder() methods to Builder interface
#73 - Add @priority and make it the default
issues
#79 - Tidy, no functional change - add finals, suppress rawtypes and dinject to avaje inject refactor
#78 - Simplify to just use local @generated annotation
#76 - Add javadoc comments into generated code
#77 - More annotation-api tweaks - by norrisjeremy
#75 - Tweaks for PostConstruct/PreDestory changes - by norrisjeremy
#72 - Support using any Priority annotation for sorting
#71 - Add io.avaje.inject @PostConstruct/@PreDestroy annotations
#70 - Change inject-generator to detect any @PostConstruct @PreDestory in any package - so javax.annotation, jakarta.annotation etc
#68 - Fix for JPMS case where requires java.annotation is missing (so module path issue)
#67 - Fix version for inject-test. - by norrisjeremy
#66 - Add support for method based injection. enhancement - by norrisjeremy
2.0
2.0 Bump
This release supports java module system using a Multi-Release jar. Code compiled to Java 8 with an additional /META-INF/versions/9/module-info.class as Java 9.
Additionally note that the io.avaje.inject.core
package has been renamed to be spi
but this should only require a clean rebuild / clean re-generation of the di source code.
#53 - Support java module system (jpms) via Multi-Release jar with module-info - [was Minimum Java 11...]
#59 - Add jpms module-info using Multi-Release jar refactor
#65 - Generate _di$BeanContextFactory rather than _di$Factory ... (nicer with explicit java module use)
#64 - Skip import on interface when no package
#63 - Refactor rename package io.avaje.inject.core to io.avaje.inject.spi
Example module-info for people using java modules is:
import io.avaje.inject.spi.BeanContextFactory;
module example {
requires java.annotation;
requires io.avaje.inject;
provides BeanContextFactory with org.example._DI$BeanContextFactory;
// where _DI$BeanContextFactory is the generated source code
}