Skip to content

release: harness-canopy 2.1.1 - #42

Merged
JheisonMB merged 2 commits into
mainfrom
develop
Jul 28, 2026
Merged

release: harness-canopy 2.1.1#42
JheisonMB merged 2 commits into
mainfrom
develop

Conversation

@JheisonMB

Copy link
Copy Markdown
Collaborator

What changed

Two commits, three files.

  • ci(release): request protoc on macOS build targets — passes the new system-packages-brew: protobuf input to the reusable release workflow.
  • chore(release): 2.1.1 — version bump in Cargo.toml and Cargo.lock.

Why

The 2.1.0 release run failed. Both macOS targets died with:

error: failed to run custom build command for `lance-encoding v4.0.0`
Could not find `protoc`. To install it on macOS, run `brew install protobuf`.

LanceDB's lance-encoding compiles protobuf definitions at build time, so protoc has to exist on every target. The reusable rust-release workflow gated its package-install step on runner.os == 'Linux', so the macOS runners got no build dependencies at all. The gap stayed invisible until now because CI itself is Linux-only, and no UniverLab binary needed protoc before RAG brought LanceDB in.

Fixed upstream in UniverLab/workflows (5b8f40d), which adds a system-packages-brew input and a matching macOS install step. It is a separate input rather than a translation of system-packages because the names do not agree across package managers — apt calls it protobuf-compiler, brew calls it protobuf.

Why 2.1.1 and not a re-release of 2.1.0. The failed run still created the v2.1.0 tag, and create-tag skips when the tag exists — which skips every downstream job, so re-running produces nothing. Rather than delete a published tag, 2.1.0 is left burned: it was tagged but never released, and no artifact or crate ever carried that number. v2.1.0 remains as an orphan tag on fd2da6e.

Related issue

n/a — follow-up to #41.

Checklist

  • Local checks pass (build/lint/tests)
  • Docs updated when behavior changed — n/a, no behavior change
  • PR is focused and avoids unrelated edits
  • Commits follow Conventional Commits

Notes

Cargo.lock is regenerated alongside Cargo.toml and verified with cargo metadata --locked. Every CI and release job runs with --locked, so a stale lock fails them all before anything compiles.

Merging this triggers the release workflow — its trigger is a pull request closed against main touching Cargo.toml, which the bump does. v2.1.1 does not exist yet, so create-tag will create it and all four targets will build.

Two manual steps follow the merge: the Awaiting Manual Approval gate before the crates.io publish, and the fact that this is the first publish under the name harness-canopy — the crate does not exist on crates.io today.

@JheisonMB JheisonMB added the target:main Targets the main branch label Jul 28, 2026
@JheisonMB
JheisonMB merged commit 362d34c into main Jul 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

target:main Targets the main branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant