Skip to content

Support the Zig 0.17 lane - #39

Merged
godofecht merged 1 commit into
mainfrom
feat/zig-0.17-lane
Aug 5, 2026
Merged

Support the Zig 0.17 lane#39
godofecht merged 1 commit into
mainfrom
feat/zig-0.17-lane

Conversation

@godofecht

Copy link
Copy Markdown
Owner

Adds "0.17" to #ZigLane (schema.cue) and a matching case in build.zig's laneMatchesCurrent, so a project can declare toolchain.zig.lanes: ["0.17"].

It also fixes a genuine 0.17 break: std.ArrayList became fully unmanaged, so step.dependencies.append(x) now requires an allocator. Switched to step.dependOn(x), the stable API across 0.14 through 0.17 and what the code meant anyway.

Why

Unblocks corpus repos that require Zig 0.17-dev. ZigEmbeddedGroup/microzig is the first: its minimum_zig_version is 0.17.0-dev and its sources use 0.17-only std APIs, so it could not be modeled until Azazel recognized the lane.

Validation

  • Built microzig's tools/flags slice through the full Azazel flow on 0.17.0-dev (gen_build_spec.sh then zig build produces zig-out/lib/libflags.a).
  • The dependOn change is verified locally on 0.16 (build plus the 35-test suite pass). CI covers 0.14.1 / 0.15.2 / 0.16.0; those released lanes stay the CI matrix (0.17 is a dev build and a moving target).

🤖 Generated with Claude Code

Adds "0.17" to #ZigLane and a matching case in build.zig laneMatchesCurrent, so a
project can declare toolchain.zig.lanes: ["0.17"]. Also fixes a real 0.17 break:
std.ArrayList became fully unmanaged, so `step.dependencies.append(x)` now needs
an allocator. Switch to `step.dependOn(x)`, the stable API across 0.14 through
0.17, which is what the code meant anyway.

Validated by building a corpus repo that requires 0.17 (ZigEmbeddedGroup/microzig
tools/flags) through the full Azazel flow on 0.17.0-dev: gen_build_spec then
`zig build` produces the static library. The dependOn change is verified on 0.16
locally (build plus the 35-test suite pass); CI covers 0.14.1 / 0.15.2 / 0.16.0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@godofecht
godofecht merged commit 6ce433d into main Aug 5, 2026
3 checks passed
@godofecht
godofecht deleted the feat/zig-0.17-lane branch August 5, 2026 17:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant