Publish workspace crates to crates.io#404
Merged
Merged
Conversation
Rename and publish the following crates to crates.io: - provekit-hla, provekit-fp-rounding, provekit-ntt - provekit-bn254-multiplier-codegen, provekit-bn254-multiplier - provekit-skyscraper, provekit-common, provekit-prover - provekit-passport-input-gen Switch noir dependencies from git to provekit_* crates.io packages. Switch spongefish/whir to provekit-spongefish/provekit-whir from crates.io. Update binary self-references to use new crate names.
Introduce `Prove::prove_with_json` on the prover trait so callers can proof from a JSON input string without duplicating noirc_abi parsing in the FFI layer. Re-export `InputMap` and `InputValue` from provekit-common so downstream consumers can construct inputs programmatically without pulling noirc_abi directly. Also bump workspace crate versions to 0.1.2, add explicit `[lib]` names to `ntt` and `skyscraper` crates to preserve short crate names after the `provekit-` publishing prefix, and update nargo_cli to 1.0.0-beta.11-alpha.6.
Enables compiling provekit-common and provekit-prover to wasm32: - common/Cargo.toml: move xz2 and zstd under [target.'cfg(not(target_arch = "wasm32"))'.dependencies]. - common/src/lib.rs: cfg-gate `pub mod file;` for non-wasm32; file I/O depends on zstd/xz2/std::fs. - prover/Cargo.toml: add `witness-generation` (default) and `parallel` features; make bn254_blackbox_solver, nargo, and noir_artifact_cli optional non-wasm32 target dependencies gated by the feature. - prover/src/lib.rs: cfg-gate witness-generation imports and the generate_witness / prove / prove_with_toml / prove_with_inputs trait methods behind cfg(all(feature = "witness-generation", not(target_arch = "wasm32"))). prove_with_witness remains available on all targets.
Adds a target-gated getrandom v0.2 js-feature dep on provekit-common so transitive rand_core 0.6 (via k256 -> provekit_acvm_blackbox_solver) compiles on wasm32-unknown-unknown. All four published provekit crates (common, prover, verifier, r1cs-compiler) now build standalone for wasm32-unknown-unknown with no wrapper crate and no nightly flags.
Fixes CI's `cargo fmt --all --check` step which was blocking the downstream clippy/build/test/doc steps on this branch.
CI runs `cargo fmt --all --check` without an explicit +toolchain, so it respects rust-toolchain.toml. The previous stable-1.94.1 pin caused CI rustfmt to silently ignore unstable rustfmt.toml options (including struct_field_align_threshold) and demand unaligned struct fields, while local nightly rustfmt honored them. Matching main's nightly pin aligns CI behavior with intended formatting.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
provekit-prefix: hla, fp-rounding, ntt, bn254-multiplier-codegen, bn254-multiplier, skyscraper, common, prover, passport-input-genprovekit_*crates.io packagesprovekit-spongefish/provekit-whirfrom crates.ioTest plan
cargo checkpassescargo buildworks from a clean checkout