0.15.1
The 0.15.1
version is built using these major dependencies:
library | version |
---|---|
Anvil | 2.4.2 |
Dagger | 2.43.2 |
Kotlin | 1.7.0 |
androidx.compose | 1.2.1 |
androidx.core | 1.2.0 |
androidx.work | 2.7.1 |
androidx.activity | 1.5.1 |
androidx.fragment | 1.5.2 |
androidx.lifecycle | 2.5.1 |
androidx.savedstate | 1.2.0 |
🐛 Bug Fixes
- Fragment lookup for compose ViewModelStoreOwner fix @jakoss (#527)
- Qualifier Annotation Fix @oldwomanjosiah (#513)
- make benchmarks results Windows-friendly @rbusarow (#531)
🧰 Maintenance
- Update dependency com.autonomousapps.dependency-analysis to v1.13.1 (#541)
- Update dependency mathjs to v11.1.0 (#540)
- Update dependency io.mockk:mockk to v1.12.7 (#533)
- Update dependency com.autonomousapps.dependency-analysis to v1.13.0 (#535)
- Update square-anvil to v2.4.2 (#538)
- revert paging-compose to 1.0.0-alpha14 (#539)
- Update dependency androidx.paging:paging-compose to v1.0.0-alpha16 (#434)
- use
gradle-build-action
for caching in instrumented tests and add AVD caching (#536) - Update dependency mdx-mermaid to v1.3.2 (#532)
- Update dependency org.robolectric:robolectric to v4.8.2 (#534)
- Update dependency mermaid to v9.1.6 (#529)
- Update dependency androidx.test:orchestrator to v1.4.1 (#436)
- Update coil to v2.2.0 (#528)
- Update androidx-fragment-version to v1.5.2 (#521)
- Update google-dagger to v2.43.2 (#476)
- Update androidx-compose-runtime to v1.2.1 (#522)
- Update dependency gradle to v7.5.1 (#520)
- Update kotest to v5.4.2 (#523)
- Update dependency androidx.appcompat:appcompat to v1.5.0 (#524)
- Update dependency com.android.tools.build:gradle to v7.2.2 (#518)
- Update docusaurus monorepo to v2.0.1 (#514)
- Update dependency com.autonomousapps.dependency-analysis to v1.12.0 (#516)
- Update dependency Chart.js to v3.9.1 (#517)
- Update dependency mermaid to v9.1.5 (#519)
- Update dependency com.autonomousapps.dependency-analysis to v1.11.3 (#512)
- Update kotest to v5.4.1 (#510)
- Update dependency com.autonomousapps.dependency-analysis to v1.11.2 (#511)
- Update dependency com.autonomousapps.dependency-analysis to v1.11.1 (#509)
New Contributors
- @jakoss made their first contribution in https://github.com/RBusarow/Tangle/pull/527
Contributors
@RBusarow, @jakoss and @oldwomanjosiah
Full Changelog: https://github.com/RBusarow/Tangle/compare/0.15.0...0.15.1
0.15.0
The 0.15.0
version is built using these major dependencies:
library | version |
---|---|
Anvil | 2.4.1 |
Dagger | 2.43 |
Kotlin | 1.7.0 |
androidx.compose | 1.2.0 |
androidx.core | 1.2.0 |
androidx.work | 2.7.1 |
androidx.activity | 1.5.1 |
androidx.fragment | 1.5.1 |
androidx.lifecycle | 2.5.1 |
androidx.savedstate | 1.2.0 |
🐛 Bug Fixes
- Allow Fragment::arg with nullable parameters @oldwomanjosiah (#420)
Contributors
@RBusarow, @oldwomanjosiah
0.14.1
🐛 Bug Fixes
🧰 Maintenance
- Bump activity-ktx from 1.3.1 to 1.4.0 (#372)
- Bump navigation-ui-ktx from 2.4.0-alpha10 to 2.4.0-beta01 (#371)
- Bump auto-common from 1.1.2 to 1.2 (#364)
- Bump room-compiler from 2.4.0-alpha04 to 2.4.0-alpha05 (#357)
- Bump prismjs from 1.24.1 to 1.25.0 in /website (#363)
- Bump axios from 0.21.1 to 0.21.4 in /website (#362)
0.14.0
🐛 Bug Fixes
- Gradle plugin will now automatically enable/disable Tangle features depending upon which Androidx dependencies a module has. (#353)
- see the Gradle plugin docs for more information
🧰 Maintenance
0.13.2
🐛 Bug Fixes
- make TanglePlugin apply the Anvil plugin eagerly (#339)
0.13.1
🚀 Features
- The Tangle Gradle Plugin will now automatically apply the Anvil Gradle plugin if it hasn't been applied already. There is no change to behavior if Anvil was already applied manually, or if Anvil is applied later on in configuration. (#333)
🐛 Bug Fixes
- The Tangle Gradle Plugin will now correctly detect existence of the Android Gradle Plugin (#333)
- The website's "get started" button point to configuration doc (#331)
🧰 Maintenance
- Bump com.osacky.doctor from 0.7.1 to 0.7.2 (#329)
- Bump kotest-property-jvm from 4.6.2 to 4.6.3 (#328)
- Bump lifecycle-viewmodel-compose from 1.0.0-alpha07 to 2.4.0-beta01 (#327)
- Bump navigation-runtime-ktx from 2.4.0-alpha08 to 2.4.0-alpha09 (#326)
- update Dokka to 1.5.30 (#324)
- update Gradle Plugin Publish to 0.16.0 (#325)
- Bump gradle-maven-publish-plugin from 0.17.0 to 0.18.0 (#322)
- Bump junit-jupiter-api from 5.7.2 to 5.8.0 (#321)
- Bump ktlint-gradle from 10.1.0 to 10.2.0 (#312)
0.13.0
🚀 Features
- add member injection (#309)
@TangleScope(UserScope::class)
class UserActivity : Activity() {
@Inject
lateinit var logger: MyLogger
override fun onCreate(savedInstanceState: Bundle?) {
// inject MyLogger
TangleGraph.inject(this)
super.onCreate(savedInstanceState)
logger.log("started UserActivity")
}
}
💥 Breaking Changes
- rename
TangleGraph.init()
toTangleGraph.add()
(#299) - make :tangle-api a regular jar artifact (#289) (not really a breaking change though?)
🧰 Maintenance
- Bump moshi-ksp from 0.13.0 to 0.14.0 (#307)
- Bump auto-service-ksp from 0.5.5 to 1.0.0 (#308)
- Bump Androidx Work to 2.6.0 (#277)
- Bump AGP to 7.0.2 (#278)
- Bump compose from 1.0.1 to 1.0.2 (#262)
0.12.1
🐛 Bug Fixes
- fix
by tangleViewModel
ignoresComponentActivity
orFragmentActivity
(#228) - fix
by tangleViewModel
in a Fragment attempts to initialize eagerly (and crashes) (#227)
🧰 Maintenance
- update Anvil to 2.3.4 (#251)
0.12.0 - Worker Injection
🚀 Features
- WorkManager/Worker Assisted injection is now supported (#180)
@TangleWorker
class MyWorker @AssistedInject constructor(
@Assisted
context: Context,
@Assisted
params: WorkerParameters,
val repository: MyRepository
) : CoroutineWorker(context, params) {
override suspend fun doWork(): Result {
// ...
}
}
💥 Breaking Changes
- The
by tangleViewModel()
delegate functions forActivity
andFragment
have been moved to their own modules. (#204) This was done to prevent leaking the Androidx transitive dependencies into projects which don't otherwise use them. The new artifacts are:com.rickbusarow.tangle:tangle-viewmodel-activity
com.rickbusarow.tangle:tangle-viewmodel-fragment
TangleGraph
has moved:tangle-api
(tangle.inject.TangleGraph
) (#169)ViewModel
-related s feature toggles in the Gradle plugin have been moved. old:new:tangle {
viewModelsEnabled.set(true)
composeEnabled.set(true)
}tangle {
viewModelOptions {
enabled = true // default is true
composeEnabled = true // default is false
}
}
🐛 Bug Fixes
- fix wrapping of very long checkNotNull error messages (#162)
0.11.5
🐛 Bug Fixes
- fix the package for the compose tangleViewModel (#146)
- disable BuildConfig for Android libraries (#145)
- fix compose tangleViewModel package (#147)
🧰 Maintenance
- kotlin dependency updates (#143)
ℹ️ Website
- prepare for 0.11.5 release (#148)
- fix the package for the compose tangleViewModel (#146)
- create version 0.11.4 (#128)
0.11.4
🐛 Bug Fixes
- fix ViewModel duplicate bindings (#127)
- only create FragmentFactory and _Subcomponent.Factory bindings once in each
classpath (#124)
- issue (#123)
🧰 Maintenance
- create
release.sh
(#126)
0.11.2
Changes
🐛 Bug Fixes
- create default multi-bindings for ViewModels (#116)
🧰 Maintenance
ℹ️ Website
0.11.1
🐛 Bug Fixes
- update applied paths in TanglePlugin #110
🧰 Maintenance
- Bump constraintlayout from 2.0.4 to 2.1.0 ( Dependabot) #108
- update version to 0.11.1 #109
- add release-drafter #106
0.11.0 - Fragment Injection
- add
require
function which throws TangleCompilationException #6 - Docusaurus #7
- update api dump #47
- replace kotlinter with ktlint-gradle #45
- initial Dokka setup #46
- basic knit setup #48
- automatically deploy website for every merge into main #49
0.10.0 - ViewModel Injection
Initial release
This release supports multi-bound ViewModel
injection via the by tangle()
delegate function,
with Compose support.
Automatic SavedStateHandle
injection is supported, and arguments can be automatically
constructor-injected via the @FromSavedState("myKey")
annotation.