2021-05-06
This is a maintenance release, just updating a few dependencies:
- Kotlin 1.5.0
- Android Gradle Plugin 4.2.0
- JDK 11
- ...and a few more
2021-02-08
This is a maintenance release, just updating a few dependencies:
- Kotlin 1.4.20
- Android Gradle Plugin 4.1.2
- Android build tools 30.0.3
2020-09-11
This is a maintenance release, just updating a few dependencies:
- Kotlin 1.4.0
- Android Gradle Plugin 4.0.1
- Android (target|compile)SdkVersion 30 (Android 11)
- Android build tools 30.0.2
androidx.fragment:fragment
1.2.5
2020-05-06
- Update dependencies
- Kotlin 1.3.72
- androidx.fragment 1.2.4
2020-03-04
- Update dependencies
- Kotlin 1.3.70
- androidx.fragment 1.2.2
2020-02-17
- Add
provider()
toModule
DSL
2020-01-29
- Bugfix:
alias()
& set-relatedget()
name arguments were limited toString
but should beAny
2020-01-27
- Update
androidx.lifecycle:lifecycle-viewmodel
dependency to version 2.2.0 - Update
androidx.lifecycle:lifecycle-viewmodel-savedstate
dependency to first stable version 1.0.0
2020-01-23
- Add support for Fragment instantiation through Katana with new artifact
katana-androidx-fragment
and KatanaFragmentFactory (also see FragmentFactory ofandroidx.fragment:fragment:1.2.0
)
2020-01-03
Happy New Year 🎉
- Add optional injection via injectOrNull() / getOrNull()
2019-12-04
With this release Santa Claus is bringing some premature Christmas presents 😉
- Add
alias
keyword for binding an existing declaration under a different type and/or name - Add
get
keyword insideset
declaration for assigning an existing dependency to a set - Update Kotlin to 1.3.61
- Remove deprecated functions & features
Special thanks to @dave08 for feature requests & feedback 🙂
Wishing all users happy holidays & a happy new year! 🎉
2019-10-21
- Bugfix: Fixed bug introduced in 1.8.2 regarding Activity ViewModel injection
2019-10-21
- AndroidX ViewModel support: Remove usage of deprecated
lifecycle-extensions
2019-10-18
- Rename module factory functions of
katana-android
artifact - Update AndroidX Lifecycle and ViewModel dependencies
2019-10-10
- Add
set
multi-binding functionality - Remove deprecated functions
- Deprecate old DSL and promote "compact" DSL to default DSL
- Note: Changes of this version are source but not binary compatible!
2019-08-29
- Update dependencies (Kotlin 1.3.50)
- Update
lifecycle-viewmodel-savedstate
to 1.0.0-alpha03
2019-06-05
- Add experimental support for ViewModel injection with saved state.
Please use artifactorg.rewedigital.katana:katana-androidx-viewmodel-savedstate:1.7.0-alpha01
.
2019-05-16
- Add
Component.Builder
pattern - Downgrade Android plugin to 3.3.2 (workaround for issue #7)
2019-04-29
savedInstanceState
is passed toKatanaFragment(Delegate)
- Kotlin dependency has been updated to 1.3.31.
2019-04-23
- Maintenance release. Kotlin dependency has been updated to 1.3.30.
2019-03-29
createModule()
andcreateComponent()
have been deprecated. Use constructors ofModule
andComponent
instead.
2019-03-28
- Fix initialization of transitive eager singletons
2019-03-26
- Allow
Any
references for dependency names.
Now String constants, Kotlinobject
s, enum classes and custom (data) classes representing a unique identity / equality can be used for names. - Modules may include other modules during declaration via
includes
attribute.
2019-03-18
-
Add AndroidX ViewModel support via new katana-androidx-viewmodel artifact.
Thanks to @inshiro for idea & initial code :)
2019-02-08
- Add a new, compact DSL for module declarations.
Imports must be updated! Either useorg.rewedigital.katana.dsl.classic
or the neworg.rewedigital.katana.dsl.compact
:createModule { factory { MyDependencyA() } singleton { MyDependencyB() } }
- Update Kotlin version to 1.3.21
2019-02-06
- Add
KatanaFragmentDelegate
andKatanaFragment
classes to Android artifact for simplifying usage of Katana with Fragments.
2019-02-04
- Implement
+
operator forComponent
, allowing different syntax for creating child components:val childComponent = component + childModule // or val childComponent = component + listOf(childModule1, childModule2) // or val childComponent = listOf(component1, component2) + childModule
2019-01-25
- Update Kotlin version to 1.3.20
2019-01-21
- First version deployed on JCenter
- No code changes
2019-01-09
- Fix wrong
OverrideException
for internal module declarations - Permit
null
values of (eager) singletons
2018-12-19
- Permit injection of
null
values - Permit internal module bindings
2018-12-17
- Improve injection performance
2018-12-14
- Add
MEMORY
andSPEED
profiles toAndroidEnvironmentContext
. Either choose between optimization of memory consumption or execution speed.
2018-12-14
- Add pluggable
EnvironmentContext
for optimizing Katana for specific runtime environments. See Android implementation. - Android artifact is now an Android library (AAR) with a dependency on AndroidX.
- Android artifact provides module factory functions for support
Fragments
.
2018-12-07
- Convert module DSL functions to extension functions for better code highlighting/readability.
This is a breaking change as
bind()
,factory()
etc. now have to be imported!
2018-12-07
- Add Android module factory functions to Android artifact
- Update Kotlin version to 1.3.11
2018-10-31
- Update Kotlin dependency to 1.3
2018-10-29
- First public release