Releases: JuulLabs/kable
Releases · JuulLabs/kable
0.24.0
- Expose
Advertisement
as interface and provide platform specificScanner
interfaces (#479), thanks to @charlee-dev for reporting
Android
- Expose
AndroidPeripheral.type
(#496) - Replace usages of deprecated
getDefaultAdapter
withBluetoothManager
(#483), thanks to @StanislavChumarin for reporting - Improve location services monitoring for bluetooth availability (#467), special thanks to @mmaleiter for the contribution
Apple
- Simplify internal lifecycle of
Peripheral
(#491) - Replace
Semaphore
withMutex
inConnection
(#490) - Reduce reliance on
CoroutineScope
withinPeripheral
(#489) - Introduce
SharedRepeatableAction
for handling connect (#488)- Fixes #339, thanks to @ln-12 for reporting and @rafaelfrancisco-dev for testing
- Fixes #458, thanks to @azlekov for reporting
- Drop
iosArm32
target (#476)
🧰 Maintenance
- Update coroutines to v1.7.1 (#482)
- Update dependency androidx.core:core-ktx to v1.10.1 (#465, #481)
- Update dependency com.benasher44:uuid to v0.7.1 (#493)
- Update dependency gradle to v8.1.1 (#466)
- Update dependency org.jetbrains.kotlin.multiplatform to v1.8.21 (#451, #472)
- Update mheap/github-action-required-labels action to v4 (#471)
- Update plugin android-library to v8.0.2 (#473, #477, #487)
- Update plugin maven-publish to v0.25.2 (#470)
- Update tuulbox to v6.4.1 (#478)
- Use JDK 17 on CI (#475, #486)
0.23.0
- Introduce platform specific
Peripheral
interfaces (#447) - Fix "Subsequent reads hang after read fails with
GattRequestRejectedException
" (#450, #453), special thanks to @matejbart for the contribution, and thanks to @joharei and @cleveard for testing
Android
- Bump Android compile SDK to 33 (#455)
- Add
address
property toAndroidPeripheral
(#463) - Replace deprecated
inline
class modifier withvalue
(#456)
🧰 Maintenance
- Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.20.2 (#452, #460)
- Use Android source set layout version 2 (#457)
- Suppress native dependency warnings to quiet AtomicFU warnings (#459)
- Update plugin maven-publish to v0.25.1 (#449, #461)
- Use new Kotlinter syntax for disabling rules (#448)
- Update plugin kotlinter to v3.14.0 (#446)
- Remove references to old memory model in documentation (#444)
0.22.0
- Remove
co.touchlab:stately-iso-collections
dependency (#437), thanks to @volo-droid for identifying this issue - Extract exceptions module (#441)
- Add
Bluetooth.BaseUuid
utility for short UUIDs (#421) - Escalate deprecations (#418)
- Drop
LEGACY
JavaScript compiler support (#419)
Android
- Reduce reliance on
CoroutineScope
(#427)
🧰 Maintenance
- Update plugin dokka to v1.8.10 (#443)
- Define Android namespace via Gradle (#434)
- Remove usages of deprecated
targetSdk
(#435) - Update dependency gradle to v8.0.2 (#431, #442)
- Update plugin android-library to v7.4.2 (#425, #422, #439)
- Update dependency com.benasher44:uuid to v0.7.0 (#440)
- Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.20.0 (#436)
- Update binary-compatibility-validator to v0.13.0 (#432)
- Remove documentation re: enabling new memory model (#428)
- Update dependency org.jetbrains.kotlin.multiplatform to v1.8.10 (#397, #424)
- Update plugin maven-publish to v0.24.0 (#423, #426)
0.21.0
Advertisement.name
has changed and now pulls the name from the backing scan record. For the previous behavior (pulling from the backing bluetooth device name, which is often cached), use Advertisement.peripheralName
.
🚀 Changes
- Discard response after GATT operation cancellation (#376) — thanks to @joharei for reporting and testing the issue
- Rework filter support to have a common API on all platforms (#408, #396, #415) — thanks to @PavlosTze for contributing to this effort
- Add
Bluetooth.availability
flow (#335, #411) - Retrieve
Advertisement.name
from advertisement data (#403, #401) — thanks to @azlekov and @BluestormDNA for contributing to this effort - Add property to
Advertisement
to indicate if peripheral is connectable (#404)
Android
- Bump Android compile/target API to 31 (#409)
🧰 Maintenance
0.20.1
0.20.0
Android
- Use shared bluetooth state
BroadcastReceiver
(#369), thanks to @nverinaud for reporting the issue and verifying the fix
Apple
🧰 Maintenance
0.19.0
0.18.1
- Reset observation state on connect if there are no subscribers (#368), thanks to @francismariano for reporting and @ebabel for verifying the fix
- Simplify
toString
representation ofState
(#364), special thanks to @ebabel for the contribution
🧰 Maintenance
- Configure release drafter for auto versioning (#373)
- Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.18.3 (#361)
- Update dependency gradle to v7.5.1 (#372)
- Update plugin android-library to v7.2.2 (#370)
- Update JamesIves/github-pages-deploy-action action to v4.4.0 (#362)
- Update dependency gradle to v7.5 (#363)
- Simplify CI by only running on MacOS (#360)
0.18.0
🚀 Changes
Android
- Add property for retrieving raw bytes of scan record (#357), special thanks to @kemalfaust for the contribution
🧰 Maintenance
- Update plugin dokka to v1.7.10 (#353)
- Update plugin maven-publish to v0.21.0 (#355)
- Update coroutines to v1.6.4 (#352)
- Update tuulbox to v6.3.0 (#350)
- Update dependency com.benasher44:uuid to v0.5.0 (#354)
- Update dependency org.jetbrains.kotlin.multiplatform to v1.7.10 (#351)
- Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.18.2 (#348)
- Update JamesIves/github-pages-deploy-action action to v4.3.4 (#346)
- Use Temurin 11 JDK for CI (#347)
0.17.2
🚀 Changes
Apple
- Add
macosArm64
target tolog-engine-tuulbox
(#343)
JavaScript
- Log characteristic write type on JavaScript (#329)
🧰 Maintenance
- Update coroutines to v1.6.3 (#333)
- Update plugin dokka to v1.7.0 (#344)
- Update dependency com.benasher44:uuid to v0.4.1 (#338)
- Update dependency org.jetbrains.kotlin.multiplatform to v1.7.0 (#340)
- Update plugin maven-publish to v0.20.0 (#336)
- Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.17.3 (#330)
- Update plugin android-library to v7.2.1 (#328, #331)