Releases: jordond/connectivity
2.0.1
2.0.0
What's Changed
- Feature: Add tests for core functionality by @jordond in #95
- Fix memory leak by cancel job in Coroutine scope by @aptech73 in #104
- fix(deps): update kotlin to v2.1.20 by @renovate in #116
- Chore: Remove deprecated Connectivity code by @jordond in #92
- Tests: Add tests for core functionality by @jordond in #9
BREAKING CHANGES
- Removed
Connectivity.Update
class,Connectivity.updates
flow andConnectivity.activeUpdates
.- This class was removed so you need to use
Connectivity.status
- To get the monitoring status use
Connectivity.monitoring
orConnectivity.isMonitoring
.
- This class was removed so you need to use
Connectivity.isMonitoring: StateFlow<Boolean>
renamed toConnectivity.monitoring
- Added
Connectivity.isMonitoring: Boolean
to replace theisMonitoring
fromConnectivity.Update
Migration
If you were using Connectivity.updates
you need to migrate to the following:
// Old
connectivity.updates.collect { update ->
updateState { state ->
state.copy(
monitoring = update.isActive,
status = update,
)
}
}
// New
connectivity.statusUpdates.collect { status ->
updateState { state ->
state.copy(status = update, monitoring = connectivity.isMonitoring)
}
}
If you need to also reactively update the monitoring status as well, you can do the following:
launch {
connectivity.statusUpdates.collect { status ->
updateState { state -> state.copy(status = update) }
}
}
launch {
connectivity.monitoring.collect { isMonitoring ->
updateState { state -> state.copy(monitoring = isMonitoring) }
}
}
Or you can use Flow.merge
:
connectivity.monitoring.combine(connectivity.statusUpdates) { isMonitoring, status ->
updateState { state ->
state.copy(status = update, monitoring = isMonitoring)
}
}.collect()
Dependencies
- fix(deps): update kotlin to v2.1.20 by @renovate in #116
- fix(deps): update agp to v8.9.2 by @renovate in #127
- chore(deps): update dependency dev.drewhamilton.poko to v0.18.6 by @renovate in #126
- fix(deps): update kotlin coroutines to v1.10.2 by @renovate in #122
- fix(deps): update ktor monorepo to v3.1.2 by @renovate in #120
- chore(deps): update dependency gradle to v8.14 by @renovate in #130
New Contributors
Full Changelog: 1.2.0...2.0.0-beta01
2.0.0-beta01
What's Changed
- Feature: Add tests for core functionality by @jordond in #95
- Fix memory leak by cancel job in Coroutine scope by @aptech73 in #104
- fix(deps): update kotlin to v2.1.20 by @renovate in #116
- Chore: Remove deprecated Connectivity code by @jordond in #92
BREAKING CHANGES
- Removed
Connectivity.Update
class,Connectivity.updates
flow andConnectivity.activeUpdates
.- This class was removed so you need to use
Connectivity.status
- To get the monitoring status use
Connectivity.monitoring
orConnectivity.isMonitoring
.
- This class was removed so you need to use
Connectivity.isMonitoring: StateFlow<Boolean>
renamed toConnectivity.monitoring
- Added
Connectivity.isMonitoring: Boolean
to replace theisMonitoring
fromConnectivity.Update
Migration
If you were using Connectivity.updates
you need to migrate to the following:
// Old
connectivity.updates.collect { update ->
updateState { state ->
state.copy(
monitoring = update.isActive,
status = update,
)
}
}
// New
connectivity.statusUpdates.collect { status ->
updateState { state ->
state.copy(status = update, monitoring = connectivity.isMonitoring)
}
}
If you need to also reactively update the monitoring status as well, you can do the following:
launch {
connectivity.statusUpdates.collect { status ->
updateState { state -> state.copy(status = update) }
}
}
launch {
connectivity.monitoring.collect { isMonitoring ->
updateState { state -> state.copy(monitoring = isMonitoring) }
}
}
Or you can use Flow.merge
:
connectivity.monitoring.combine(connectivity.statusUpdates) { isMonitoring, status ->
updateState { state ->
state.copy(status = update, monitoring = isMonitoring)
}
}.collect()
Dependencies
- chore(deps): update dependency dev.drewhamilton.poko to v0.18.2 by @renovate in #91
- chore(deps): update dependency org.jetbrains.dokka to v2 by @renovate in #88
- fix(deps): update ktor monorepo to v3.1.1 by @renovate in #106
- fix(deps): update dependency androidx.activity:activity-ktx to v1.10.1 by @renovate in #113
- fix(deps): update dependency androidx.activity:activity-compose to v1.10.1 by @renovate in #112
- chore(deps): update plugin com.gradle.develocity to v3.19.2 by @renovate in #110
- fix(deps): update dependency androidx.fragment:fragment-ktx to v1.8.6 by @renovate in #107
- chore(deps): update dependency gradle to v8.13 by @renovate in #111
- fix(deps): update publish to v0.31.0 by @renovate in #115
- fix(deps): update agp to v8.9.1 by @renovate in #117
New Contributors
Full Changelog: 1.2.0...2.0.0-beta01
1.2.0
1.1.3
What's Changed
Highlights:
- Kotlin 2.0.21
- Ktor 3.0.0
- Gradle 8.10.2
This release removes the dependency on the experimental version of Ktor, and now uses the stable 3.0 release.
- Update dependency gradle to v8.10.1 by @renovate in #49
- Update agp to v8.7.1 by @renovate in #63
- Update voyager to v1.1.0-beta03 by @renovate in #58
- Update Kotlin by @renovate in #61
- Update dependency gradle to v8.10.2 by @renovate in #53
- chore: bump ktor to stable release by @abdallahmehiz in #68
- chore(deps): update dependency dev.drewhamilton.poko to v0.17.2 by @renovate in #67
New Contributors
- @abdallahmehiz made their first contribution in #68
Full Changelog: 1.1.2...1.1.3
1.1.2
What's Changed
If you target iOS and you use the device
artifact. It is highly recommended to update to this version. As the previous version has a bug where status updates are not emitted.
Dependencies
Full Changelog: 1.1.1...1.1.2
1.1.1
What's Changed
Dependencies
- Update dependency co.touchlab:kermit to v2.0.4 by @renovate in #12
- Update compose to v1.6.8 by @renovate in #13
- Update dependency androidx.lifecycle:lifecycle-runtime-ktx to v2.8.2 - autoclosed by @renovate in #14
- Update plugin com.gradle.develocity to v3.17.5 by @renovate in #15
- Update dependency androidx.fragment:fragment-ktx to v1.8.0 by @renovate in #16
- Update agp to v8.5.0 by @renovate in #17
Full Changelog: 1.1.0...1.1.1