Prepare privacy crates for crates.io publishing (v0.14.3-rust-bump snapshot)#373
Conversation
…apshot) Based on the exact commit of tag v0.14.3-rust-bump (3035dd0). Complete publish metadata for privacy-prove and privacy-circuit-verify (homepage, keywords, categories), add homepage to [workspace.package], and fix the publish script ordering so privacy-circuit-verify is published before privacy-prove (privacy-prove depends on it; the reverse edge is only a dev-dependency). Keeps the existing git deps on the stwo / stwo-cairo / stwo-circuits crate families as-is; the git->version swaps happen at publish time. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
PR SummaryLow Risk Overview Renames the two privacy crates only for crates.io ( Updates Reviewed by Cursor Bugbot for commit bf79d96. Bugbot is set up for automated code reviews on this repo. Configure here. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## gil/v0.14.3-rust-bump-publish-base #373 +/- ##
===================================================================
Coverage 60.68% 60.68%
===================================================================
Files 36 36
Lines 5318 5318
===================================================================
Hits 3227 3227
Misses 2091 2091 🚀 New features to boost your workflow:
|
…anged) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…line Bumps [workspace.package] version 1.2.2 -> 1.3.0 (so privacy crates publish as 1.3.0, matching stwo-cairo 1.3.0), and reconciles the stale [workspace.dependencies] pins for cairo-program-runner-lib and privacy-circuit-verify (were 1.0.0) to 1.3.0. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drop the keywords/categories crates.io metadata from stwo-privacy-prove and stwo-privacy-circuit-verify; keep description. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Summary
Prepares the workspace crates for crates.io publishing at v1.0.0, based on the exact pinned commit
5ef951a1("Bump stwo-cairo deps to merge commit of #1787 (9b6be271)") captured by the proving-utils tag v0.14.3-rust-bump. This PR targets that pinned snapshot as its base branch (notmain).Changes
[workspace.package]inheritance:license = "Apache-2.0",repository,homepage.description,keywords, andcategoriesto all publishable crates.~1.0.0.circuits-stark-verifier-examplesaspublish = false.scripts/publish_workspace_crates.sh(topological publish order: circuits → circuits-stark-verifier → circuit-common → circuit-verifier → circuit-serialize → circuit-prover → circuit-cairo-verifier → circuit-multiverifier → circuit-cairo-serialize).authorsfield (house style).Crate-name safety check
Compared the
name =field of everycrates/**/Cargo.tomlat5ef951a1vsorigin/main. All 10 crate names are identical — no crate was renamed: circuits, circuit-common, circuit-verifier, circuit-prover, circuit-serialize, circuit-cairo-serialize, circuit-cairo-verifier, circuit-multiverifier, circuits-stark-verifier, circuits-stark-verifier-examples.Publish chain
stwo 2.3.0 → stwo-cairo 1.3.0 → stwo-circuits 1.0.0 → proving-utils.
Important: git deps unchanged in this PR
The git dependencies on stwo (rev
489a0f3e) and stwo-cairo (rev9b6be271) are intentionally kept as-is. They must be swapped for the published crates.io versions (stwo 2.3.0 / stwo-cairo 1.3.0) at publish time — this PR will not compile against crates.io until those are released.cargo metadata --no-depsconfirms all manifests parse.Update: privacy crate rename (publish-name only)
The two privacy crates were renamed for crates.io with a
stwo-prefix — published package name only; Rust code is byte-identical (no.rsfiles changed, no directories renamed):crates/privacy_prove→[package] name = "stwo-privacy-prove", with[lib] name = "privacy_prove"preserved.crates/privacy_circuit_verify→[package] name = "stwo-privacy-circuit-verify", with[lib] name = "privacy_circuit_verify"preserved.Internal references keep their original keys and resolve via
package =aliases (root[workspace.dependencies]forprivacy-circuit-verify, theprivacy-provedev-dependency, and the[profile.witness-opt-1]package override). All existinguse privacy_prove::…/use privacy_circuit_verify::…imports continue to work.cargo checkpasses.🤖 Generated with Claude Code
This change is
Version bump (update): workspace version bumped 1.2.2 → 1.3.0 to align with the stwo-cairo 1.3.0 release line; privacy crates (
stwo-privacy-prove,stwo-privacy-circuit-verify) now publish as 1.3.0. Also reconciled the stale[workspace.dependencies]version pins forcairo-program-runner-libandprivacy-circuit-verify(were 1.0.0) to 1.3.0.cargo checkgreen.