fix(generator): pin Zig toolchain - #41
Conversation
Bead: clarity-840
Bead: clarity-840
|
Adversarially reviewed. Approve. Nicely built: the pin is derived at compile time from the repo root .tool-versions (@external_resource + compile-time raise if absent) rather than hard-coded, the template comment explains the deliberate exact version, LiveView-generated projects now get a .tool-versions at all, and non-clobbering of existing files is tested. Gates: 346/346 tests, format, credo --strict, warnings-as-errors clean. Empirical: fresh generation from this branch produces the pin and 'mise exec -- zig version' resolves it. Device build not re-run — PR #40's verification yesterday already proved the Android build path with this exact pin appended manually, so pin-in-file was the only new behavior needing proof. Two notes: (1) verified empirically that --local/MOB_NEW_DIR does NOT deliver this fix — dotfiles are compiled into the archive, not priv templates — so the 0.4.27 archive release is the only delivery path (cutting it next); (2) the generated .tool-versions header still tells asdf users 'asdf install' works, but asdf can't fetch historical zig nightlies — fixing that header line at release. Merging. |
Summary
.tool-versions.tool-versionsVerification
mix test(346 passed)mix format --check-formattedmix compile --warnings-as-errorsmix credo --strictzig 0.17.0-dev.269+ebff43698git diff --checkBead: app-840
Companion MobDev diagnostics PR: GenericJam/mob_dev#51