4.2.0-beta4
Koin 4.2.0-beta4
New Features
Ktor 3.4 DI Bridge Integration (https://github.com/InsertKoinIO/koin/pull/2294)
- Added KoinDependencyMapExtension implementing Ktor 3.2+'s DependencyMapExtension interface (https://github.com/InsertKoinIO/koin/commit/00496cc6bef9e322ae171ab4c7f337a8fb6cbb0b)
- Bidirectional dependency resolution between Koin and Ktor DI:
- Koin can resolve Ktor DI dependencies via KtorDIExtension
- Ktor DI can resolve Koin dependencies via KoinDependencyMap
- New KoinKtorApplication DSL for explicit bridging configuration options (https://github.com/InsertKoinIO/koin/commit/53cfc64ddb8621d2a74987e719a4c25e0b53c1ae)
- SPI registration for automatic extension discovery
- New sample application demonstrating Koin + Ktor DI usage
Koin Plugin Support Improvements
- Adjusted KoinApplication.withConfiguration() API support (https://github.com/InsertKoinIO/koin/commit/c4a5dcb19e1d8308a010f781340025b7f7f78f59)
- Enhanced ApplicationDSLExt with additional plugin/module DSL extensions
- Added Koin instance extension methods for better integration support
Bug Fixes
- Module flatten order error (https://github.com/InsertKoinIO/koin/pull/1999, https://github.com/InsertKoinIO/koin/issues/1998) - Fixed incorrect module flattening order that could cause dependency resolution issues
- Fixed Qualifier conversion in Ktor DI bridge (https://github.com/InsertKoinIO/koin/commit/90edf60842dd72896468f19b7ac6059150b44418)
Dependencies
- Updated to Ktor 3.4.0-eap-1520 (https://github.com/InsertKoinIO/koin/commit/75d43066ddee65e78950a052e265fdac3fa7e73b)
Note: This release requires the Ktor EAP repository. Add the following to your settings.gradle.kts:
maven("https://maven.pkg.jetbrains.space/public/p/ktor/eap")
Full Changelog: https://github.com/InsertKoinIO/koin/compare/4.2.0-beta3...4.2.0-beta4