Repository navigation
Android NIF builds on both Zig pins; pin Keyboard.dismiss and Android blur in tests - #226
Merged
Merged
Conversation
… blur in tests The 0.9.26 release gate found that an app keeping mob_dev 0.7.30 (Zig 0.17.0-dev.269) could resolve this mob, whose std.mem.printSentinel the nightly lacks. Format the post-mortem marker paths through a local printZ on std.fmt.bufPrint, which both toolchains have. Compiled for aarch64 Android on both. Mob.Keyboard.dismiss/1's test now runs the call path against a fake NIF, and mob_send_blur is pinned to sendIdentityEvent.
This was referenced Oct 24, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The release gate for 0.9.26 (Codex) said DO NOT SHIP.
Blocking.
mob_dev 0.7.30allowsmob ~> 0.9.25and pins the Zig nightly0.17.0-dev.269. That nightly has nostd.mem.printSentinel, which #220 introduced inandroid/jni/mob_nif.zig. So an app that kept mob_dev 0.7.30 and updated to mob 0.9.26 would have no Zig version that builds Android. Fix: the four post-mortem marker sites now format through a localprintZbuilt onstd.fmt.bufPrint, which exists in both toolchains.Should-fix.
Mob.Keyboard.dismiss/1's test now runs the NIF call path against a fake NIF, via__dismiss__/2.mob_send_bluris pinned tosendIdentityEventinnative_event_handle_test.exs.Verification.
zig build-obj -target aarch64-linux.24.0-android -Mroot=android/jni/mob_nif.zigpasses on both0.17.0-dev.269+ebff43698and0.17.0. Before the fix it failed on the nightly with printSentinel missing.