Releases: avaje/avaje-inject
9.1 | 9.1-javax
What's Changed
- Update module example by @SentryMan in #333
- Now can add scope hooks on the BeanScope builder by @SentryMan in #334
- Aspect.Import Annotation by @SentryMan in #335
- #336 - Fix dependency relationship with avaje-config by @rob-bygrave in #337
- Use alternative to ServiceLoader to load Plugin and PropertyRequiresPlugin by @rob-bygrave in #338
- Go back to regular ServiceLoader by @SentryMan in #339
- Will not fail compilation if
@Singleton
/@component are placed on Interfaces by @SentryMan in #340 - Proxy methods now add suppressed exceptions to Unchecked Exceptions by @SentryMan in #342
- Refactor rename Invocation.Build -> Invocation.Base by @rbygrave in #343
- Add Invocation.invokeUnchecked() ... for ease of use when aspect isn't dealing wth checked exceptions by @SentryMan in #344
- Fix Throwable Aspects by @SentryMan in #345
New Contributors
- @rob-bygrave made their first contribution in #337
Full Changelog: 9.0...9.1
9.0 | 9.0-javax
What's Changed
- Support Wiring Regular Maps and add
@QualifiedMap
for beans mapped by qualifier name by @SentryMan in #301 - Remove Deprecated Methods by @SentryMan in #305
- Static Processor Context by @SentryMan in #307
- Give BeanScopeProxy access to Builder by @SentryMan in #308
- Auto add nullable beans to auto-requires/Fix Proxy not writing
@Nullable
by @SentryMan in #311 - Update Javax/Jakarta Scripts to Add/Remove
-javax
in Parent Version. by @SentryMan in #313 - Log Wiring Time by @SentryMan in #314
- Add RequiresBean and RequiresProperty Annotations by @SentryMan in #312
- RequiresBean, RequiresProperties by @rbygrave in #315
- #312 Follow up for @requires - read repeatable container annotations by @rbygrave in #316
- Now Scripts will Add/Remove
-javax
even if there is no-SNAPSHOT
by @SentryMan in #317 - Update Requires Javadoc/Rename Missing Methods by @SentryMan in #318
- Support Meta-Annotations on Meta-Annotations by @SentryMan in #319
- Use ThreadLocal ProcessingContext by @SentryMan in #320
- Write Custom modules early (not in last round of processing) by @rbygrave in #321
- Use Single ThreadLocal in Processor by @SentryMan in #323
- Expose PropertyPlugin from BeanScopeBuilder by @SentryMan in #324
- Add get method to Property Plugin by @SentryMan in #325
- Make quickstart even quicker by @SentryMan in #326
- Make Plugin Provides a Default Method. by @SentryMan in #327
- use URI instead of URL contructor by @SentryMan in #329
- Tidy code generation for conditions on factory by @rbygrave in #330
- Add gradle plugin to discover modules and plugins in the classpath by @rbygrave in #331
Full Changelog: 8.13...9.0
8.13 | 7.13
What's Changed
- Inject is no longer an optional dependency for generators by @SentryMan in #282
- Fix shortName generation with wildcards by @SentryMan in #284
- Now doesn't register beans by annotations by @SentryMan in #286
- discord badge by @SentryMan in #287
- permanent discord link by @SentryMan in #288
- To make Plugins support both jakarta and javax versions we need to use Supplier by @rbygrave in #291
- Add scripts to perform Jakarta to Javax conversion (jakarta-to-javax.sh) by @rbygrave in #293
- Bump test dependency avaje-jsonb to 1.3-RC2 to support both javax and jakarta by @rbygrave in #294
- #292 - Add @bean(autoCloseable = true) option by @rbygrave in #296
- Use Prisms 1.4 IsPresent by @SentryMan in #297
- Support Wiring Primitives by @SentryMan in #300
- Remove Format Plugin by @SentryMan in #303
- Component Import Annotaion by @SentryMan in #302
Full Changelog: avaje-inject-8.12...8.13
8.12 | 7.12
What's Changed
- #253 - Fix for @secondary and @primary not used with @factory @bean methods by @rbygrave in #254
- #258 - ENH: Add Plugin API for 'default providers' and BeanScopeBuilder.provideDefault() methods by @rbygrave in #259
- Use different classloader for AP Plugin/Module ServiceLoader by @SentryMan in #263
- Use Aspect Provider instead of Concrete Aspect Target by @SentryMan in #268
- Update Aspect generation - add aspectProvides() meta data by @rbygrave in #270
- Add Aspect Auto Requires by @SentryMan in #271
- Auto-Require Maven Plugin - avaje-inject-maven-plugin by @SentryMan in #274
- avaje inject maven plugin (to automatically determine the provided components and plugins) by @rbygrave in #275
- Prisms 1.3/Turn Aspect Reader into a method by @SentryMan in #279
- #255 - Use fully qualified types for TYPE_ generic types (to avoid clash on short name imports)
- #256 - Support the case of @factory @bean that needs to use fully qualified class name (short name clashes)
- #257 - Make generated classes final
- #259 #258 - ENH: Add Plugin API for 'default providers' and BeanScopeBuilder.provideDefault() methods
- #260 - ENH: Enhance @InjectTest with support for @setup methods & when @Inject, @mock provide values use them
- #261 - ENH: Improve generated code for aspects - not generate the unused $DI as we only use the $Proxy$DI
- #262 - ENH: Simplify multi-module compilation and wiring by auto detecting provides and requires
- #269 - AutoProvideAspects doesn't work as expected
- #272 - AutoRequires doesn't work when using mvn compiler plugin.
- #276 - Ideally avaje-inject-generator should not depend on avaje-inject
- #277 - Use Avaje Prisms instead of referencing annotations directly
Full Changelog: avaje-inject-8.11...avaje-inject-8.12
avaje-inject-8.11
What's Changed
- Add Quick Start to README by @SentryMan in #246
- #243 - Fix for ClassCastException with generic types by @rbygrave in #248
- Now class aspects are included with method aspects by @SentryMan in #249
- Fixes Aspects not working for Certain Types by @SentryMan in #251
- #251 - Adjustments for fixing Aspects on methods with generic parameters by @rbygrave in #252
New Contributors
- @SentryMan made their first contribution in #246
Full Changelog: avaje-inject-8.10...avaje-inject-8.11
8.10 | 7.10
8.9 | 7.9
8.8 | 7.8
8.7 | 7.7
avaje-inject-8.6
Issues
#229 - Custom scope with @InjectModule
can mess up the "default module @InjectModule
" bug
#228 - Support generic super types e.g. CRUDService<T, KeyType> extends ReadService<T, KeyType>, ... bug
#226 - Injecting Generics refactor and fix
#224 - Injecting Generics with a Context generates bad code. bug
Enhancements
#230 #231 - ENH: Add support for injecting into Map<String,T> (by qualifier)
#227 - Gradle : Full recompilation is required because io.avaje.inject.generator.Processor is not incremental
#225 - Add BeanScope.list(Type) to support generic types enhancement