You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Part of #9. Phase 1 — level 1. Related: #1 (macOS binary signing — resolve it here).
Learning goals
Cargo release engineering (TRPL More About Cargo and Crates.io): profiles (lto, strip),
cross-compilation targets, and the CLDK distribution pattern — a compiled analyzer ships as a
self-contained binary wrapped in a thin platform-tagged PyPI wheel.
Task
Upgrade the existing single-target release.yml to the full distribution spec
(references/packaging-and-release.md; codeanalyzer-typescript's release is the compiled-case
model):
Thin PyPI wheel:packaging/python/ — one platform-tagged wheel per target carrying the
binary + bin_path(); publish as codeanalyzer-rust via OIDC Trusted Publishing.
Brew:packaging/homebrew/generate_formula.sh emitting a binary-asset formula (like
cants', with per-OS/arch url+sha256 blocks) pushed to codellm-devkit/homebrew-tap.
Keep the existing tag-triggered flow: tests gate the tag; changelog + Announcements discussion.
Gate
A dry-run tag on a fork/branch produces: all target binaries, installable wheels
(pip install the darwin one locally and run canrs --version through bin_path()), a
formula that brew audits clean.
Version appears in exactly the places the lockstep rule names: Cargo.toml, wheel, formula.
Part of #9. Phase 1 — level 1. Related: #1 (macOS binary signing — resolve it here).
Learning goals
Cargo release engineering (TRPL More About Cargo and Crates.io): profiles (
lto,strip),cross-compilation targets, and the CLDK distribution pattern — a compiled analyzer ships as a
self-contained binary wrapped in a thin platform-tagged PyPI wheel.
Task
Upgrade the existing single-target
release.ymlto the full distribution spec(
references/packaging-and-release.md;codeanalyzer-typescript's release is the compiled-casemodel):
aarch64/x86_64-apple-darwin,x86_64/aarch64-unknown-linux-musl(static!), optionally windows-msvc. Binaries as GitHub Release assets.
packaging/python/— one platform-tagged wheel per target carrying thebinary +
bin_path(); publish ascodeanalyzer-rustvia OIDC Trusted Publishing.packaging/homebrew/generate_formula.shemitting a binary-asset formula (likecants', with per-OS/arch url+sha256 blocks) pushed to
codellm-devkit/homebrew-tap.Gate
(
pip installthe darwin one locally and runcanrs --versionthroughbin_path()), aformula that
brew audits clean.