What’s New

Koin 4.2.0-beta3

4.2.0-beta3Pre-release

4.2.0-beta3

⚠️ ViewModelScope Declaration Requirement Updated

Experimental Feature: The automatic scope creation for ViewModel constructor injection now requires ViewModel declarations to be part of the viewModelScope section. If declared outside, injection will look in the root scope instead of the ViewModel scope, causing resolution failures.

  // Injection against root scope
  viewModel { MyViewModel(get()) }

  // Injection against viewModel scope
  viewModelScope {
      viewModel { MyViewModel(get()) }
  }
Koin Compiler Plugin Support API

New Plugin Support API for Koin Annotations compiler plugin integration:

  • ModuleExt - Module extensions for plugin-generated code
  • CreateDSL - DSL for plugin code generation
  • BaseDSLExt - Base DSL extensions
  • ApplicationDSLExt - Application-level DSL extensions
  • ViewModelDSLExt / ViewModelModuleExt - ViewModel support for plugin
  • WorkerDSLExt / WorkerModuleExt - Android Worker support for plugin
Bug Fixes
Features & Improvements
Libraries & Dependencies
  • Kotlin 2.3.20-Beta1
  • Coroutines 1.10.2
  • Compose Multiplatform 1.10.0
  • AndroidX Lifecycle 2.10.0 / JetBrains Lifecycle 2.9.6
  • AndroidX Navigation 2.9.6 / JetBrains Navigation 2.9.1
  • AndroidX Navigation3 1.0.0
  • Ktor 3.3.3
Other
  • Clean up koin-fu + koin-annotations beta3 plugin by @arnaudgiuliani (932c1540)
  • Moved koin-fu lib to Koin beta3 plugin by @arnaudgiuliani (a9daf9bf)
  • KDoc update for EntryProvider by @arnaudgiuliani (0539c48b)
  • Delete CHANGELOG.md by @jvanderwee in https://github.com/InsertKoinIO/koin/pull/2308
New Contributors

Full Changelog: https://github.com/InsertKoinIO/koin/compare/4.2.0-beta2...4.2.0-beta3

View original

Discussion