Repository navigation
feat(#386): slim — remove in-tree backends/raylib - #451
Conversation
Step 5/5 of extracting raylib out of the assembler. The flip already landed on main (builtinProvider(.raylib) returns external labelle-raylib@0.1.0), so backends/raylib is dead in the production path. Remove it and its now-redundant coupling. - git rm -r backends/raylib (16 files); its unit coverage (slot_alloc etc.) lives in labelle-raylib's own CI. - test/build_zig_tests.zig: drop the 3 in-tree raylib backend tests that pinned local:backends/raylib (links artifact, no libudev, core-unify on backend_input) — covered by labelle-raylib CI. - test/preview_mode_tests.zig: drop the 3 permanently-skipped raylib-PBO readback tests (raylib-desktop-bundled only, unreachable in-tree). Kept the external-no-PBO negative test + sokol PBO tests. Also drop the raylib case from the real-template helper test (its template now lives out-of-tree). - .github/workflows/ci.yml: remove the raylib slot-allocator test step; kept the examples/raylib build, video, gamepad+imgui demo, and flow-scanner steps (they validate external-package resolution). - Refresh stale backends/raylib doc-comment paths in src/. zig build and zig build test both exit 0. Claude-Session: https://claude.ai/code/session_017pW3ifKf9wgxNg4viy6okw
There was a problem hiding this comment.
Code Review
This pull request removes the in-tree raylib backend entirely, extracting it into an external package (labelle-raylib). This involves deleting the backend's source files, build configurations, templates, and associated unit tests. References to the raylib backend in the cache resolution, codegen comments, and test suites have been updated or removed to reflect its out-of-tree status. As there are no review comments to assess, I have no feedback to provide on the review itself.
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.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (21)
💤 Files with no reviewable changes (16)
📝 WalkthroughWalkthroughThis PR removes the entire in-tree raylib backend implementation, including build.zig, build.zig.zon, manifest, build fragments, all source modules (gfx, audio, input, window, astc, slot_alloc), templates, and the C stub. It removes a CI test step and updates comments/tests referencing raylib to either backends/sokol or the external labelle-raylib package. ChangesRaylib Backend Removal
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related issues
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Step 5/5 of the raylib extraction (#386). The flip (PR #450) already routes
builtinProvider(.raylib)to the externallabelle-raylib@0.1.0package, so the in-treebackends/raylibis dead in the production codegen path. This removes it.Changes (21 files, +8 / −8137)
git rm -r backends/raylib— its unit-test coverage (slot-allocator, etc.) lives in labelle-raylib's own CI now.test/build_zig_tests.zig— drop the 3 tests pinninglocal:backends/raylib(links raylib artifact,raylib build does not link libudev,unifies labelle-core onto the raylib backend input module).test/preview_mode_tests.zig— drop the 3 permanently-skipped raylib-PBO tests; drop the raylib case from the real-template helper test (it readbackends/raylib/templates/desktop.txtfrom disk — mirrors how bgfx/wgpu/null were already removed there). Kept theexternal backend does not pull in raylib PBO readbacknegative test + all sokol/lifecycle cases..github/workflows/ci.yml— remove only theraylib backend slot-allocator testsstep. The examples/raylib, video, gamepad+imgui, and flow-scanner integration jobs stay — they now validate the assembler resolving raylib via the external package.src/cache.zig,src/cache/resolve.zig,src/codegen/preview.zig— refreshed 3 stale doc-comment paths.zig build testandzig buildboth exit 0 locally.After this merges, sokol is the only remaining backend to flip — completing the backend-agnostic assembler (#386).
https://claude.ai/code/session_017pW3ifKf9wgxNg4viy6okw
Summary by CodeRabbit
Refactor
Tests
Chores