fix(zed): pin language server download to engine release tag#3847
fix(zed): pin language server download to engine release tag#3847hellovai wants to merge 1 commit into
Conversation
The Zed extension resolved the baml-cli language server via
`latest_github_release`, which returns the newest release across the
whole repo. The repo publishes two independent release lines: the
engine/`baml-cli` line (tagged `0.223.0`, assets `baml-cli-<ver>-<target>.tar.gz`)
and a separate `baml-language-*` nightly line that currently holds
GitHub's "latest" pointer.
As a result `release.version` became the nightly tag
`baml-language-0.12.2-nightly.20260625.d`, and the
`baml-cli-{version}-{target}` template produced an asset name that
doesn't exist, failing with "no asset found matching ...".
Pin the lookup to the engine release tag (the extension's own
`CARGO_PKG_VERSION`, kept in sync with extension.toml via
tools/versions/zed.cfg) using `github_release_by_tag_name`, so the
extension version and the language server binary it downloads stay
locked together and the nightly line is ignored.
Also corrects a stale Cargo.lock version (0.218.0 -> 0.223.0).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe engine language-server lookup now derives its GitHub release tag from the crate version and resolves the download from that fixed tag instead of the latest release pointer. ChangesPinned engine release lookup
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
⏭️ Performance benchmarks were skippedPerf benchmarks (CodSpeed) are opt-in on pull requests — they no longer run on every push. They always run automatically after merge to To run them on this PR, do any of the following, then push a commit (or re-run CI):
|
|
#3853 should take care of this |
Problem
The Zed extension fails to start the BAML language server with:
The extension resolved the
baml-clibinary vialatest_github_release, which returns the newest release across the whole repo. But the repo publishes two independent release lines:baml-cli0.223.0baml-cli-0.223.0-<target>.tar.gz✅ (what the extension wants)baml-language-*nightliesbaml-language-0.12.2-nightly.20260625.dbaml-language-…-<target>.tar.gzThe nightly line currently holds GitHub's "latest" pointer, so
release.versionbecame the nightly tag and thebaml-cli-{version}-{target}template produced an asset name that doesn't exist.Fix
Pin the lookup to the engine release tag — the extension's own
CARGO_PKG_VERSION(kept in sync withextension.tomlviatools/versions/zed.cfg) — usinggithub_release_by_tag_nameinstead oflatest_github_release. The extension version and the language-server binary it downloads now stay locked together, and the nightly line is ignored entirely.Also corrects a stale
Cargo.lockversion (0.218.0→0.223.0).Verification
cargo checkpasses clean. With the extension at0.223.0, the asset resolves tobaml-cli-0.223.0-aarch64-apple-darwin.tar.gz, which exists on the engine release.🤖 Generated with Claude Code
Summary by CodeRabbit