Skip to content

feat(sdl): add backend.manifest.zon — manifest-splice codegen (#386) - #445

Merged
apotema merged 1 commit into
mainfrom
feat/386-sdl-manifest
Jun 30, 2026
Merged

apotema merged 1 commit into
mainfrom
feat/386-sdl-manifest

Conversation

@apotema

@apotema apotema commented Jun 30, 2026 •

Copy link
Copy Markdown
Contributor

sdl extraction step (window conformed in #437). Opts the sdl desktop build into the manifest-splice path. Loop-style, desktop-only, no params; link fragment is the single blank the enum .link_sdl emitted (SDL2 linked by the backend's own build.zig). The backend_dep fragment carries the input core-diamond override. Byte-identical to the enum path. zig build test green.

Summary by CodeRabbit

  • New Features

    • Added support for an SDL-based desktop backend.
    • Desktop builds now include the necessary setup to run with the SDL backend.
  • Bug Fixes

    • Improved backend wiring so the SDL backend connects correctly to core app functionality.

sdl extraction step (window conformed in #437). Opts the sdl DESKTOP build into
the manifest-splice path. Loop-style, desktop-only, NO params; EMPTY link beyond
the single blank the enum `.link_sdl` emitted (SDL2 is linked by the backend's
own build.zig). The backend_dep fragment carries the input core-diamond override
(underscore `labelle_core` key, #258). Byte-identical to the enum path
(diffed a generated baseline → 0 diff). zig build test green.

@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 introduces the SDL backend manifest and build fragments as part of the pluggable-backends epic. Specifically, it adds backend.manifest.zon to configure the SDL backend, backend_dep.txt to handle SDL-specific module dependencies and override the labelle_core import, and an empty link.txt build fragment. 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: eb545e58-e441-4681-88b9-9e5f090cf288

📥 Commits

Reviewing files that changed from the base of the PR and between e68d3c4 and bcead22.

📒 Files selected for processing (3)
  • backends/sdl/backend.manifest.zon
  • backends/sdl/build_fragments/backend_dep.txt
  • backends/sdl/build_fragments/link.txt

📝 Walkthrough

Walkthrough

This PR adds a new SDL backend manifest file specifying directory/dependency naming, loop style, and template references. It also adds a build dependency fragment that overrides the "labelle_core" import for the input module, and populates the previously empty link fragment file.

Changes

SDL Backend Setup

Layer / File(s) Summary
Backend manifest definition
backends/sdl/backend.manifest.zon
Defines the SDL backend manifest with directory name, dependency name, desktop loop style/template, and references to build_fragments for backend_dep and link.
Build fragments wiring
backends/sdl/build_fragments/backend_dep.txt, backends/sdl/build_fragments/link.txt
Adds dependency module bindings and an overrideImport remapping the input module's "labelle_core" import to core_mod, and adds content to the previously empty link fragment.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related PRs

Poem

A rabbit hops with manifest in paw,
Wiring SDL through a build-time law.
Core module bound, the import made true,
Link.txt now holds a line or two.
🐇✨ Hop, build, and run anew!

🚥 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 describes the main change: adding SDL manifest-splice code generation via backend.manifest.zon.
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 feat/386-sdl-manifest

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

@apotema
apotema merged commit 2e93fb8 into main Jun 30, 2026
4 checks passed
@apotema
apotema deleted the feat/386-sdl-manifest branch June 30, 2026 21:12
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