cargo-public-api/cargo-public-api — List and diff the public API of Rust library crates between releases and commits.
Description and use
**Brief Summary (2‑3 sentences)** cargo-public-api is a Rust‑based tool that extracts the public API surface of a crate, compares it across releases or commits, and flags breaking changes and semver violations. It can be run locally as a CLI or integrated into CI pipelines, giving teams immediate feedback on API stability. The project is actively maintained, well‑starred, and ready for production use.
**Value**
- **Prevent accidental breaking changes** – By automatically diffing the public API, the tool catches incompatibilities before they reach users, reducing costly rollbacks and support tickets.
- **Standardize release hygiene** – Embedding the check in CI enforces a consistent semver policy across all Rust libraries in an organization, improving reliability of internal and external SDKs.
- **Speed up development** – Teams can ship new features faster because they get immediate, actionable reports on API impact without manual code review.
**Practical Adoption Path**
- **Add to the repository** – Include
cargo install cargo-public-api(or add it as a dev‑dependency) in each crate’s workflow. - **Integrate into CI** – Add a step that runs
cargo public-api diff <old-version> <new-version>and fails the build on detected breaking changes. - **Optional CLI usage** – Developers can run
cargo public-apilocally to preview API changes before committing. - **Policy enforcement** – Define an organization‑wide rule (e.g., “no breaking changes without a major version bump”) and use the CI reports to enforce it.
**Production Readiness**
- **Activity & community** – 559 stars, 42 forks, recent commits (as of 2026‑06‑25) and ongoing issue discussion indicate a healthy, active project.
- **Maturity** – The binary is stable, well‑documented, and has been adopted by several open‑source crates, showing real‑world viability.
- **Risk profile** – No major licensing or security concerns have been identified; the remaining checks (license compliance, security audit) are routine.
Overall, cargo-public-api is a production‑ready OSS component that can be safely piloted now and rolled out organization‑wide to enforce API stability in Rust services.
Problem
cargo-public-api/cargo-public-api helps teams reuse service infrastructure instead of rebuilding common backend pieces.
Outcome
High for an OSS candidate: recent activity, adoption, and ecosystem signals are strong enough for a serious pilot.
Workflow
- ship API services faster
- reuse backend infrastructure
- standardize service patterns
Evidence
List and diff the public API of Rust library crates between releases and commits. Detect breaking API changes and semver violations via CI or a CLI.
- Record date: 2026-09-10T14:38:02.186Z