Repository navigation
chore: prepare 0.8.0-rc13 with the wake client fixes - #196
coreyphillips wants to merge 1 commit into
Conversation
Bump the version to 0.8.0-rc13 and set the checksum of the rebuilt iOS archive, so the apps can adopt the wake API from #195.
talosmachina
left a comment
There was a problem hiding this comment.
No findings. Bumps bitkitcore to 0.8.0-rc13 in Cargo.toml, Cargo.lock, Package.swift and bindings/android/gradle.properties, and sets the iOS archive checksum, so the release carries the wake API from #195. Reviewed 44133dd on master 5d633fd, full tier (the diff touches the Cargo manifest and lock).
What I checked, and 2 candidates I ruled out
Diff: git diff 5d633fd 44133dd is exactly the four files and five lines the body names; the branch is level with master, so the tagged tree would be master plus the version strings.
Version sync: git grep 0.8.0-rc on the head finds rc13 in Cargo.toml, Package.swift (tag) and gradle.properties, and no rc12 left anywhere. gradle-publish.yml takes the version from the release tag (-Pversion=${GITHUB_REF_NAME#v}), so the Android coordinates follow v0.8.0-rc13.
Bindings: the committed bindings/ios/bitkitcore.swift and bitkitcoreFFI.h on master already export wake_get_device and wake_send_test (from #195), consistent with the body's note that regenerating them left them unchanged.
Not built here: the code is byte-identical to master, which CI built and tested; iOS does not build on Linux.
CI at review time: Scripts/Cargo/Android manifests, SwiftPM manifest, wake-tests, paykit-route-tests and usdt-tests green. iOS Bindgen and Android Bindgen still running (21 and 58 minutes on #191).
Ruled out
- Checksum mismatch: the archive is uploaded only at release, so
228ce302...cannot be checked against a published zip yet. Release step 4 checks it after publishing, before the app pins move. - CHANGELOG still under Unreleased: #191 (rc12) did not move it either, so this is the repo's release-candidate convention.
Merge confidence: 4/5, both Bindgen jobs were still running and the iOS checksum can only be confirmed against the published zip.
Prepares
0.8.0-rc13so the apps can adopt the wake client with the gaps closed in #195.0.8.0-rc12was tagged before #195 merged, so it has the older wake API.Description
Changes since
v0.8.0-rc12:timestampis one past the last in this process when needed, so two quick registrations no longer get 409stale_registration.WakeError::GatewayRejectedgainsserver_timeandretry_after_secs. Addwake_get_deviceandwake_send_test.wake_set_topicsnow returnsWakeSubscriptionwithunknown_topics. This breaks the wake API, which no app uses yet. (fix(wake): close the client gaps from the gateway review #195)This PR changes only the version in
Cargo.toml,Cargo.lock,Package.swiftandbindings/android/gradle.properties, plus the iOS checksum inPackage.swift. The regenerated Swift interface files match master.The iOS archive was built with
./build_ios.shon Rust 1.90.0 (the crate'srust-version, and the toolchain rc12 used). It is 88,064,800 bytes, SHA-256228ce302b86d6c05a06e84033e8a681ff28b48af47d94d1df3c518ce8c7715b8, matchingPackage.swift. Android coordinates arecom.synonym:bitkit-core-android:0.8.0-rc13.Release steps after merge
v0.8.0-rc13on the merge commit.BitkitCore.xcframework.zip. Publishing runsgradle-publish.yml, which builds and publishes the Android package and its native debug symbols.Package.swiftand that the Android package resolves before bumping app pins.Preview
N/A, release metadata only.
QA Notes
Candidate:
44133ddon master5d633fd. Toolchain: Rust 1.90.0, Xcode 27.1../build_ios.sh: passed. The regenerated Swift interface files are identical to master. Both slices exportwake_send_testandwake_get_device.swift package compute-checksumon the archive matchesPackage.swift.cargo test --no-fail-fast: 747 passed, 11 failed, 30 ignored. All 11 are Blocktank tests that cannot reachapi.stag.blocktank.to, the same staging failures recorded for rc12. Wake: 48 passed, 2 ignored (they need a live gateway).cargo clippy -- -D warnings: fails on 27 existing lib warnings. The code is identical to master apart from the version strings.Not run here: the Android build (
gradle-publish.ymlbuilds it on publish), Python, the live gateway tests and app journeys.