Skip to content

Releases: JuulLabs/kable

0.25.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 07:33
0a09c98
  • Add identifier property to Advertisement object (#518), special thanks to @francismariano for the contribution
  • Promote identifier to property on Peripheral interface (#509), thanks to @rsicarelli for reporting the issue

Logo Android

  • Remove flowOn(Main.immediate) from advertisements (#537), thanks to @miwright2 for reporting the issue

⚠️ To retain the previous behavior, add flowOn(Dispatchers.Main.immediate) to your Scanner.advertisements operator chain(s), for example:

Scanner { /* .. */ }
  .advertisements
  .flowOn(Dispatchers.Main.immediate)
  .collect {
    // ..
  }

Logo Apple

  • Remove redundant logging of peripheral identifier (#502)

🧰 Maintenance

  • Update README with explicit note about peripheral scope (#527, #536), special thanks to @rocketraman for the contribution
  • Fix typo in Android permission documentation (#528), special thanks to @juliusmh for the contribution
  • (Android) Move BluetoothDeviceAndroidPeripheral to its own file (#514)
  • (Apple) Move CBPeripheralCoreBluetoothPeripheral to its own file (#512)
  • (JavaScript) Move peripheral creation functions to their own file (#513)
  • Add a unit test that validates that SharedRepeatableAction remains active (#501)
  • Only sign local Maven publication on merges to main (#530)
  • Update coroutines to v1.7.2 (#515)
  • Update dependency gradle to v8.2 (#526, #533)
  • Update dependency org.jetbrains.kotlin.multiplatform to v1.8.22 (#499, #534)
  • Update dependency org.jetbrains.kotlinx:atomicfu to v0.21.0 (#511, #520)
  • Update mheap/github-action-required-labels action to v5 (#510)
  • Update plugin dokka to v1.8.20 (#505)
  • Update plugin kotlinter to v3.15.0 (#506)
  • Update plugin maven-publish to v0.25.3 (#525)
  • Use gradle/gradle-build-action@v2 to simplify CI scripts (#498)
  • Use latest version of GitHub virtual environments (#531)
  • Use major-only version for github-pages-deploy-action (#495)

0.24.0

Choose a tag to compare

@github-actions github-actions released this 08 Jun 09:02
f71e085
  • Expose Advertisement as interface and provide platform specific Scanner interfaces (#479), thanks to @charlee-dev for reporting

Logo Android

  • Expose AndroidPeripheral.type (#496)
  • Replace usages of deprecated getDefaultAdapter with BluetoothManager (#483), thanks to @StanislavChumarin for reporting
  • Improve location services monitoring for bluetooth availability (#467), special thanks to @mmaleiter for the contribution

Logo Apple

  • Simplify internal lifecycle of Peripheral (#491)
  • Replace Semaphore with Mutex in Connection (#490)
  • Reduce reliance on CoroutineScope within Peripheral (#489)
  • Introduce SharedRepeatableAction for handling connect (#488)
  • 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

Choose a tag to compare

@github-actions github-actions released this 17 Apr 05:48
ccb9b60
  • 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

Logo Android

  • Bump Android compile SDK to 33 (#455)
  • Add address property to AndroidPeripheral (#463)
  • Replace deprecated inline class modifier with value (#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

Choose a tag to compare

@github-actions github-actions released this 13 Mar 20:13
f1ae9c2
  • 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)

Logo 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

Choose a tag to compare

@github-actions github-actions released this 10 Jan 19:20
468ec71

⚠️ Permissions change: Kable's permission configuration has changed, check Kable's Android Permissions documentation to ensure that your app's permission configuration is updated if needed.

⚠️ Behavior change: 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.

⚠️ API change: The scanner filtering support has been reworked to provide a common API across the supported platforms. New filters have also been added. Check out the updated Scanning documentation for details/examples.

🚀 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)

Logo Android

  • Bump Android compile/target API to 31 (#409)

🧰 Maintenance

  • Simplify documentation re: Android permissions setup (#416)
  • Update plugin maven-publish to v0.23.1 (#413)
  • Update mheap/github-action-required-labels action to v3 (#414)
  • Update plugin kotlinter to v3.13.0 (#407)
  • Update dependency gradle to v7.6 (#406)
  • Update tuulbox to v6.4.0 (#402)

0.20.1

Choose a tag to compare

@github-actions github-actions released this 14 Nov 20:34
b0a33a9

Logo Android

  • Fix leak/bug in bluetoothState flow (#399), thanks to @dzgeorgy for identifying the bug

🧰 Maintenance

  • Update dependency com.benasher44:uuid to v0.6.0 (#398)

0.20.0

Choose a tag to compare

@github-actions github-actions released this 08 Nov 19:13

Logo Android

  • Use shared bluetooth state BroadcastReceiver (#369), thanks to @nverinaud for reporting the issue and verifying the fix

Logo Apple

  • Add support for scan options (#392), special thanks to @robvs for the contribution

🧰 Maintenance

  • Update dependency org.jetbrains.kotlin.multiplatform to v1.7.20 (#383)
  • Update plugin dokka to v1.7.20 (#391)
  • Update JamesIves/github-pages-deploy-action action to v4.4.1 (#389)
  • Update plugin android-library to v7.3.1 (#390)

0.19.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 19:18
59d8989
  • Surface bluetooth device name (#384)

Logo Apple

  • Fix empty NSData crash (#388), special thanks to @joharei for the contribution

Logo JavaScript

  • Enforce lowercase UUIDs for Web BLE filters (#385)

🧰 Maintenance

  • Update dependency org.jetbrains.kotlinx:atomicfu-jvm to v0.18.4 (#386)
  • Update plugin maven-publish to v0.22.0 (#381)
  • Update plugin android-library to v7.3.0 (#379)
  • Update plugin kotlinter to v3.12.0 (#345)

0.18.1

Choose a tag to compare

@github-actions github-actions released this 13 Sep 02:15
6464be1
  • 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 of State (#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

Choose a tag to compare

@github-actions github-actions released this 15 Jul 23:11
25069f7

🚀 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)