Skip to content

release: v0.61.0 (pluggable backends — out-of-tree backends, #386 Phases 5+6) - #418

Merged
apotema merged 1 commit into
mainfrom
release/v0.61.0
Jun 30, 2026
Merged

release: v0.61.0 (pluggable backends — out-of-tree backends, #386 Phases 5+6)#418
apotema merged 1 commit into
mainfrom
release/v0.61.0

Conversation

@apotema

@apotema apotema commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Bumps build.zig.zon 0.60.0 → 0.61.0.

Headline: the assembler can now build out-of-tree backends; bgfx is extracted

Pluggable-backends epic #386, Phases 5 + 6. The assembler fetches, contract-verifies, and builds a backend that lives in its own repo — the same rails plugins use. bgfx is the first backend extracted (→ labelle-bgfx), with its shared gamepad sources promoted to labelle-sdl-gamepad / labelle-android-gamepad.

What's in it (#409#417)

PR Change
#409 6a — remote .backend_package cache-fetch (fetched like a plugin)
#410 6b — contract-verify an external backend (assertBackend/assertWindow/assertInput)
#411 conform raylib + null windows to the canonical window contract
#412 Phase 5 — enum-as-shorthand resolution (a built-in tag can resolve to a package)
#413 6c — bgfx extracted to labelle-bgfx; opt-in CI-verified
#414 select the GUI bridge by backend name, not the enum (external backends)
#415 labelle-bgfx v0.2.0 — gamepad sources extracted to their own packages
#416 / #417 the two flip-blockers — callback-external guard; android enum-fallthrough

Compatibility

  • Built-in backends are byte-identical — every change is gated on cfg.isExternal() / external-only paths. Existing projects (.backend = .raylib/.sokol/.bgfx/...) are unaffected.
  • Out-of-tree backends are opt-in via .backend_package = .{ .name, .repo, .version }. The built-in .backend = .bgfx still ships bundled; flipping it to fetch the package by default is a follow-up gated on this release (so the assembler↔framework versions line up).

Validation

  • Full zig build test green; golden generation suites unchanged for built-ins.
  • External bgfx validated on-device (Galaxy Tab A7, Android 12): a real game (Flying Platform) builds → NDK cross-compiles → installs → launches → runs crash-free, behaving identically to the bundled backend.

After merge: tag v0.61.0 to trigger the binary release (release.yml).

Summary by CodeRabbit

  • Chores
    • Updated a bundled package to a newer version, which may include improvements and fixes.

Pluggable-backends Phases 5+6 (epic #386): the assembler can now FETCH, verify,
and build out-of-tree backend packages, and bgfx is extracted to its own repo.

- #409 6a: remote .backend_package cache-fetch (fetched like a plugin)
- #410 6b: contract-verify an external backend (assertBackend/Window/Input)
- #411: conform raylib + null windows to the canonical window contract
- #412 Phase 5: enum-as-shorthand resolution (a built-in tag can resolve to a package)
- #413 6c: bgfx extracted -> github.com/labelle-toolkit/labelle-bgfx; opt-in CI-verified
- #414: select the GUI bridge by backend name, not the enum (external backends)
- #415: labelle-bgfx v0.2.0 — gamepad sources extracted to their own packages
- #416/#417: the two flip-blockers (callback-external guard; android enum-fallthrough)

Opt-in today via .backend_package; built-in .backend = .bgfx still ships bundled
(the default-flip is a follow-up gated on this release). Built-in backends are
byte-identical. External bgfx validated on-device (Galaxy Tab A7): builds, runs
crash-free, behaves identically to bundled.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the version of the labelle_assembler package from 0.60.0 to 0.61.0 in build.zig.zon. There are no review comments, and I have no feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: f9a2468e-facb-47fb-8374-e1e6ce3643cd

📥 Commits

Reviewing files that changed from the base of the PR and between 8b8c3e8 and e922e05.

📒 Files selected for processing (1)
  • build.zig.zon

📝 Walkthrough

Walkthrough

The build.zig.zon manifest for the labelle_assembler package has its .version field incremented from 0.60.0 to 0.61.0. No other files or fields are modified.

Version Bump

Layer / File(s) Summary
Package version bump
build.zig.zon
.version updated from 0.60.0 to 0.61.0.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~1 minutes

Possibly related PRs

Poem

🐇 A hop, a skip, a tiny change,
One version number rearranged,
From sixty to sixty-one we go,
The manifest updated so,
The rabbit stamps it — onward, ho! 🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the v0.61.0 release and the pluggable backends work in this changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch release/v0.61.0

Comment @coderabbitai help to get the list of available commands.

@apotema
apotema requested a review from Copilot June 30, 2026 01:09
@apotema
apotema merged commit 4544eea into main Jun 30, 2026
7 checks passed
@apotema
apotema deleted the release/v0.61.0 branch June 30, 2026 01:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release housekeeping PR that bumps the root package version to v0.61.0, aligning the repository metadata with the pluggable backends/out-of-tree backend milestone described in the release notes.

Changes:

  • Bump build.zig.zon package version 0.60.00.61.0.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

2 participants