📗 Links
⭐ New Features
- Consider filter configuration in
AotMappingContext#3475 - Add
TypedPropertyPathFeatureto lambda reachability metadata #3466 - Stop supporting params not annotated with
@ProjectedPayload#3453 - Eagerly initialize auditing metadata for known persistent entities #3442
- Auditing causes global lock contention during first initialization under high concurrency #3441
- Use shared instance of DefaultParameterNameDiscoverer #3432
- Set
ApplicationEventPublisheron repository factory if it implementsApplicationEventPublisherAware#3424 - Introduce first-class type-safe property path references at the core level #3409
- Introduce first-class type-safe property path references at the core level #3400
- Stop supporting params that are not annotated with
@ProjectedPayload(4.1.x) #3301 - Stop proxying non-annotated web handler method params #3298
- Migrate to JSpecify annotations for nullability constraints #3170
- Add
nullHandlingto@SortDefault#3153 - Allow specifying default null handling for
Sortresolution #3152 - Add
@Transientproperties toPersistentEntityand use value defaulting for transient constructor properties #2985
🐞 Bug Fixes
- Skip type inspection for transient properties. #3486
- Exception trying to persist transient field when using MongoDb #3485
- AotMappingContext needs to consider type filter configuration #3474
ClassGeneratingPropertyAccessorFactoryfails to generate property accessor for types with staticwith…methods #3472- Ignore events of unrelated
BeanFactoryinDeferredRepositoryInitializationListener#3461 DeferredRepositoryInitializationListenertriggers repository initialization on child context events #3459- Render method parameter annotations in AOT repositories #3458
- Remove
Assert#notNullfor nullableLink#3454 - Incorrect null assertion in
SlicedResourcesAssembler.toEmptyModel#3452 - Retrieve Environment via RegisteredBean #3415
- Retrieve Environment from RegisteredBean #3414
ReturnedClasseagerly resolves input parameters resulting in logging for parameters that are potentially not required #3410
📔 Documentation
- Update Documentation #3484
- Refine public API Javadoc descriptions #3465
- Fix missing braces #3462
- Fix a/an in Javadoc #3440
- Refine Fluent Query reference documentation #3419
- Update reactive auditing documentation considering
Authenticationcan benull#3413 - Fix incorrect or incomplete Javadoc in public APIs #2602
- Refine Antora-build #2797
- Add Readme templates #2758
🔨 Dependency Upgrades
- Upgrade to Maven Wrapper 3.9.16 #3489
- Upgrade to Kotlin 2.3.20-RC2 #2813
- Upgrade to Kotlin 2.3.10 #2772
❤️ Contributors
We'd like to thank all the contributors who worked on this release!