Skip to content

fix: ship SKILL.md in the published crate so cargo install compiles#105

Merged
tenequm merged 1 commit into
mainfrom
fix/cargo-install-skill-md
Jul 13, 2026
Merged

fix: ship SKILL.md in the published crate so cargo install compiles#105
tenequm merged 1 commit into
mainfrom
fix/cargo-install-skill-md

Conversation

@tenequm

@tenequm tenequm commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Problem

cargo install pond-db fails for every release since v0.10.0 (reported by Fabian):

error: couldn't read `.../pond-db-0.13.0/src/../SKILL.md`: No such file or directory
  • v0.10.0 (dc2f3b5) added pond skill, which does include_str!("../SKILL.md") in src/main.rs.
  • SKILL.md sits in Cargo.toml's exclude (added as a dev-only file alongside AGENTS.md/CLAUDE.md), so the published .crate physically lacks the file the build needs. Verified against unpacked crates from crates.io: 0.9.0 is fine; 0.10.0 through 0.13.0 are all broken.
  • Nothing caught it because publish_no_verify = true skips the verify build at publish time, and brew/nix/binstall install prebuilt binaries so the compile path never runs.

Fix

  • Remove SKILL.md from exclude (33-line file, negligible crate-size impact), with a comment explaining why it must ship.
  • Add a cheap CI packaging gate (pond:check-package, wired into the build-and-test moon run): cargo package --list must contain every include_str!/include_bytes! target found in src/. No verify build needed; it is instant and catches exactly this class of breakage. Verified it fails against the pre-fix Cargo.toml and passes now.
  • Update the stale release-plz.toml comment ("verified locally via cargo publish --dry-run") to point at the CI gate.

Release note

This must land on main before release PR #103 (v0.13.1) merges, otherwise 0.13.1 ships equally broken for cargo installs.

fmt, clippy, and full cargo test pass locally (272 tests).

SKILL.md landed in Cargo.toml's exclude list as a dev-only file, but
`pond skill` embeds it via include_str!, so every crates.io release
since v0.10.0 fails to compile under `cargo install pond-db` (brew/nix/
binstall ship prebuilt binaries and never hit the path). Drop it from
exclude and add a check-package CI gate: `cargo package --list` must
contain every include_str!/include_bytes! target, since publish runs
with publish_no_verify and skips the verify build.
@tenequm tenequm self-assigned this Jul 13, 2026
@tenequm
tenequm merged commit 4c2213e into main Jul 13, 2026
3 checks passed
@tenequm
tenequm deleted the fix/cargo-install-skill-md branch July 13, 2026 12:14
@tenequm tenequm mentioned this pull request Jul 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant