release: labelle-cli v4.0.0 — the full agnostic core (RFC cli#471) - #520
Conversation
The CLI core names no platform, backend or store. The assembler answers backend and target facts through `describe` (protocol 7), and providers own iOS (labelle-ios) and SDL2 (labelle-sdl's sdl2 provider). See docs/migrating-to-4.0.md. A cli pin on an older major now points at that guide.
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedNext included review available in 44 minutes. View limit detailsLimit details: You’ve used the included review currently available. Your 103 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (1)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (2)
Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour. 📝 WalkthroughWalkthroughThe package version changes from 3.1.0 to 4.0.0. The migration guide now covers upgrades from CLI versions below 4 and identifies assembler 0.118.0+ as a requirement. ChangesCLI 4.0 transition
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Other Merge Risk: ⚪ Minimal · up to The selected CLI 4.0 release changes have no identified migration or versioning issue that should block merging. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
User coderabbitai[bot] does not have write permissions |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3528de43e1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| return "upgrading alone is not enough: the 3.0 CLI removed its built-in browser toolchain, serve and\n" ++ | ||
| " export, so the project may need migrating too; see https://github.com/labelle-toolkit/labelle-cli/blob/main/docs/migrating-to-3.0.md"; | ||
| } | ||
| if (pinned < 4 and curated >= 4) { |
There was a problem hiding this comment.
Surface the 4.0 guide for every pre-4 CLI pin
When a project is pinned to CLI 1.x or 2.x and runs CLI 4, the earlier pinned < 2 or pinned < 3 branch returns first, so this new branch is never reached. The same warning recommends labelle upgrade all, which writes the current CLI_VERSION; afterward the compatibility warning disappears, while neither earlier migration guide links to the 4.0 guide. Such users can therefore miss the required assembler/provider migration, so the 4.0 guide must also be surfaced or explicitly chained for every pin below 4.
Useful? React with 👍 / 👎.
A 1.x or 2.x pin returned the 2.0 or 3.0 guide first and never reached the 4.0 branch. Neither older guide links 4.0, and `upgrade all` then silences the warning. Chain the 4.0 steps after the first guide whenever the pin is below 4.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 129acf89ea
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (pinned < 2 and curated >= 2) { | ||
| return "upgrading alone is not enough: the 2.0 CLI builds every non-desktop target through\n" ++ | ||
| " provider packages, so the project needs migrating too; see https://github.com/labelle-toolkit/labelle-cli/blob/main/docs/migrating-to-2.0.md"; | ||
| return if (then_four) guide_two ++ guide_then_four else guide_two; |
There was a problem hiding this comment.
Include the 3.0 migration for 1.x pins
For a project pinned to CLI 1.x and upgraded directly to 4.0, this branch now emits the 2.0 guide followed immediately by the 4.0 guide, but neither guide links to or covers the 3.0 migration. Such a project can therefore miss required changes such as replacing the removed browser commands and upgrading the web provider; after labelle upgrade all changes the pin to 4.x, this warning disappears. Chain all crossed major-version guides rather than skipping 3.0 for this case.
Useful? React with 👍 / 👎.
A 1.x pin going to 4.0 got the 2.0 and 4.0 guides and skipped 3.0's browser-toolchain move. Chain every crossed line in order.
… wording The previous commit didn't compile (i2/i3/i4 shadow primitive types), and its 3.0 hint named a platform the agnostic guard forbids.
Bumps to 4.0.0, the final phase of RFC #406 (#471). The CLI core names no platform, backend or store.
Breaking
labelle-assembler describe. The CLI'sBackend/Platform/AssetCompressionmirrors are gone (feat!: the assembler owns backend identity; drop the CLI's Backend enum (cli#471 D4) #517, feat!: targets are names; drop the CLI's Platform and AssetCompression mirrors (cli#471 P3) #519).iostarget belongs to labelle-ios, andlabelle iosis removed (feat!: remove iOS from the core; the ios target belongs to labelle-ios (cli#471 I5) #515).sdl2provider in labelle-sdl 0.4.0 replaces the core provisioning and DLL staging (feat!: SDL2 provisioning leaves the core for the sdl2 provider (cli#471 S4) #518).Also in 4.0
labelle astcreads the real texture caps of a shorthand backend (feat(astc): read a shorthand backend's texture caps via describe (cli#471 D3a) #516).--dockerrefuses macOS targets (feat(docker): refuse --docker for macOS targets (cli#471 X3) #503).Migration guide:
docs/migrating-to-4.0.md. Aclipin on an older major now points at it.Tests:
zig build testpasses 13/13 steps (1155 tests).Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.