From 9095662a999f92fe70b093f0d4c1e6469ffdce4d Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Mon, 9 Jun 2025 12:04:03 -0400 Subject: [PATCH 1/6] feat: patch with `openvm v1.2.1-rc` (#75) * feat: cherry-pick openvm patches to v69 (#72) * feat: openvm patches * fix: tests * ci: update branch * ci: delete codspeed * ci: delete upstream chore: update openvm v1.1.2 (#74) * chore: update openvm v1.1.2 * test: add ecrecover precompile test * fix * chore: update to `openvm v1.2.1-rc.1` with `init!()` usage * fixup * chore: add openvm_init.rs files * chore: turn off lint warning --- .cargo/config.toml | 0 .github/workflows/bench.yml | 37 - .github/workflows/book.yml | 138 - .github/workflows/openvm-tests.yml | 36 + .github/workflows/release-plz.yml | 42 - .gitignore | 2 + Cargo.lock | 4853 +++++++++++++++-- Cargo.toml | 35 +- crates/interpreter/Cargo.toml | 15 +- crates/precompile/Cargo.toml | 68 +- crates/precompile/src/bn128.rs | 6 + crates/precompile/src/bn128/openvm.rs | 160 + crates/precompile/src/hash.rs | 3 + crates/precompile/src/kzg_point_evaluation.rs | 6 + crates/precompile/src/lib.rs | 6 +- crates/precompile/src/secp256k1.rs | 4 + .../precompile/src/secp256k1/openvm_k256.rs | 33 + crates/primitives/Cargo.toml | 7 +- crates/revm/Cargo.toml | 63 +- rust-toolchain.toml | 3 + tests/openvm/Cargo.toml | 34 + tests/openvm/programs/ec_add/Cargo.toml | 14 + tests/openvm/programs/ec_add/openvm.toml | 18 + tests/openvm/programs/ec_add/openvm_init.rs | 3 + tests/openvm/programs/ec_add/src/main.rs | 19 + tests/openvm/programs/ec_mul/Cargo.toml | 14 + tests/openvm/programs/ec_mul/openvm.toml | 18 + tests/openvm/programs/ec_mul/openvm_init.rs | 3 + tests/openvm/programs/ec_mul/src/main.rs | 19 + tests/openvm/programs/ecrecover/Cargo.toml | 27 + tests/openvm/programs/ecrecover/openvm.toml | 17 + .../openvm/programs/ecrecover/openvm_init.rs | 3 + tests/openvm/programs/ecrecover/src/main.rs | 19 + .../programs/kzg_point_evaluation/Cargo.toml | 19 + .../programs/kzg_point_evaluation/openvm.toml | 26 + .../kzg_point_evaluation/openvm_init.rs | 4 + .../programs/kzg_point_evaluation/src/main.rs | 22 + tests/openvm/programs/pairing/Cargo.toml | 12 + tests/openvm/programs/pairing/openvm.toml | 21 + tests/openvm/programs/pairing/openvm_init.rs | 3 + tests/openvm/programs/pairing/src/main.rs | 26 + tests/openvm/programs/sha256/Cargo.toml | 11 + tests/openvm/programs/sha256/openvm.toml | 4 + tests/openvm/programs/sha256/src/main.rs | 16 + tests/openvm/src/ec_precompile.rs | 133 + tests/openvm/src/ecrecover.rs | 52 + tests/openvm/src/kzg_precompile.rs | 84 + tests/openvm/src/lib.rs | 8 + tests/openvm/src/sha256_precompile.rs | 55 + 49 files changed, 5529 insertions(+), 692 deletions(-) create mode 100644 .cargo/config.toml delete mode 100644 .github/workflows/bench.yml delete mode 100644 .github/workflows/book.yml create mode 100644 .github/workflows/openvm-tests.yml delete mode 100644 .github/workflows/release-plz.yml create mode 100644 crates/precompile/src/bn128/openvm.rs create mode 100644 crates/precompile/src/secp256k1/openvm_k256.rs create mode 100644 rust-toolchain.toml create mode 100644 tests/openvm/Cargo.toml create mode 100644 tests/openvm/programs/ec_add/Cargo.toml create mode 100644 tests/openvm/programs/ec_add/openvm.toml create mode 100644 tests/openvm/programs/ec_add/openvm_init.rs create mode 100644 tests/openvm/programs/ec_add/src/main.rs create mode 100644 tests/openvm/programs/ec_mul/Cargo.toml create mode 100644 tests/openvm/programs/ec_mul/openvm.toml create mode 100644 tests/openvm/programs/ec_mul/openvm_init.rs create mode 100644 tests/openvm/programs/ec_mul/src/main.rs create mode 100644 tests/openvm/programs/ecrecover/Cargo.toml create mode 100644 tests/openvm/programs/ecrecover/openvm.toml create mode 100644 tests/openvm/programs/ecrecover/openvm_init.rs create mode 100644 tests/openvm/programs/ecrecover/src/main.rs create mode 100644 tests/openvm/programs/kzg_point_evaluation/Cargo.toml create mode 100644 tests/openvm/programs/kzg_point_evaluation/openvm.toml create mode 100644 tests/openvm/programs/kzg_point_evaluation/openvm_init.rs create mode 100644 tests/openvm/programs/kzg_point_evaluation/src/main.rs create mode 100644 tests/openvm/programs/pairing/Cargo.toml create mode 100644 tests/openvm/programs/pairing/openvm.toml create mode 100644 tests/openvm/programs/pairing/openvm_init.rs create mode 100644 tests/openvm/programs/pairing/src/main.rs create mode 100644 tests/openvm/programs/sha256/Cargo.toml create mode 100644 tests/openvm/programs/sha256/openvm.toml create mode 100644 tests/openvm/programs/sha256/src/main.rs create mode 100644 tests/openvm/src/ec_precompile.rs create mode 100644 tests/openvm/src/ecrecover.rs create mode 100644 tests/openvm/src/kzg_precompile.rs create mode 100644 tests/openvm/src/lib.rs create mode 100644 tests/openvm/src/sha256_precompile.rs diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 000000000..e69de29bb diff --git a/.github/workflows/bench.yml b/.github/workflows/bench.yml deleted file mode 100644 index 6220db2a6..000000000 --- a/.github/workflows/bench.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Benchmark - -on: - push: - branches: [main] - pull_request: - workflow_dispatch: - -env: - CARGO_TERM_COLOR: always - -concurrency: - group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} - cancel-in-progress: true - -jobs: - codspeed: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - uses: dtolnay/rust-toolchain@stable - - uses: Swatinem/rust-cache@v2 - with: - cache-on-failure: true - - name: Install cargo-codspeed - uses: taiki-e/install-action@v2 - with: - tool: cargo-codspeed - - name: Build the benchmark target(s) - run: cargo codspeed build --profile profiling --workspace - - name: Run the benchmarks - uses: CodSpeedHQ/action@v3 - with: - run: cargo codspeed run --workspace - token: ${{ secrets.CODSPEED_TOKEN }} diff --git a/.github/workflows/book.yml b/.github/workflows/book.yml deleted file mode 100644 index 8733a73ab..000000000 --- a/.github/workflows/book.yml +++ /dev/null @@ -1,138 +0,0 @@ -name: book - -concurrency: - cancel-in-progress: true - group: ${{github.workflow}}-${{github.ref}} - -on: - push: - branches: [main] - pull_request: - branches: [main] - merge_group: - -jobs: - test: - runs-on: ubuntu-latest - name: test - - steps: - - uses: actions/checkout@v4 - - - name: Install mdbook - run: | - mkdir mdbook - curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.14/mdbook-v0.4.14-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook - echo `pwd`/mdbook >> $GITHUB_PATH - - - name: Install mdbook-template - run: | - mkdir mdbook-template - curl -sSL https://github.com/sgoudham/mdbook-template/releases/latest/download/mdbook-template-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook-template - echo `pwd`/mdbook-template >> $GITHUB_PATH - - - name: Run tests - run: | - cp README.md book/src/README.md - sed -i -e 's|../../README.md|./README.md|g' book/src/SUMMARY.md - mdbook test - - lint: - runs-on: ubuntu-latest - name: lint - - steps: - - uses: actions/checkout@v4 - - - name: Install mdbook-linkcheck - run: | - mkdir mdbook-linkcheck - curl -sSL -o mdbook-linkcheck.zip https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases/latest/download/mdbook-linkcheck.x86_64-unknown-linux-gnu.zip - unzip mdbook-linkcheck.zip -d ./mdbook-linkcheck - chmod +x `pwd`/mdbook-linkcheck/mdbook-linkcheck - echo `pwd`/mdbook-linkcheck >> $GITHUB_PATH - - - name: Run linkcheck - run: mdbook-linkcheck --standalone - - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Install toolchain - uses: dtolnay/rust-toolchain@nightly - - uses: Swatinem/rust-cache@v2 - with: - cache-on-failure: true - - - name: Install mdbook - run: | - mkdir mdbook - curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.14/mdbook-v0.4.14-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook - echo `pwd`/mdbook >> $GITHUB_PATH - - - name: Install mdbook-template - run: | - mkdir mdbook-template - curl -sSL https://github.com/sgoudham/mdbook-template/releases/latest/download/mdbook-template-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook-template - echo `pwd`/mdbook-template >> $GITHUB_PATH - - - name: Build book - run: | - cp README.md book/src/README.md - sed -i -e 's|../../README.md|./README.md|g' book/src/SUMMARY.md - mdbook build book - - - name: Build docs - run: RUSTDOCFLAGS="--enable-index-page -Zunstable-options" cargo doc --all --no-deps - - - name: Move docs to book folder - run: | - mkdir -p target/book/docs - mv target/doc book/book/docs - - - name: Archive artifact - shell: sh - run: | - chmod -c -R +rX "book/book" | - while read line; do - echo "::warning title=Invalid file permissions automatically fixed::$line" - done - tar \ - --dereference --hard-dereference \ - --directory "book/book" \ - -cvf "$RUNNER_TEMP/artifact.tar" \ - --exclude=.git \ - --exclude=.github \ - . - - - name: Upload artifact - uses: actions/upload-artifact@v4 - with: - name: github-pages - path: ${{ runner.temp }}/artifact.tar - retention-days: 1 - if-no-files-found: error - - deploy: - # Only deploy if a push to main - if: github.ref_name == 'main' && github.event_name == 'push' - runs-on: ubuntu-latest - needs: [test, lint, build] - - # Grant GITHUB_TOKEN the permissions required to make a Pages deployment - permissions: - pages: write - id-token: write - - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file diff --git a/.github/workflows/openvm-tests.yml b/.github/workflows/openvm-tests.yml new file mode 100644 index 000000000..287f277e1 --- /dev/null +++ b/.github/workflows/openvm-tests.yml @@ -0,0 +1,36 @@ +name: OpenVM Tests + +on: + push: + branches: ["v69-openvm"] + pull_request: + branches: ["**"] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + +env: + OPENVM_FAST_TEST: 1 + +jobs: + tests: + name: OpenVM Tests + runs-on: + - runs-on=${{ github.run_id }} + - runner=64cpu-linux-x64 + - extras=s3-cache + steps: + - uses: runs-on/action@v1 + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + - uses: Swatinem/rust-cache@v2 + with: + cache-on-failure: true + - uses: taiki-e/install-action@nextest + - name: Rust toolchain + run: rustup component add rust-src --toolchain nightly-2025-02-14 + + - name: Run tests + working-directory: tests/openvm + run: RUST_BACKTRACE=1 cargo nextest run diff --git a/.github/workflows/release-plz.yml b/.github/workflows/release-plz.yml deleted file mode 100644 index 0411e1f7c..000000000 --- a/.github/workflows/release-plz.yml +++ /dev/null @@ -1,42 +0,0 @@ -# Documentation: https://release-plz.ieni.dev/docs -name: Release-plz - -permissions: - pull-requests: write - contents: write - -on: - push: - branches: - - main - -jobs: - release-plz: - name: Release-plz - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - name: Install Rust toolchain - uses: dtolnay/rust-toolchain@stable - # Commits the cargo lock (generally a good practice for upstream libraries) - - name: Commit Cargo.lock - run: | - git config --local user.email "action@github.com" - git config --local user.name "GitHub Action" - git add Cargo.lock - git commit -m "Update Cargo.lock" || echo "No changes to commit" - # This will run the release-plz action - # The action dectect API breaking changes detection with cargo-semver-checks. - # Semver is auto incremneted based on this - # A PR with the semver bump is created with a new release tag and changelog - # if you configure the cargo registry token, the action will also publish the new version to crates.io - - name: Run release-plz - uses: MarcoIeni/release-plz-action@v0.5 - with: - command: release-pr - env: - # The admin of the repository with need to configure the following secrets: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 10e3bcae4..dfa50536f 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ rustc-ice-* # Fixtures /test-fixtures + +**/Cargo.lock diff --git a/Cargo.lock b/Cargo.lock index 336d6d4bc..49fedb889 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,16 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" +dependencies = [ + "lazy_static", + "regex", +] + [[package]] name = "addchain" version = "0.2.0" @@ -28,6 +38,17 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + [[package]] name = "ahash" version = "0.8.11" @@ -61,9 +82,9 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7734aecfc58a597dde036e4c5cace2ae43e2f8bf3d406b022a1ef34da178dd49" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "num_enum", - "strum", + "strum 0.27.1", ] [[package]] @@ -73,21 +94,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b2123d190c823301be54e14a12ef10c00823d90047a140aa41650c26668d5b1" dependencies = [ "alloy-eips", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "alloy-serde", "alloy-trie", "auto_impl", "c-kzg", - "derive_more", + "derive_more 2.0.1", "either", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell", "rand 0.8.5", "secp256k1", "serde", "serde_with", - "thiserror", + "thiserror 2.0.12", ] [[package]] @@ -98,7 +119,7 @@ checksum = "c89b71e608e06b3d55169595c8ff39bd2177389508b0e91da8400b48d88d3afd" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "alloy-serde", "serde", @@ -110,11 +131,11 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "741bdd7499908b3aa0b159bba11e71c8cddd009a2c2eb7a06e825f1ec87900a5" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "crc", "serde", - "thiserror", + "thiserror 2.0.12", ] [[package]] @@ -123,7 +144,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "serde", ] @@ -134,11 +155,11 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde", - "thiserror", + "thiserror 2.0.12", ] [[package]] @@ -150,25 +171,37 @@ dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "alloy-serde", "auto_impl", "c-kzg", - "derive_more", + "derive_more 2.0.1", "either", "serde", "sha2 0.10.8", ] +[[package]] +name = "alloy-json-abi" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe6beff64ad0aa6ad1019a3db26fef565aefeb011736150ab73ed3366c3cfd1b" +dependencies = [ + "alloy-primitives 0.8.25", + "alloy-sol-type-parser 0.8.25", + "serde", + "serde_json", +] + [[package]] name = "alloy-json-abi" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ccaa79753d7bf15f06399ea76922afbfaf8d18bebed9e8fc452984b4a90dcc9" dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", + "alloy-primitives 1.1.2", + "alloy-sol-type-parser 1.1.2", "serde", "serde_json", ] @@ -179,11 +212,11 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83498cbeb8353b78985ad6c127fc7376767c5d341e05e3f641076d61f3a78471" dependencies = [ - "alloy-primitives", - "alloy-sol-types", + "alloy-primitives 1.1.2", + "alloy-sol-types 1.1.2", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", "tracing", ] @@ -198,19 +231,19 @@ dependencies = [ "alloy-eips", "alloy-json-rpc", "alloy-network-primitives", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rpc-types-any", "alloy-rpc-types-eth", "alloy-serde", "alloy-signer", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "async-trait", "auto_impl", - "derive_more", + "derive_more 2.0.1", "futures-utils-wasm", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", ] [[package]] @@ -221,11 +254,71 @@ checksum = "ad99d5b76aed5ed7bd752a9ef5c5e4acf74e8956df80080a492dc83e96d7067e" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-serde", "serde", ] +[[package]] +name = "alloy-primitives" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e416903084d3392ebd32d94735c395d6709415b76c7728e594d3f996f2b03e65" +dependencies = [ + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.20", + "hex-literal 0.4.1", + "itoa", + "ruint", + "tiny-keccak", +] + +[[package]] +name = "alloy-primitives" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.20", + "hex-literal 0.4.1", + "itoa", + "ruint", + "tiny-keccak", +] + +[[package]] +name = "alloy-primitives" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 2.0.1", + "foldhash", + "hashbrown 0.15.2", + "indexmap 2.9.0", + "itoa", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-asm", + "paste", + "proptest", + "rand 0.8.5", + "ruint", + "rustc-hash 2.1.1", + "serde", + "sha3", + "tiny-keccak", +] + [[package]] name = "alloy-primitives" version = "1.1.2" @@ -238,20 +331,20 @@ dependencies = [ "cfg-if", "const-hex", "derive_arbitrary", - "derive_more", + "derive_more 2.0.1", "foldhash", "getrandom 0.3.2", "hashbrown 0.15.2", "indexmap 2.9.0", "itoa", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "keccak-asm", "paste", "proptest", "proptest-derive", "rand 0.9.1", "ruint", - "rustc-hash", + "rustc-hash 2.1.1", "serde", "sha3", "tiny-keccak", @@ -269,11 +362,11 @@ dependencies = [ "alloy-json-rpc", "alloy-network", "alloy-network-primitives", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rpc-client", "alloy-rpc-types-eth", "alloy-signer", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "alloy-transport", "alloy-transport-http", "async-stream", @@ -283,13 +376,13 @@ dependencies = [ "either", "futures", "futures-utils-wasm", - "lru", + "lru 0.13.0", "parking_lot", "pin-project", - "reqwest", + "reqwest 0.12.15", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", "tokio", "tracing", "url", @@ -325,13 +418,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e59b7ec68078fcae32736052a5f56ffe1a01da267c10692757a9ae70698bb99" dependencies = [ "alloy-json-rpc", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-transport", "alloy-transport-http", "async-stream", "futures", "pin-project", - "reqwest", + "reqwest 0.12.15", "serde", "serde_json", "tokio", @@ -364,14 +457,14 @@ dependencies = [ "alloy-consensus-any", "alloy-eips", "alloy-network-primitives", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "alloy-serde", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "itertools 0.14.0", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", ] [[package]] @@ -380,7 +473,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec9f6973e552b33c9e0733165ef3f6cea3cc70617d5768260e98a29aab5e974e" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "serde", "serde_json", ] @@ -391,13 +484,13 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "873c4e578c20af87b62b66d6f6c1cd81ab192f52515d4e63ddfecba1ac69216b" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "async-trait", "auto_impl", "either", "elliptic-curve", - "k256", - "thiserror", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", + "thiserror 2.0.12", ] [[package]] @@ -408,12 +501,26 @@ checksum = "52bbc5479f66f49f06c91b69c4ffd33b4df3b6f286c55c2dc94fb7ac8571053a" dependencies = [ "alloy-consensus", "alloy-network", - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-signer", "async-trait", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.8.5", - "thiserror", + "thiserror 2.0.12", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10ae8e9a91d328ae954c22542415303919aabe976fe7a92eb06db1b68fd59f2" +dependencies = [ + "alloy-sol-macro-expander 0.8.25", + "alloy-sol-macro-input 0.8.25", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.100", ] [[package]] @@ -422,12 +529,31 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8612e0658964d616344f199ab251a49d48113992d81b92dab93ed855faa66383" dependencies = [ - "alloy-sol-macro-expander", - "alloy-sol-macro-input", + "alloy-sol-macro-expander 1.1.2", + "alloy-sol-macro-input 1.1.2", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83ad5da86c127751bc607c174d6c9fe9b85ef0889a9ca0c641735d77d4f98f26" +dependencies = [ + "alloy-json-abi 0.8.25", + "alloy-sol-macro-input 0.8.25", + "const-hex", + "heck", + "indexmap 2.9.0", "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.100", + "syn-solidity 0.8.25", + "tiny-keccak", ] [[package]] @@ -436,7 +562,7 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a384edac7283bc4c010a355fb648082860c04b826bb7a814c45263c8f304c74" dependencies = [ - "alloy-sol-macro-input", + "alloy-sol-macro-input 1.1.2", "const-hex", "heck", "indexmap 2.9.0", @@ -444,10 +570,28 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.100", - "syn-solidity", + "syn-solidity 1.1.2", "tiny-keccak", ] +[[package]] +name = "alloy-sol-macro-input" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3d30f0d3f9ba3b7686f3ff1de9ee312647aac705604417a2f40c604f409a9e" +dependencies = [ + "alloy-json-abi 0.8.25", + "const-hex", + "dunce", + "heck", + "macro-string", + "proc-macro2", + "quote", + "serde_json", + "syn 2.0.100", + "syn-solidity 0.8.25", +] + [[package]] name = "alloy-sol-macro-input" version = "1.1.2" @@ -461,7 +605,17 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.100", - "syn-solidity", + "syn-solidity 1.1.2", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d162f8524adfdfb0e4bd0505c734c985f3e2474eb022af32eef0d52a4f3935c" +dependencies = [ + "serde", + "winnow 0.7.10", ] [[package]] @@ -471,7 +625,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e86ddeb70792c7ceaad23e57d52250107ebbb86733e52f4a25d8dc1abc931837" dependencies = [ "serde", - "winnow", + "winnow 0.7.10", +] + +[[package]] +name = "alloy-sol-types" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d43d5e60466a440230c07761aa67671d4719d46f43be8ea6e7ed334d8db4a9ab" +dependencies = [ + "alloy-json-abi 0.8.25", + "alloy-primitives 0.8.25", + "alloy-sol-macro 0.8.25", + "const-hex", + "serde", ] [[package]] @@ -480,9 +647,9 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "584cb97bfc5746cb9dcc4def77da11694b5d6d7339be91b7480a6a68dc129387" dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-macro", + "alloy-json-abi 1.1.2", + "alloy-primitives 1.1.2", + "alloy-sol-macro 1.1.2", "serde", ] @@ -493,15 +660,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db88a480955a3a1a6dbcd51076b03f522c64fb4ecb74545c4d38b0ca58d9fbe6" dependencies = [ "alloy-json-rpc", - "alloy-primitives", - "base64", - "derive_more", + "alloy-primitives 1.1.2", + "base64 0.22.1", + "derive_more 2.0.1", "futures", "futures-utils-wasm", "parking_lot", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", "tokio", "tower", "tracing", @@ -517,7 +684,7 @@ checksum = "1ba0d8eace41128b4dbf87adff5d63347b8004977aa7f9c62b63308539dd2a29" dependencies = [ "alloy-json-rpc", "alloy-transport", - "reqwest", + "reqwest 0.12.15", "serde_json", "tower", "tracing", @@ -530,10 +697,10 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "983d99aa81f586cef9dae38443245e585840fcf0fc58b09aee0b1f27aed1d500" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", "alloy-rlp", "arrayvec", - "derive_more", + "derive_more 2.0.1", "nybbles", "serde", "smallvec", @@ -561,6 +728,15 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" +[[package]] +name = "ansi_term" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +dependencies = [ + "winapi", +] + [[package]] name = "anstream" version = "0.6.18" @@ -623,6 +799,16 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +[[package]] +name = "ariadne" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "367fd0ad87307588d087544707bc5fbf4805ded96c7db922b70d368fa1cb5702" +dependencies = [ + "unicode-width 0.1.14", + "yansi 0.5.1", +] + [[package]] name = "ark-bls12-381" version = "0.5.0" @@ -835,7 +1021,7 @@ dependencies = [ "ark-ff 0.5.0", "ark-std 0.5.0", "tracing", - "tracing-subscriber", + "tracing-subscriber 0.2.25", ] [[package]] @@ -928,6 +1114,15 @@ dependencies = [ "serde", ] +[[package]] +name = "ascii-canvas" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" +dependencies = [ + "term", +] + [[package]] name = "async-stream" version = "0.3.6" @@ -961,6 +1156,15 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "atomic" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" +dependencies = [ + "bytemuck", +] + [[package]] name = "aurora-engine-modexp" version = "1.2.0" @@ -1000,6 +1204,7 @@ dependencies = [ "miniz_oxide", "object", "rustc-demangle", + "serde", "windows-targets 0.52.6", ] @@ -1009,6 +1214,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + [[package]] name = "base64" version = "0.22.1" @@ -1030,21 +1241,60 @@ dependencies = [ "serde", ] +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec 0.6.3", +] + [[package]] name = "bit-set" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "bit-vec", + "bit-vec 0.8.0", ] +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + [[package]] name = "bit-vec" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +[[package]] +name = "bitcode" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf300f4aa6e66f3bdff11f1236a88c622fe47ea814524792240b4d554d9858ee" +dependencies = [ + "arrayvec", + "bitcode_derive", + "bytemuck", + "glam", + "serde", +] + +[[package]] +name = "bitcode_derive" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42b6b4cb608b8282dc3b53d0f4c9ab404655d562674c682db7e6c0458cc83c23" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "bitcoin-io" version = "0.1.3" @@ -1061,6 +1311,12 @@ dependencies = [ "hex-conservative", ] +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + [[package]] name = "bitflags" version = "2.9.0" @@ -1083,6 +1339,26 @@ dependencies = [ "wyz", ] +[[package]] +name = "blake2" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "blake2b_simd" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" +dependencies = [ + "arrayref", + "arrayvec", + "constant_time_eq 0.3.1", +] + [[package]] name = "blake3" version = "1.8.2" @@ -1093,7 +1369,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq", + "constant_time_eq 0.3.1", ] [[package]] @@ -1114,6 +1390,32 @@ dependencies = [ "generic-array", ] +[[package]] +name = "bls12_381" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3c196a77437e7cc2fb515ce413a6401291578b5afc8ecb29a3c7ab957f05941" +dependencies = [ + "ff 0.12.1", + "group 0.12.1", + "pairing 0.22.0", + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "bls12_381" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7bc6d6292be3a19e6379786dac800f551e5865a5bb51ebbe3064ab80433f403" +dependencies = [ + "ff 0.13.1", + "group 0.13.0", + "pairing 0.23.0", + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "blst" version = "0.3.14" @@ -1126,6 +1428,47 @@ dependencies = [ "zeroize", ] +[[package]] +name = "bon" +version = "3.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced38439e7a86a4761f7f7d5ded5ff009135939ecb464a24452eaa4c1696af7d" +dependencies = [ + "bon-macros", + "rustversion", +] + +[[package]] +name = "bon-macros" +version = "3.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce61d2d3844c6b8d31b2353d9f66cf5e632b3e9549583fe3cac2f4f6136725e" +dependencies = [ + "darling", + "ident_case", + "prettyplease", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.100", +] + +[[package]] +name = "bstr" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "build_const" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7" + [[package]] name = "bumpalo" version = "3.17.0" @@ -1138,6 +1481,12 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" +[[package]] +name = "bytemuck" +version = "1.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c76a5792e44e4abe34d3abf15636779261d45a7450612059293d1d2cfc63422" + [[package]] name = "byteorder" version = "1.5.0" @@ -1153,6 +1502,26 @@ dependencies = [ "serde", ] +[[package]] +name = "bzip2" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" +dependencies = [ + "bzip2-sys", + "libc", +] + +[[package]] +name = "bzip2-sys" +version = "0.1.13+1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" +dependencies = [ + "cc", + "pkg-config", +] + [[package]] name = "c-kzg" version = "2.1.1" @@ -1168,6 +1537,38 @@ dependencies = [ "serde", ] +[[package]] +name = "camino" +version = "1.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo-platform" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" +dependencies = [ + "camino", + "cargo-platform", + "semver 1.0.26", + "serde", + "serde_json", + "thiserror 1.0.69", +] + [[package]] name = "cast" version = "0.3.0" @@ -1180,6 +1581,8 @@ version = "1.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e3a13707ac958681c13b39b458c073d0d9bc8a22cb1b2f4c8e55eb72c13f362" dependencies = [ + "jobserver", + "libc", "shlex", ] @@ -1229,6 +1632,16 @@ dependencies = [ "half", ] +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + [[package]] name = "clap" version = "4.5.37" @@ -1345,7 +1758,7 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width", + "unicode-width 0.2.0", "windows-sys 0.59.0", ] @@ -1388,12 +1801,24 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "constant_time_eq" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" + [[package]] name = "constant_time_eq" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + [[package]] name = "core-foundation" version = "0.9.4" @@ -1434,6 +1859,15 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +dependencies = [ + "cfg-if", +] + [[package]] name = "criterion-plot" version = "0.5.0" @@ -1444,6 +1878,28 @@ dependencies = [ "itertools 0.10.5", ] +[[package]] +name = "crossbeam" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -1463,6 +1919,15 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "crossbeam-queue" +version = "0.3.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "crossbeam-utils" version = "0.8.21" @@ -1577,6 +2042,28 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-new" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "derive-new" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cdc8d50f426189eef89dac62fabfa0abb27d5cc008f25bf4156a0203325becc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "derive-where" version = "1.2.7" @@ -1599,13 +2086,47 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "derive_more" +version = "0.99.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version 0.4.1", + "syn 2.0.100", +] + +[[package]] +name = "derive_more" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +dependencies = [ + "derive_more-impl 1.0.0", +] + [[package]] name = "derive_more" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" dependencies = [ - "derive_more-impl", + "derive_more-impl 2.0.1", +] + +[[package]] +name = "derive_more-impl" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", + "unicode-xid", ] [[package]] @@ -1641,6 +2162,48 @@ dependencies = [ "subtle", ] +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + [[package]] name = "displaydoc" version = "0.2.5" @@ -1652,6 +2215,12 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "downcast-rs" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" + [[package]] name = "dunce" version = "1.0.5" @@ -1694,6 +2263,12 @@ dependencies = [ "serde", ] +[[package]] +name = "elf" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4445909572dbd556c457c849c4ca58623d84b27c8fff1e74b0b4227d8b90d17b" + [[package]] name = "elliptic-curve" version = "0.13.8" @@ -1703,9 +2278,9 @@ dependencies = [ "base16ct", "crypto-bigint", "digest 0.10.7", - "ff", + "ff 0.13.1", "generic-array", - "group", + "group 0.13.0", "pkcs8", "rand_core 0.6.4", "sec1", @@ -1714,12 +2289,36 @@ dependencies = [ "zeroize", ] +[[package]] +name = "ena" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" +dependencies = [ + "log", +] + [[package]] name = "encode_unicode" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" +[[package]] +name = "encoding_rs" +version = "0.8.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "endian-type" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" + [[package]] name = "enum-ordinalize" version = "4.3.0" @@ -1740,6 +2339,29 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "enum_dispatch" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "enumn" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "equivalent" version = "1.0.2" @@ -1757,77 +2379,203 @@ dependencies = [ ] [[package]] -name = "example-block-traces" -version = "0.0.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-provider", - "anyhow", - "indicatif", - "revm", - "tokio", -] - -[[package]] -name = "example-cheatcode-inspector" -version = "0.0.0" +name = "ethabi" +version = "18.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" dependencies = [ - "anyhow", - "revm", + "ethereum-types", + "hex", + "once_cell", + "regex", + "serde", + "serde_json", + "sha3", + "thiserror 1.0.69", + "uint", ] [[package]] -name = "example-contract-deployment" -version = "0.0.0" +name = "ethbloom" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" dependencies = [ - "anyhow", - "revm", + "crunchy", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "scale-info", + "tiny-keccak", ] [[package]] -name = "example-custom-opcodes" -version = "0.0.0" +name = "ethereum-types" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" dependencies = [ - "revm", + "ethbloom", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "primitive-types", + "scale-info", + "uint", ] [[package]] -name = "example-database-components" -version = "0.0.0" +name = "ethers-core" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" dependencies = [ - "auto_impl", - "revm", - "thiserror", + "arrayvec", + "bytes", + "chrono", + "const-hex", + "elliptic-curve", + "ethabi", + "generic-array", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", + "num_enum", + "open-fastrlp", + "rand 0.8.5", + "rlp", + "serde", + "serde_json", + "strum 0.26.3", + "tempfile", + "thiserror 1.0.69", + "tiny-keccak", + "unicode-xid", ] [[package]] -name = "example-erc20-gas" -version = "0.0.0" +name = "ethers-etherscan" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ - "alloy-provider", - "alloy-sol-types", - "anyhow", - "revm", - "tokio", + "chrono", + "ethers-core", + "reqwest 0.11.27", + "semver 1.0.26", + "serde", + "serde_json", + "thiserror 1.0.69", + "tracing", ] [[package]] -name = "example-my-evm" -version = "0.0.0" +name = "ethers-solc" +version = "2.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de34e484e7ae3cab99fbfd013d6c5dc7f9013676a4e0e414d8b12e1213e8b3ba" dependencies = [ - "revm", -] - -[[package]] -name = "example-uniswap-get-reserves" + "cfg-if", + "const-hex", + "dirs", + "dunce", + "ethers-core", + "futures-util", + "glob", + "home", + "md-5", + "num_cpus", + "once_cell", + "path-slash", + "rayon", + "regex", + "semver 1.0.26", + "serde", + "serde_json", + "sha2 0.10.8", + "solang-parser", + "svm-rs", + "svm-rs-builds", + "thiserror 1.0.69", + "tiny-keccak", + "tokio", + "tracing", + "walkdir", + "yansi 0.5.1", +] + +[[package]] +name = "example-block-traces" +version = "0.0.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-provider", + "anyhow", + "indicatif", + "revm 24.0.1", + "tokio", +] + +[[package]] +name = "example-cheatcode-inspector" +version = "0.0.0" +dependencies = [ + "anyhow", + "revm 24.0.1", +] + +[[package]] +name = "example-contract-deployment" +version = "0.0.0" +dependencies = [ + "anyhow", + "revm 24.0.1", +] + +[[package]] +name = "example-custom-opcodes" +version = "0.0.0" +dependencies = [ + "revm 24.0.1", +] + +[[package]] +name = "example-database-components" +version = "0.0.0" +dependencies = [ + "auto_impl", + "revm 24.0.1", + "thiserror 2.0.12", +] + +[[package]] +name = "example-erc20-gas" +version = "0.0.0" +dependencies = [ + "alloy-provider", + "alloy-sol-types 1.1.2", + "anyhow", + "revm 24.0.1", + "tokio", +] + +[[package]] +name = "example-my-evm" +version = "0.0.0" +dependencies = [ + "revm 24.0.1", +] + +[[package]] +name = "example-uniswap-get-reserves" version = "0.0.0" dependencies = [ "alloy-eips", "alloy-provider", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "anyhow", - "revm", + "revm 24.0.1", "tokio", ] @@ -1837,12 +2585,22 @@ version = "0.0.0" dependencies = [ "alloy-eips", "alloy-provider", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "anyhow", - "revm", + "revm 24.0.1", "tokio", ] +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + [[package]] name = "fastrand" version = "2.3.0" @@ -1871,12 +2629,24 @@ dependencies = [ "bytes", ] +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "bitvec", + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "ff" version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ + "bitvec", "byteorder", "ff_derive", "rand_core 0.6.4", @@ -1898,6 +2668,20 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "figment" +version = "0.10.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" +dependencies = [ + "atomic", + "pear", + "serde", + "toml 0.8.23", + "uncased", + "version_check", +] + [[package]] name = "fixed-hash" version = "0.8.0" @@ -1910,6 +2694,22 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "flate2" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + [[package]] name = "fnv" version = "1.0.7" @@ -1937,6 +2737,21 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +[[package]] +name = "forge-fmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac0b82597ff80bc12b3b001dfb968769c345e353650dd32d337f2c64d2167c88" +dependencies = [ + "alloy-primitives 0.3.3", + "ariadne", + "foundry-config", + "itertools 0.11.0", + "solang-parser", + "thiserror 1.0.69", + "tracing", +] + [[package]] name = "form_urlencoded" version = "1.2.1" @@ -1946,6 +2761,48 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "foundry-config" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a64a9bdad47eb4d950523b8ff14e675db8f2226a2aef79063d9344449b3abd5" +dependencies = [ + "Inflector", + "dirs-next", + "ethers-core", + "ethers-etherscan", + "ethers-solc", + "eyre", + "figment", + "globset", + "number_prefix", + "once_cell", + "open-fastrlp", + "path-slash", + "regex", + "reqwest 0.11.27", + "revm-primitives 1.3.0", + "semver 1.0.26", + "serde", + "serde_json", + "serde_regex", + "thiserror 1.0.69", + "toml 0.7.8", + "toml_edit 0.19.15", + "tracing", + "walkdir", +] + +[[package]] +name = "fs2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "funty" version = "2.0.0" @@ -2093,29 +2950,91 @@ dependencies = [ "wasi 0.14.2+wasi-0.2.4", ] +[[package]] +name = "getset" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3586f256131df87204eb733da72e3d3eb4f343c639f4b7be279ac7c48baeafe" +dependencies = [ + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "gimli" version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +[[package]] +name = "glam" +version = "0.30.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b46b9ca4690308844c644e7c634d68792467260e051c8543e0c7871662b3ba7" + [[package]] name = "glob" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +[[package]] +name = "globset" +version = "0.4.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" +dependencies = [ + "aho-corasick", + "bstr", + "log", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "group" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" +dependencies = [ + "ff 0.12.1", + "memuse", + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "group" version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ - "ff", + "ff 0.13.1", "rand_core 0.6.4", "subtle", ] +[[package]] +name = "h2" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http 0.2.12", + "indexmap 2.9.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + [[package]] name = "half" version = "2.6.0" @@ -2127,80 +3046,273 @@ dependencies = [ ] [[package]] -name = "hash-db" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" - -[[package]] -name = "hashbrown" -version = "0.15.2" +name = "halo2" +version = "0.1.0-beta.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "2a23c779b38253fe1538102da44ad5bd5378495a61d2c4ee18d64eaa61ae5995" dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", - "serde", + "halo2_proofs", ] [[package]] -name = "heck" +name = "halo2-axiom" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "62f0ca78d12ac5c893f286d7cdfe3869290305ab8cac376e2592cdc8396da102" +dependencies = [ + "blake2b_simd", + "crossbeam", + "ff 0.13.1", + "group 0.13.0", + "halo2curves-axiom", + "itertools 0.11.0", + "maybe-rayon", + "pairing 0.23.0", + "rand 0.8.5", + "rand_core 0.6.4", + "rayon", + "rustc-hash 1.1.0", + "sha3", + "tracing", +] [[package]] -name = "hermit-abi" +name = "halo2-base" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" +checksum = "678cf3adc0a39d7b4d9b82315a655201aa24a430dd1902b162c508047f56ac69" +dependencies = [ + "getset", + "halo2-axiom", + "itertools 0.11.0", + "log", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "poseidon-primitives", + "rand_chacha 0.3.1", + "rayon", + "rustc-hash 1.1.0", + "serde", + "serde_json", +] [[package]] -name = "hex" -version = "0.4.3" +name = "halo2-ecc" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +checksum = "645c00681fdd1febaf552d8814e9f5a6a142d81a1514102190da07039588b366" dependencies = [ + "halo2-base", + "itertools 0.11.0", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "rayon", "serde", + "serde_json", + "test-case", ] [[package]] -name = "hex-conservative" -version = "0.2.1" +name = "halo2_proofs" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +checksum = "e925780549adee8364c7f2b685c753f6f3df23bde520c67416e93bf615933760" dependencies = [ - "arrayvec", + "blake2b_simd", + "ff 0.12.1", + "group 0.12.1", + "pasta_curves 0.4.1", + "rand_core 0.6.4", + "rayon", ] [[package]] -name = "hmac" -version = "0.12.1" +name = "halo2curves" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b756596082144af6e57105a20403b7b80fe9dccd085700b74fae3af523b74dba" +dependencies = [ + "blake2", + "digest 0.10.7", + "ff 0.13.1", + "group 0.13.0", + "halo2derive", + "hex", + "lazy_static", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "pairing 0.23.0", + "paste", + "rand 0.8.5", + "rand_core 0.6.4", + "rayon", + "serde", + "serde_arrays 0.1.0", + "sha2 0.10.8", + "static_assertions", + "subtle", + "unroll", +] + +[[package]] +name = "halo2curves-axiom" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8309e4638b4f1bcf6613d72265a84074d26034c35edc5d605b5688e580b8b8" +dependencies = [ + "blake2b_simd", + "digest 0.10.7", + "ff 0.13.1", + "group 0.13.0", + "hex", + "lazy_static", + "num-bigint 0.4.6", + "num-traits", + "pairing 0.23.0", + "pasta_curves 0.5.1", + "paste", + "rand 0.8.5", + "rand_core 0.6.4", + "rayon", + "serde", + "serde_arrays 0.1.0", + "sha2 0.10.8", + "static_assertions", + "subtle", + "unroll", +] + +[[package]] +name = "halo2derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdb99e7492b4f5ff469d238db464131b86c2eaac814a78715acba369f64d2c76" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "hash-db" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash", + "allocator-api2", +] + +[[package]] +name = "hashbrown" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", + "serde", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hermit-abi" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hex-conservative" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] + +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + +[[package]] +name = "hex-literal" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcaaec4551594c969335c98c903c1397853d4198408ea609190f420500f6be71" + +[[package]] +name = "hmac" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ "digest 0.10.7", ] +[[package]] +name = "home" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "http" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + [[package]] name = "http" version = "1.3.1" @@ -2212,6 +3324,17 @@ dependencies = [ "itoa", ] +[[package]] +name = "http-body" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +dependencies = [ + "bytes", + "http 0.2.12", + "pin-project-lite", +] + [[package]] name = "http-body" version = "1.0.1" @@ -2219,7 +3342,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http", + "http 1.3.1", ] [[package]] @@ -2230,8 +3353,8 @@ checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", "futures-core", - "http", - "http-body", + "http 1.3.1", + "http-body 1.0.1", "pin-project-lite", ] @@ -2241,6 +3364,36 @@ version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "hyper" +version = "0.14.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http 0.2.12", + "http-body 0.4.6", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", + "want", +] + [[package]] name = "hyper" version = "1.6.0" @@ -2250,8 +3403,8 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http", - "http-body", + "http 1.3.1", + "http-body 1.0.1", "httparse", "itoa", "pin-project-lite", @@ -2260,6 +3413,20 @@ dependencies = [ "want", ] +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http 0.2.12", + "hyper 0.14.32", + "rustls", + "tokio", + "tokio-rustls", +] + [[package]] name = "hyper-tls" version = "0.6.0" @@ -2268,7 +3435,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper", + "hyper 1.6.0", "hyper-util", "native-tls", "tokio", @@ -2285,9 +3452,9 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http", - "http-body", - "hyper", + "http 1.3.1", + "http-body 1.0.1", + "hyper 1.6.0", "libc", "pin-project-lite", "socket2", @@ -2474,6 +3641,24 @@ dependencies = [ "parity-scale-codec", ] +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + +[[package]] +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +dependencies = [ + "serde", +] + [[package]] name = "impl-trait-for-tuples" version = "0.2.3" @@ -2485,6 +3670,12 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + [[package]] name = "indexmap" version = "1.9.3" @@ -2517,10 +3708,25 @@ dependencies = [ "console", "number_prefix", "portable-atomic", - "unicode-width", + "unicode-width 0.2.0", "web-time", ] +[[package]] +name = "inlinable_string" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" + +[[package]] +name = "inout" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" +dependencies = [ + "generic-array", +] + [[package]] name = "ipnet" version = "2.11.0" @@ -2553,6 +3759,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.12.1" @@ -2586,6 +3801,16 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +[[package]] +name = "jobserver" +version = "0.1.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" +dependencies = [ + "getrandom 0.3.2", + "libc", +] + [[package]] name = "js-sys" version = "0.3.77" @@ -2596,6 +3821,20 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "jubjub" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a575df5f985fe1cd5b2b05664ff6accfc46559032b954529fd225a2168d27b0f" +dependencies = [ + "bitvec", + "bls12_381 0.7.1", + "ff 0.12.1", + "group 0.12.1", + "rand_core 0.6.4", + "subtle", +] + [[package]] name = "k256" version = "0.13.4" @@ -2610,6 +3849,24 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "k256" +version = "0.13.4" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "ecdsa", + "elliptic-curve", + "ff 0.13.1", + "hex-literal 0.4.1", + "num-bigint 0.4.6", + "openvm", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-ecc-guest", + "openvm-ecc-sw-macros", + "serde", +] + [[package]] name = "keccak" version = "0.1.5" @@ -2635,21 +3892,51 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffd8d5f2e17b33192c9e9d748a2b00200896727882b6410fc5ed1efd4667ce20" dependencies = [ - "ff", + "ff 0.13.1", "hex", - "serde_arrays", + "serde_arrays 0.2.0", "sha2 0.10.8", "sp1_bls12_381", - "spin", + "spin 0.9.8", ] [[package]] -name = "lazy_static" -version = "1.5.0" +name = "lalrpop" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" dependencies = [ - "spin", + "ascii-canvas", + "bit-set 0.5.3", + "ena", + "itertools 0.11.0", + "lalrpop-util", + "petgraph", + "regex", + "regex-syntax 0.8.5", + "string_cache", + "term", + "tiny-keccak", + "unicode-xid", + "walkdir", +] + +[[package]] +name = "lalrpop-util" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" +dependencies = [ + "regex-automata 0.4.9", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +dependencies = [ + "spin 0.9.8", ] [[package]] @@ -2664,6 +3951,16 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags 2.9.0", + "libc", +] + [[package]] name = "libsecp256k1" version = "0.7.2" @@ -2671,7 +3968,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" dependencies = [ "arrayref", - "base64", + "base64 0.22.1", "digest 0.9.0", "libsecp256k1-core", "libsecp256k1-gen-ecmult", @@ -2732,12 +4029,27 @@ dependencies = [ "scopeguard", ] +[[package]] +name = "lockfree-object-pool" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" + [[package]] name = "log" version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +dependencies = [ + "hashbrown 0.15.2", +] + [[package]] name = "lru" version = "0.13.0" @@ -2758,12 +4070,93 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "maybe-rayon" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" +dependencies = [ + "cfg-if", + "rayon", +] + +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + [[package]] name = "memchr" version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "memuse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d97bbf43eb4f088f8ca469930cde17fa036207c9a5e02ccc5107c4e8b17c964" + +[[package]] +name = "metrics" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3045b4193fbdc5b5681f32f11070da9be3609f189a79f3390706d42587f46bb5" +dependencies = [ + "ahash", + "portable-atomic", +] + +[[package]] +name = "metrics-tracing-context" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62a6a1f7141f1d9bc7a886b87536bbfc97752e08b369e1e0453a9acfab5f5da4" +dependencies = [ + "indexmap 2.9.0", + "itoa", + "lockfree-object-pool", + "metrics", + "metrics-util", + "once_cell", + "tracing", + "tracing-core", + "tracing-subscriber 0.3.19", +] + +[[package]] +name = "metrics-util" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4259040465c955f9f2f1a4a8a16dc46726169bca0f88e8fb2dbeced487c3e828" +dependencies = [ + "aho-corasick", + "crossbeam-epoch", + "crossbeam-utils", + "hashbrown 0.14.5", + "indexmap 2.9.0", + "metrics", + "num_cpus", + "ordered-float", + "quanta", + "radix_trie", + "sketches-ddsketch", +] + [[package]] name = "mime" version = "0.3.17" @@ -2807,6 +4200,31 @@ dependencies = [ "tempfile", ] +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + +[[package]] +name = "nibble_vec" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" +dependencies = [ + "smallvec", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + [[package]] name = "num" version = "0.4.3" @@ -2840,6 +4258,8 @@ checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ "num-integer", "num-traits", + "rand 0.8.5", + "serde", ] [[package]] @@ -2877,6 +4297,33 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-modular" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a5fe11d4135c3bcdf3a95b18b194afa9608a5f6ff034f5d857bc9a27fb0119" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-prime" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e238432a7881ec7164503ccc516c014bf009be7984cde1ba56837862543bdec3" +dependencies = [ + "bitvec", + "either", + "lru 0.12.5", + "num-bigint 0.4.6", + "num-integer", + "num-modular", + "num-traits", + "rand 0.8.5", +] + [[package]] name = "num-rational" version = "0.4.2" @@ -2935,6 +4382,18 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" +[[package]] +name = "nums" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf3c74f925fb8cfc49a8022f2afce48a0683b70f9e439885594e84c5edbf5b01" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "rand 0.8.5", +] + [[package]] name = "nybbles" version = "0.3.4" @@ -2973,11 +4432,11 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" name = "op-revm" version = "5.0.1" dependencies = [ - "alloy-primitives", - "alloy-sol-types", + "alloy-primitives 1.1.2", + "alloy-sol-types 1.1.2", "auto_impl", "once_cell", - "revm", + "revm 24.0.1", "rstest", "serde", "serde_json", @@ -2990,13 +4449,38 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "open-fastrlp" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", + "ethereum-types", + "open-fastrlp-derive", +] + +[[package]] +name = "open-fastrlp-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" +dependencies = [ + "bytes", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "openssl" version = "0.10.72" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" dependencies = [ - "bitflags", + "bitflags 2.9.0", "cfg-if", "foreign-types", "libc", @@ -3035,162 +4519,1484 @@ dependencies = [ ] [[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +name = "openvm" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.8", + "bytemuck", + "getrandom 0.3.2", + "num-bigint 0.4.6", + "openvm-custom-insn", + "openvm-platform", + "openvm-rv32im-guest", + "serde", ] [[package]] -name = "p3-baby-bear" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49ecc3edc6fb8186268e05031c26a8b2b1e567957d63adcae1026d55d6bb189b" +name = "openvm-algebra-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "itertools 0.14.0", "num-bigint 0.4.6", - "p3-field", - "p3-mds", - "p3-poseidon2", - "p3-symmetric", + "num-traits", + "openvm-algebra-transpiler", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-mod-circuit-builder", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", + "serde-big-array", + "serde_with", + "strum 0.26.3", ] [[package]] -name = "p3-dft" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eece7b035978976138622b116fefe6c4cc372b1ce70739c40e7a351a9bb68f1f" +name = "openvm-algebra-complex-macros" +version = "0.1.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "p3-field", - "p3-matrix", - "p3-maybe-rayon", - "p3-util", - "tracing", + "openvm-macros-common", + "quote", + "syn 2.0.100", ] [[package]] -name = "p3-field" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6f0edf3fde4fd0d1455e901fc871c558010ae18db6e68f1b0fa111391855316" +name = "openvm-algebra-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "itertools 0.12.1", + "halo2curves-axiom", "num-bigint 0.4.6", - "num-traits", - "p3-util", - "rand 0.8.5", - "serde", + "once_cell", + "openvm-algebra-complex-macros", + "openvm-algebra-moduli-macros", + "openvm-custom-insn", + "openvm-rv32im-guest", + "serde-big-array", + "strum_macros 0.26.4", ] [[package]] -name = "p3-matrix" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60961b4d7ffd2e8412ce4e66e213de610356df71cc4e396519c856a664138a27" +name = "openvm-algebra-moduli-macros" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "itertools 0.12.1", - "p3-field", - "p3-maybe-rayon", - "p3-util", - "rand 0.8.5", - "serde", - "tracing", + "num-bigint 0.4.6", + "num-prime", + "openvm-macros-common", + "quote", + "syn 2.0.100", ] [[package]] -name = "p3-maybe-rayon" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bbe762738c382c9483410f52348ab9de41bb42c391e8171643a71486cf1ef8f" - -[[package]] -name = "p3-mds" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4127956cc6c783b7d021c5c42d5d89456d5f3bda4a7b165fcc2a3fd4e78fbede" +name = "openvm-algebra-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "itertools 0.12.1", - "p3-dft", - "p3-field", - "p3-matrix", - "p3-symmetric", - "p3-util", - "rand 0.8.5", + "openvm-algebra-guest", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", ] [[package]] -name = "p3-poseidon2" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be09497da406a98e89dc05c1ce539eeef29541bad61a5b2108a44ffe94dd0b4c" +name = "openvm-bigint-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "gcd", - "p3-field", - "p3-mds", - "p3-symmetric", + "derive-new 0.6.0", + "derive_more 1.0.0", + "openvm-bigint-transpiler", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", ] [[package]] -name = "p3-symmetric" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e7d954033f657d48490344ca4b3dbcc054962a0e92831b736666bb2f5e5820b" +name = "openvm-bigint-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "itertools 0.12.1", - "p3-field", - "serde", + "openvm-platform", + "strum_macros 0.26.4", ] [[package]] -name = "p3-util" -version = "0.2.2-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a6ce0b6bee23fd54e05306f6752ae80b0b71a91166553ab39d7899801497237" +name = "openvm-bigint-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "serde", + "openvm-bigint-guest", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", ] [[package]] -name = "pairing" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +name = "openvm-build" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "group", + "cargo_metadata", + "eyre", + "openvm-platform", + "serde", + "serde_json", ] [[package]] -name = "parity-scale-codec" -version = "3.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +name = "openvm-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "arrayvec", - "bitvec", - "byte-slice-cast", - "const_format", - "impl-trait-for-tuples", - "parity-scale-codec-derive", - "rustversion", + "backtrace", + "cfg-if", + "derivative", + "derive-new 0.6.0", + "derive_more 1.0.0", + "enum_dispatch", + "eyre", + "getset", + "itertools 0.14.0", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-poseidon2-air", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-baby-bear 0.1.0", + "rand 0.8.5", + "rustc-hash 2.1.1", "serde", + "serde-big-array", + "static_assertions", + "thiserror 1.0.69", + "tracing", ] [[package]] -name = "parity-scale-codec-derive" -version = "3.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +name = "openvm-circuit-derive" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" dependencies = [ - "proc-macro-crate", - "proc-macro2", + "itertools 0.14.0", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-circuit-primitives" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-circuit-primitives-derive", + "openvm-stark-backend", + "rand 0.8.5", + "tracing", +] + +[[package]] +name = "openvm-circuit-primitives-derive" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "itertools 0.14.0", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-continuations" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derivative", + "openvm-circuit", + "openvm-native-compiler", + "openvm-native-recursion", + "openvm-stark-backend", + "openvm-stark-sdk", + "serde", + "static_assertions", +] + +[[package]] +name = "openvm-custom-insn" +version = "0.1.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-ecc-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "hex-literal 0.4.1", + "lazy_static", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "once_cell", + "openvm-algebra-circuit", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-ecc-transpiler", + "openvm-instructions", + "openvm-mod-circuit-builder", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "serde", + "serde_with", + "strum 0.26.3", +] + +[[package]] +name = "openvm-ecc-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "ecdsa", + "elliptic-curve", + "group 0.13.0", + "halo2curves-axiom", + "once_cell", + "openvm", + "openvm-algebra-guest", + "openvm-custom-insn", + "openvm-ecc-sw-macros", + "openvm-rv32im-guest", + "serde", + "strum_macros 0.26.4", +] + +[[package]] +name = "openvm-ecc-sw-macros" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-macros-common", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-ecc-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-ecc-guest", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", +] + +[[package]] +name = "openvm-instructions" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "backtrace", + "derive-new 0.6.0", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-instructions-derive", + "openvm-stark-backend", + "serde", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "openvm-instructions-derive" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-keccak256" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-keccak256-guest", + "tiny-keccak", +] + +[[package]] +name = "openvm-keccak256-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "itertools 0.14.0", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-keccak256-transpiler", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-keccak-air", + "rand 0.8.5", + "serde", + "serde-big-array", + "strum 0.26.3", + "tiny-keccak", + "tracing", +] + +[[package]] +name = "openvm-keccak256-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-platform", +] + +[[package]] +name = "openvm-keccak256-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-keccak256-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", +] + +[[package]] +name = "openvm-kzg" +version = "0.1.0-alpha" +source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=2ba87b7425479662d901cea33e26cda67981a6b6#2ba87b7425479662d901cea33e26cda67981a6b6" +dependencies = [ + "bls12_381 0.8.0", + "hex", + "hex-literal 1.0.0", + "openvm-algebra-guest", + "openvm-ecc-guest", + "openvm-pairing", + "serde", + "serde-big-array", + "spin 0.10.0", +] + +[[package]] +name = "openvm-macros-common" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "syn 2.0.100", +] + +[[package]] +name = "openvm-mod-circuit-builder" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-circuit", + "openvm-circuit-primitives", + "openvm-instructions", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand 0.8.5", + "serde", + "serde_with", + "tracing", +] + +[[package]] +name = "openvm-native-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "itertools 0.14.0", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-native-compiler", + "openvm-poseidon2-air", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand 0.8.5", + "serde", + "serde-big-array", + "static_assertions", + "strum 0.26.3", + "tracing", +] + +[[package]] +name = "openvm-native-compiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "backtrace", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-integer", + "openvm-circuit", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-native-compiler-derive", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", + "serde", + "snark-verifier-sdk", + "strum 0.26.3", + "strum_macros 0.26.4", + "zkhash", +] + +[[package]] +name = "openvm-native-compiler-derive" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "quote", + "syn 2.0.100", +] + +[[package]] +name = "openvm-native-recursion" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "cfg-if", + "itertools 0.14.0", + "lazy_static", + "once_cell", + "openvm-circuit", + "openvm-native-circuit", + "openvm-native-compiler", + "openvm-native-compiler-derive", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-dft 0.1.0", + "p3-fri", + "p3-merkle-tree", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", + "serde_json", + "serde_with", + "snark-verifier-sdk", + "tracing", +] + +[[package]] +name = "openvm-native-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-instructions", + "openvm-transpiler", + "p3-field 0.1.0", +] + +[[package]] +name = "openvm-pairing" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "group 0.13.0", + "hex-literal 0.4.1", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm", + "openvm-algebra-complex-macros", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-custom-insn", + "openvm-ecc-guest", + "openvm-ecc-sw-macros", + "openvm-pairing-guest", + "openvm-platform", + "openvm-rv32im-guest", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "openvm-pairing-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "halo2curves-axiom", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-algebra-circuit", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-ecc-circuit", + "openvm-ecc-guest", + "openvm-instructions", + "openvm-mod-circuit-builder", + "openvm-pairing-guest", + "openvm-pairing-transpiler", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "rand 0.8.5", + "serde", + "strum 0.26.3", +] + +[[package]] +name = "openvm-pairing-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "halo2curves-axiom", + "hex-literal 0.4.1", + "itertools 0.14.0", + "lazy_static", + "num-bigint 0.4.6", + "num-traits", + "openvm", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-custom-insn", + "openvm-ecc-guest", + "rand 0.8.5", + "serde", + "strum_macros 0.26.4", +] + +[[package]] +name = "openvm-pairing-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-pairing-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", +] + +[[package]] +name = "openvm-platform" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "libm", + "openvm-custom-insn", + "openvm-rv32im-guest", +] + +[[package]] +name = "openvm-poseidon2-air" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derivative", + "lazy_static", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-monty-31", + "p3-poseidon2 0.1.0", + "p3-poseidon2-air", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "zkhash", +] + +[[package]] +name = "openvm-rv32-adapters" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "itertools 0.14.0", + "openvm-circuit", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand 0.8.5", + "serde", + "serde-big-array", + "serde_with", +] + +[[package]] +name = "openvm-rv32im-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "num-bigint 0.4.6", + "num-integer", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "rand 0.8.5", + "serde", + "serde-big-array", + "strum 0.26.3", +] + +[[package]] +name = "openvm-rv32im-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-custom-insn", + "p3-field 0.1.0", + "strum_macros 0.26.4", +] + +[[package]] +name = "openvm-rv32im-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-rv32im-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "serde", + "strum 0.26.3", + "tracing", +] + +[[package]] +name = "openvm-sdk" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "alloy-sol-types 0.8.25", + "async-trait", + "bitcode", + "bon", + "clap", + "derivative", + "derive_more 1.0.0", + "eyre", + "forge-fmt", + "getset", + "hex", + "itertools 0.14.0", + "metrics", + "num-bigint 0.4.6", + "openvm", + "openvm-algebra-circuit", + "openvm-algebra-transpiler", + "openvm-bigint-circuit", + "openvm-bigint-transpiler", + "openvm-build", + "openvm-circuit", + "openvm-continuations", + "openvm-ecc-circuit", + "openvm-ecc-transpiler", + "openvm-keccak256-circuit", + "openvm-keccak256-transpiler", + "openvm-native-circuit", + "openvm-native-compiler", + "openvm-native-recursion", + "openvm-native-transpiler", + "openvm-pairing-circuit", + "openvm-pairing-transpiler", + "openvm-rv32im-circuit", + "openvm-rv32im-transpiler", + "openvm-sha256-circuit", + "openvm-sha256-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", + "openvm-transpiler", + "p3-fri", + "rrs-lib", + "serde", + "serde_json", + "serde_with", + "snark-verifier", + "snark-verifier-sdk", + "tempfile", + "thiserror 1.0.69", + "tracing", +] + +[[package]] +name = "openvm-sha2" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-sha256-guest", + "sha2 0.10.8", +] + +[[package]] +name = "openvm-sha256-air" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-circuit-primitives", + "openvm-stark-backend", + "rand 0.8.5", + "sha2 0.10.8", +] + +[[package]] +name = "openvm-sha256-circuit" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-rv32im-circuit", + "openvm-sha256-air", + "openvm-sha256-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand 0.8.5", + "serde", + "sha2 0.10.8", + "strum 0.26.3", +] + +[[package]] +name = "openvm-sha256-guest" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-platform", +] + +[[package]] +name = "openvm-sha256-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-sha256-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum 0.26.3", +] + +[[package]] +name = "openvm-stark-backend" +version = "1.1.1" +source = "git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad#f48090c9febd021f8ee0349bc929a775fb1fa3ad" +dependencies = [ + "bitcode", + "cfg-if", + "derivative", + "derive-new 0.7.0", + "itertools 0.14.0", + "p3-air", + "p3-challenger", + "p3-commit", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-uni-stark", + "p3-util 0.1.0", + "rayon", + "rustc-hash 2.1.1", + "serde", + "thiserror 1.0.69", + "tikv-jemallocator", + "tracing", +] + +[[package]] +name = "openvm-stark-sdk" +version = "1.1.1" +source = "git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad#f48090c9febd021f8ee0349bc929a775fb1fa3ad" +dependencies = [ + "derivative", + "derive_more 0.99.20", + "ff 0.13.1", + "itertools 0.14.0", + "metrics", + "metrics-tracing-context", + "metrics-util", + "openvm-stark-backend", + "p3-baby-bear 0.1.0", + "p3-blake3", + "p3-bn254-fr", + "p3-dft 0.1.0", + "p3-fri", + "p3-goldilocks", + "p3-keccak", + "p3-koala-bear", + "p3-merkle-tree", + "p3-poseidon", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", + "serde_json", + "static_assertions", + "toml 0.8.23", + "tracing", + "tracing-forest", + "tracing-subscriber 0.3.19", + "zkhash", +] + +[[package]] +name = "openvm-tests" +version = "0.1.0" +dependencies = [ + "num-bigint 0.4.6", + "num-traits", + "openvm", + "openvm-algebra-circuit", + "openvm-algebra-transpiler", + "openvm-build", + "openvm-circuit", + "openvm-ecc-circuit", + "openvm-ecc-guest", + "openvm-ecc-transpiler", + "openvm-keccak256-guest", + "openvm-pairing", + "openvm-pairing-circuit", + "openvm-pairing-transpiler", + "openvm-rv32im-transpiler", + "openvm-sdk", + "openvm-stark-sdk", + "openvm-transpiler", + "rand 0.8.5", + "revm-primitives 19.1.0", + "secp256k1", + "sha2 0.10.8", + "toml 0.8.23", +] + +[[package]] +name = "openvm-transpiler" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +dependencies = [ + "elf", + "eyre", + "openvm-instructions", + "openvm-platform", + "openvm-stark-backend", + "rrs-lib", + "thiserror 1.0.69", +] + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "ordered-float" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951" +dependencies = [ + "num-traits", +] + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + +[[package]] +name = "p3-air" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-matrix 0.1.0", +] + +[[package]] +name = "p3-baby-bear" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-mds 0.1.0", + "p3-monty-31", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-baby-bear" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49ecc3edc6fb8186268e05031c26a8b2b1e567957d63adcae1026d55d6bb189b" +dependencies = [ + "num-bigint 0.4.6", + "p3-field 0.2.2-succinct", + "p3-mds 0.2.2-succinct", + "p3-poseidon2 0.2.2-succinct", + "p3-symmetric 0.2.2-succinct", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-blake3" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "blake3", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", +] + +[[package]] +name = "p3-bn254-fr" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "ff 0.13.1", + "halo2curves", + "num-bigint 0.4.6", + "p3-field 0.1.0", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-challenger" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "tracing", +] + +[[package]] +name = "p3-commit" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-challenger", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-util 0.1.0", + "serde", +] + +[[package]] +name = "p3-dft" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "tracing", +] + +[[package]] +name = "p3-dft" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eece7b035978976138622b116fefe6c4cc372b1ce70739c40e7a351a9bb68f1f" +dependencies = [ + "p3-field 0.2.2-succinct", + "p3-matrix 0.2.2-succinct", + "p3-maybe-rayon 0.2.2-succinct", + "p3-util 0.2.2-succinct", + "tracing", +] + +[[package]] +name = "p3-field" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "nums", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", + "tracing", +] + +[[package]] +name = "p3-field" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6f0edf3fde4fd0d1455e901fc871c558010ae18db6e68f1b0fa111391855316" +dependencies = [ + "itertools 0.12.1", + "num-bigint 0.4.6", + "num-traits", + "p3-util 0.2.2-succinct", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-fri" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-challenger", + "p3-commit", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-interpolation", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", + "tracing", +] + +[[package]] +name = "p3-goldilocks" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "num-bigint 0.4.6", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-mds 0.1.0", + "p3-poseidon", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-interpolation" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", +] + +[[package]] +name = "p3-keccak" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-field 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "tiny-keccak", +] + +[[package]] +name = "p3-keccak-air" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-air", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "tracing", +] + +[[package]] +name = "p3-koala-bear" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-mds 0.1.0", + "p3-monty-31", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-matrix" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-field 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", + "tracing", + "transpose", +] + +[[package]] +name = "p3-matrix" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60961b4d7ffd2e8412ce4e66e213de610356df71cc4e396519c856a664138a27" +dependencies = [ + "itertools 0.12.1", + "p3-field 0.2.2-succinct", + "p3-maybe-rayon 0.2.2-succinct", + "p3-util 0.2.2-succinct", + "rand 0.8.5", + "serde", + "tracing", +] + +[[package]] +name = "p3-maybe-rayon" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "rayon", +] + +[[package]] +name = "p3-maybe-rayon" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bbe762738c382c9483410f52348ab9de41bb42c391e8171643a71486cf1ef8f" + +[[package]] +name = "p3-mds" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", +] + +[[package]] +name = "p3-mds" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4127956cc6c783b7d021c5c42d5d89456d5f3bda4a7b165fcc2a3fd4e78fbede" +dependencies = [ + "itertools 0.12.1", + "p3-dft 0.2.2-succinct", + "p3-field 0.2.2-succinct", + "p3-matrix 0.2.2-succinct", + "p3-symmetric 0.2.2-succinct", + "p3-util 0.2.2-succinct", + "rand 0.8.5", +] + +[[package]] +name = "p3-merkle-tree" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-commit", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", + "tracing", +] + +[[package]] +name = "p3-monty-31" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "num-bigint 0.4.6", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-mds 0.1.0", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "serde", + "tracing", + "transpose", +] + +[[package]] +name = "p3-poseidon" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-field 0.1.0", + "p3-mds 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", +] + +[[package]] +name = "p3-poseidon2" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "gcd", + "p3-field 0.1.0", + "p3-mds 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", +] + +[[package]] +name = "p3-poseidon2" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be09497da406a98e89dc05c1ce539eeef29541bad61a5b2108a44ffe94dd0b4c" +dependencies = [ + "gcd", + "p3-field 0.2.2-succinct", + "p3-mds 0.2.2-succinct", + "p3-symmetric 0.2.2-succinct", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "p3-poseidon2-air" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-air", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-poseidon2 0.1.0", + "p3-util 0.1.0", + "rand 0.8.5", + "tikv-jemallocator", + "tracing", +] + +[[package]] +name = "p3-symmetric" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-field 0.1.0", + "serde", +] + +[[package]] +name = "p3-symmetric" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e7d954033f657d48490344ca4b3dbcc054962a0e92831b736666bb2f5e5820b" +dependencies = [ + "itertools 0.12.1", + "p3-field 0.2.2-succinct", + "serde", +] + +[[package]] +name = "p3-uni-stark" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "itertools 0.14.0", + "p3-air", + "p3-challenger", + "p3-commit", + "p3-dft 0.1.0", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-util 0.1.0", + "serde", + "tracing", +] + +[[package]] +name = "p3-util" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "serde", +] + +[[package]] +name = "p3-util" +version = "0.2.2-succinct" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a6ce0b6bee23fd54e05306f6752ae80b0b71a91166553ab39d7899801497237" +dependencies = [ + "serde", +] + +[[package]] +name = "pairing" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "135590d8bdba2b31346f9cd1fb2a912329f5135e832a4f422942eb6ead8b6b3b" +dependencies = [ + "group 0.12.1", +] + +[[package]] +name = "pairing" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +dependencies = [ + "group 0.13.0", +] + +[[package]] +name = "parity-scale-codec" +version = "3.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +dependencies = [ + "arrayvec", + "bitvec", + "byte-slice-cast", + "const_format", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "rustversion", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +dependencies = [ + "proc-macro-crate", + "proc-macro2", "quote", "syn 2.0.100", ] @@ -3218,12 +6024,94 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "password-hash" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" +dependencies = [ + "base64ct", + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "pasta_curves" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cc65faf8e7313b4b1fbaa9f7ca917a0eed499a9663be71477f87993604341d8" +dependencies = [ + "blake2b_simd", + "ff 0.12.1", + "group 0.12.1", + "lazy_static", + "rand 0.8.5", + "static_assertions", + "subtle", +] + +[[package]] +name = "pasta_curves" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e57598f73cc7e1b2ac63c79c517b31a0877cd7c402cdcaa311b5208de7a095" +dependencies = [ + "blake2b_simd", + "ff 0.13.1", + "group 0.13.0", + "lazy_static", + "rand 0.8.5", + "static_assertions", + "subtle", +] + [[package]] name = "paste" version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "path-slash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" + +[[package]] +name = "pbkdf2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", + "hmac", + "password-hash", + "sha2 0.10.8", +] + +[[package]] +name = "pear" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" +dependencies = [ + "inlinable_string", + "pear_codegen", + "yansi 1.0.1", +] + +[[package]] +name = "pear_codegen" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" +dependencies = [ + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.100", +] + [[package]] name = "percent-encoding" version = "2.3.1" @@ -3237,10 +6125,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" dependencies = [ "memchr", - "thiserror", + "thiserror 2.0.12", "ucd-trie", ] +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.9.0", +] + [[package]] name = "phf" version = "0.11.3" @@ -3375,6 +6273,21 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +[[package]] +name = "poseidon-primitives" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e4aaeda7a092e21165cc5f0cbc738e72a46f31c03c3cbd87b71ceae9d2d93bc" +dependencies = [ + "bitvec", + "ff 0.13.1", + "lazy_static", + "log", + "rand 0.8.5", + "rand_xorshift", + "thiserror 1.0.69", +] + [[package]] name = "powerfmt" version = "0.2.0" @@ -3390,6 +6303,22 @@ dependencies = [ "zerocopy 0.8.24", ] +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + +[[package]] +name = "prettyplease" +version = "0.2.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dee91521343f4c5c6a63edd65e54f31f5c92fe8978c40a4282f8372194c6a7d" +dependencies = [ + "proc-macro2", + "syn 2.0.100", +] + [[package]] name = "primeorder" version = "0.13.6" @@ -3407,6 +6336,9 @@ checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", "impl-codec", + "impl-rlp", + "impl-serde", + "scale-info", "uint", ] @@ -3416,7 +6348,7 @@ version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" dependencies = [ - "toml_edit", + "toml_edit 0.22.27", ] [[package]] @@ -3450,21 +6382,34 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", + "version_check", + "yansi 1.0.1", +] + [[package]] name = "proptest" version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ - "bit-set", - "bit-vec", - "bitflags", + "bit-set 0.8.0", + "bit-vec 0.8.0", + "bitflags 2.9.0", "lazy_static", "num-traits", "rand 0.8.5", "rand_chacha 0.3.1", "rand_xorshift", - "regex-syntax", + "regex-syntax 0.8.5", "rusty-fork", "tempfile", "unarray", @@ -3481,6 +6426,21 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "quanta" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" +dependencies = [ + "crossbeam-utils", + "libc", + "once_cell", + "raw-cpuid", + "wasi 0.11.0+wasi-snapshot-preview1", + "web-sys", + "winapi", +] + [[package]] name = "quick-error" version = "1.2.3" @@ -3508,6 +6468,16 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" +[[package]] +name = "radix_trie" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" +dependencies = [ + "endian-type", + "nibble_vec", +] + [[package]] name = "rand" version = "0.8.5" @@ -3579,6 +6549,15 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "raw-cpuid" +version = "11.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" +dependencies = [ + "bitflags 2.9.0", +] + [[package]] name = "rayon" version = "1.10.0" @@ -3605,7 +6584,18 @@ version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" dependencies = [ - "bitflags", + "bitflags 2.9.0", +] + +[[package]] +name = "redox_users" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +dependencies = [ + "getrandom 0.2.15", + "libredox", + "thiserror 1.0.69", ] [[package]] @@ -3616,8 +6606,17 @@ checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ "aho-corasick", "memchr", - "regex-automata", - "regex-syntax", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", ] [[package]] @@ -3628,9 +6627,15 @@ checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-syntax 0.8.5", ] +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + [[package]] name = "regex-syntax" version = "0.8.5" @@ -3643,20 +6648,61 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" +[[package]] +name = "reqwest" +version = "0.11.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" +dependencies = [ + "base64 0.21.7", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.32", + "hyper-rustls", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls", + "rustls-pemfile 1.0.4", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "system-configuration", + "tokio", + "tokio-rustls", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots", + "winreg", +] + [[package]] name = "reqwest" version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" dependencies = [ - "base64", + "base64 0.22.1", "bytes", "futures-core", "futures-util", - "http", - "http-body", + "http 1.3.1", + "http-body 1.0.1", "http-body-util", - "hyper", + "hyper 1.6.0", "hyper-tls", "hyper-util", "ipnet", @@ -3667,11 +6713,11 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls-pemfile", + "rustls-pemfile 2.2.0", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 1.0.2", "tokio", "tokio-native-tls", "tower", @@ -3687,17 +6733,36 @@ dependencies = [ name = "revm" version = "24.0.1" dependencies = [ - "revm-bytecode", - "revm-context", - "revm-context-interface", - "revm-database", - "revm-database-interface", - "revm-handler", - "revm-inspector", - "revm-interpreter", - "revm-precompile", - "revm-primitives", - "revm-state", + "revm-bytecode 4.0.1", + "revm-context 5.0.1", + "revm-context-interface 5.0.0", + "revm-database 4.0.1", + "revm-database-interface 4.0.1", + "revm-handler 5.0.1", + "revm-inspector 5.0.1", + "revm-interpreter 20.0.0", + "revm-precompile 21.0.0", + "revm-primitives 19.1.0", + "revm-state 4.0.1", +] + +[[package]] +name = "revm" +version = "24.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d277408ff8d6f747665ad9e52150ab4caf8d5eaf0d787614cf84633c8337b4" +dependencies = [ + "revm-bytecode 4.1.0", + "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-handler 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-inspector 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-precompile 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3708,36 +6773,81 @@ dependencies = [ "once_cell", "paste", "phf", - "revm-primitives", + "revm-primitives 19.1.0", + "serde", +] + +[[package]] +name = "revm-bytecode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "942fe4724cf552fd28db6b0a2ca5b79e884d40dd8288a4027ed1e9090e0c6f49" +dependencies = [ + "bitvec", + "once_cell", + "phf", + "revm-primitives 19.2.0", + "serde", +] + +[[package]] +name = "revm-context" +version = "5.0.1" +dependencies = [ + "cfg-if", + "derive-where", + "revm-bytecode 4.0.1", + "revm-context-interface 5.0.0", + "revm-database 4.0.1", + "revm-database-interface 4.0.1", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "serde", ] [[package]] name = "revm-context" version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b01aad49e1233f94cebda48a4e5cef022f7c7ed29b4edf0d202b081af23435ef" dependencies = [ "cfg-if", "derive-where", - "revm-bytecode", - "revm-context-interface", - "revm-database", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-bytecode 4.1.0", + "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "5.0.0" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "either", + "revm-database-interface 4.0.1", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "serde", ] [[package]] name = "revm-context-interface" version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b844f48a411e62c7dde0f757bf5cce49c85b86d6fc1d3b2722c07f2bec4c3ce" dependencies = [ "alloy-eip2930", "alloy-eip7702", "auto_impl", "either", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", ] @@ -3749,29 +6859,55 @@ dependencies = [ "alloy-provider", "alloy-transport", "anyhow", - "revm-bytecode", - "revm-database-interface", - "revm-primitives", - "revm-state", + "revm-bytecode 4.0.1", + "revm-database-interface 4.0.1", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "rstest", "serde", "serde_json", "tokio", ] +[[package]] +name = "revm-database" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad3fbe34f6bb00a9c3155723b3718b9cb9f17066ba38f9eb101b678cd3626775" +dependencies = [ + "alloy-eips", + "revm-bytecode 4.1.0", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + [[package]] name = "revm-database-interface" version = "4.0.1" dependencies = [ "anyhow", "auto_impl", - "revm-primitives", - "revm-state", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "rstest", "serde", "tokio", ] +[[package]] +name = "revm-database-interface" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b8acd36784a6d95d5b9e1b7be3ce014f1e759abb59df1fa08396b30f71adc2a" +dependencies = [ + "auto_impl", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + [[package]] name = "revm-handler" version = "5.0.1" @@ -3781,30 +6917,65 @@ dependencies = [ "alloy-signer", "alloy-signer-local", "auto_impl", - "revm-bytecode", - "revm-context", - "revm-context-interface", - "revm-database", - "revm-database-interface", - "revm-interpreter", - "revm-precompile", - "revm-primitives", - "revm-state", + "revm-bytecode 4.0.1", + "revm-context 5.0.1", + "revm-context-interface 5.0.0", + "revm-database 4.0.1", + "revm-database-interface 4.0.1", + "revm-interpreter 20.0.0", + "revm-precompile 21.0.0", + "revm-primitives 19.1.0", + "revm-state 4.0.1", + "serde", +] + +[[package]] +name = "revm-handler" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "481e8c3290ff4fa1c066592fdfeb2b172edfd14d12e6cade6f6f5588cad9359a" +dependencies = [ + "auto_impl", + "revm-bytecode 4.1.0", + "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-precompile 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "revm-inspector" +version = "5.0.1" +dependencies = [ + "auto_impl", + "revm-context 5.0.1", + "revm-database 4.0.1", + "revm-database-interface 4.0.1", + "revm-handler 5.0.1", + "revm-interpreter 20.0.0", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "serde", + "serde_json", ] [[package]] name = "revm-inspector" version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc1167ef8937d8867888e63581d8ece729a72073d322119ef4627d813d99ecb" dependencies = [ "auto_impl", - "revm-context", - "revm-database", - "revm-database-interface", - "revm-handler", - "revm-interpreter", - "revm-primitives", - "revm-state", + "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-handler 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", + "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "serde_json", ] @@ -3814,9 +6985,21 @@ name = "revm-interpreter" version = "20.0.0" dependencies = [ "bincode", - "revm-bytecode", - "revm-context-interface", - "revm-primitives", + "revm-bytecode 4.0.1", + "revm-context-interface 5.0.0", + "revm-primitives 19.1.0", + "serde", +] + +[[package]] +name = "revm-interpreter" +version = "20.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5ee65e57375c6639b0f50555e92a4f1b2434349dd32f52e2176f5c711171697" +dependencies = [ + "revm-bytecode 4.1.0", + "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 19.2.0", "serde", ] @@ -3834,13 +7017,20 @@ dependencies = [ "c-kzg", "cfg-if", "codspeed-criterion-compat", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0)", "kzg-rs", "libsecp256k1", "once_cell", + "openvm", + "openvm-ecc-guest", + "openvm-keccak256", + "openvm-kzg", + "openvm-pairing", + "openvm-sha2", "p256", "rand 0.8.5", - "revm-primitives", + "revm-primitives 19.1.0", "ripemd", "rstest", "secp256k1", @@ -3848,11 +7038,63 @@ dependencies = [ "substrate-bn", ] +[[package]] +name = "revm-precompile" +version = "21.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f9311e735123d8d53a02af2aa81877bba185be7c141be7f931bb3d2f3af449c" +dependencies = [ + "ark-bls12-381", + "ark-bn254", + "ark-ec", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "aurora-engine-modexp", + "blst", + "c-kzg", + "cfg-if", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", + "libsecp256k1", + "once_cell", + "p256", + "revm-primitives 19.2.0", + "ripemd", + "secp256k1", + "sha2 0.10.8", +] + +[[package]] +name = "revm-primitives" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51187b852d9e458816a2e19c81f1dd6c924077e1a8fccd16e4f044f865f299d7" +dependencies = [ + "alloy-primitives 0.4.2", + "alloy-rlp", + "auto_impl", + "bitflags 2.9.0", + "bitvec", + "enumn", + "hashbrown 0.14.5", + "hex", +] + [[package]] name = "revm-primitives" version = "19.1.0" dependencies = [ - "alloy-primitives", + "alloy-primitives 1.1.2", + "num_enum", + "serde", +] + +[[package]] +name = "revm-primitives" +version = "19.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c1588093530ec4442461163be49c433c07a3235d1ca6f6799fef338dacc50d3" +dependencies = [ + "alloy-primitives 1.1.2", "num_enum", "serde", ] @@ -3861,9 +7103,21 @@ dependencies = [ name = "revm-state" version = "4.0.1" dependencies = [ - "bitflags", - "revm-bytecode", - "revm-primitives", + "bitflags 2.9.0", + "revm-bytecode 4.0.1", + "revm-primitives 19.1.0", + "serde", +] + +[[package]] +name = "revm-state" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0040c61c30319254b34507383ba33d85f92949933adf6525a2cede05d165e1fa" +dependencies = [ + "bitflags 2.9.0", + "revm-bytecode 4.1.0", + "revm-primitives 19.2.0", "serde", ] @@ -3871,7 +7125,7 @@ dependencies = [ name = "revm-statetest-types" version = "6.0.0" dependencies = [ - "revm", + "revm 24.0.1", "serde", "serde_json", ] @@ -3881,26 +7135,26 @@ name = "revme" version = "5.1.1" dependencies = [ "alloy-rlp", - "alloy-sol-types", + "alloy-sol-types 1.1.2", "clap", "codspeed-criterion-compat", "hash-db", "indicatif", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "plain_hasher", - "revm", - "revm-bytecode", - "revm-context", - "revm-context-interface", - "revm-database", - "revm-database-interface", - "revm-inspector", - "revm-primitives", - "revm-state", + "revm 24.0.1", + "revm-bytecode 4.0.1", + "revm-context 5.0.1", + "revm-context-interface 5.0.0", + "revm-database 4.0.1", + "revm-database-interface 4.0.1", + "revm-inspector 5.0.1", + "revm-primitives 19.1.0", + "revm-state 4.0.1", "revm-statetest-types", "serde", "serde_json", - "thiserror", + "thiserror 2.0.12", "triehash", "walkdir", ] @@ -3915,6 +7169,20 @@ dependencies = [ "subtle", ] +[[package]] +name = "ring" +version = "0.17.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.15", + "libc", + "untrusted", + "windows-sys 0.52.0", +] + [[package]] name = "ripemd" version = "0.1.3" @@ -3931,9 +7199,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" dependencies = [ "bytes", + "rlp-derive", "rustc-hex", ] +[[package]] +name = "rlp-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "rrs-lib" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4382d3af3a4ebdae7f64ba6edd9114fff92c89808004c4943b393377a25d001" +dependencies = [ + "downcast-rs", + "paste", +] + [[package]] name = "rstest" version = "0.24.0" @@ -4004,6 +7294,12 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc-hash" version = "2.1.1" @@ -4038,16 +7334,37 @@ dependencies = [ ] [[package]] -name = "rustix" -version = "1.0.5" +name = "rustix" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" +dependencies = [ + "bitflags 2.9.0", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustls" +version = "0.21.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" +dependencies = [ + "log", + "ring", + "rustls-webpki", + "sct", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" dependencies = [ - "bitflags", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.59.0", + "base64 0.21.7", ] [[package]] @@ -4065,6 +7382,16 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "rustversion" version = "1.0.20" @@ -4098,6 +7425,30 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "scale-info" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" +dependencies = [ + "cfg-if", + "derive_more 1.0.0", + "parity-scale-codec", + "scale-info-derive", +] + +[[package]] +name = "scale-info-derive" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "schannel" version = "0.1.27" @@ -4113,6 +7464,16 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +[[package]] +name = "sct" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "sec1" version = "0.7.3" @@ -4155,7 +7516,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags", + "bitflags 2.9.0", "core-foundation", "core-foundation-sys", "libc", @@ -4186,6 +7547,9 @@ name = "semver" version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +dependencies = [ + "serde", +] [[package]] name = "semver-parser" @@ -4205,6 +7569,24 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-big-array" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11fc7cc2c76d73e0f27ee52abbd64eec84d46f370c88371120433196934e4b7f" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_arrays" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38636132857f68ec3d5f3eb121166d2af33cb55174c4d5ff645db6165cbef0fd" +dependencies = [ + "serde", +] + [[package]] name = "serde_arrays" version = "0.2.0" @@ -4238,6 +7620,25 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_regex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf" +dependencies = [ + "regex", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +dependencies = [ + "serde", +] + [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -4256,7 +7657,7 @@ version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ - "base64", + "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", @@ -4290,6 +7691,17 @@ dependencies = [ "serde", ] +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + [[package]] name = "sha2" version = "0.9.9" @@ -4334,12 +7746,30 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + [[package]] name = "shlex" version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "signal-hook-registry" +version = "1.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +dependencies = [ + "libc", +] + [[package]] name = "signature" version = "2.2.0" @@ -4356,6 +7786,12 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" +[[package]] +name = "sketches-ddsketch" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85636c14b73d81f541e525f585c0a2109e6744e1565b5c1668e31c70c10ed65c" + [[package]] name = "slab" version = "0.4.9" @@ -4374,6 +7810,51 @@ dependencies = [ "serde", ] +[[package]] +name = "snark-verifier" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9203c416ff9de0762667270b21573ba5e6edaeda08743b3ca37dc8a5e0a4480" +dependencies = [ + "halo2-base", + "halo2-ecc", + "hex", + "itertools 0.11.0", + "lazy_static", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "pairing 0.23.0", + "rand 0.8.5", + "revm 24.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "ruint", + "serde", + "sha3", +] + +[[package]] +name = "snark-verifier-sdk" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290ae6e750d9d5fdf05393bbcae6bf7a63e3408eab023abf7d466156a234ac85" +dependencies = [ + "bincode", + "ethereum-types", + "getset", + "halo2-base", + "hex", + "itertools 0.11.0", + "lazy_static", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "rand 0.8.5", + "rand_chacha 0.3.1", + "serde", + "serde_json", + "snark-verifier", +] + [[package]] name = "socket2" version = "0.5.9" @@ -4384,6 +7865,20 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "solang-parser" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cb9fa2fa2fa6837be8a2495486ff92e3ffe68a99b6eeba288e139efdd842457" +dependencies = [ + "itertools 0.11.0", + "lalrpop", + "lalrpop-util", + "phf", + "thiserror 1.0.69", + "unicode-xid", +] + [[package]] name = "sp1-lib" version = "4.2.0" @@ -4407,10 +7902,10 @@ dependencies = [ "hex", "lazy_static", "num-bigint 0.4.6", - "p3-baby-bear", - "p3-field", - "p3-poseidon2", - "p3-symmetric", + "p3-baby-bear 0.2.2-succinct", + "p3-field 0.2.2-succinct", + "p3-poseidon2 0.2.2-succinct", + "p3-symmetric 0.2.2-succinct", "serde", "sha2 0.10.8", ] @@ -4422,9 +7917,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0800e0491c38cc686233518fce535d01ba0a0707781766fec38aee9c1b33890" dependencies = [ "cfg-if", - "ff", - "group", - "pairing", + "ff 0.13.1", + "group 0.13.0", + "pairing 0.23.0", "rand_core 0.6.4", "sp1-lib", "subtle", @@ -4436,6 +7931,12 @@ version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +[[package]] +name = "spin" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" + [[package]] name = "spki" version = "0.7.3" @@ -4458,19 +7959,59 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "strength_reduce" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe895eb47f22e2ddd4dabc02bce419d2e643c8e3b585c78158b349195bc24d82" + +[[package]] +name = "string_cache" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" +dependencies = [ + "new_debug_unreachable", + "parking_lot", + "phf_shared", + "precomputed-hash", +] + [[package]] name = "strsim" version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", +] + [[package]] name = "strum" version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" dependencies = [ - "strum_macros", + "strum_macros 0.27.1", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.100", ] [[package]] @@ -4505,6 +8046,39 @@ version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" +[[package]] +name = "svm-rs" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" +dependencies = [ + "dirs", + "fs2", + "hex", + "once_cell", + "reqwest 0.11.27", + "semver 1.0.26", + "serde", + "serde_json", + "sha2 0.10.8", + "thiserror 1.0.69", + "url", + "zip", +] + +[[package]] +name = "svm-rs-builds" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa64b5e8eecd3a8af7cfc311e29db31a268a62d5953233d3e8243ec77a71c4e3" +dependencies = [ + "build_const", + "hex", + "semver 1.0.26", + "serde_json", + "svm-rs", +] + [[package]] name = "syn" version = "1.0.109" @@ -4527,6 +8101,18 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "syn-solidity" +version = "0.8.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "syn-solidity" version = "1.1.2" @@ -4539,6 +8125,12 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + [[package]] name = "sync_wrapper" version = "1.0.2" @@ -4559,6 +8151,27 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "tap" version = "1.0.1" @@ -4569,13 +8182,66 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" name = "tempfile" version = "3.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" +checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" +dependencies = [ + "fastrand", + "getrandom 0.3.2", + "once_cell", + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "term" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" +dependencies = [ + "dirs-next", + "rustversion", + "winapi", +] + +[[package]] +name = "test-case" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb2550dd13afcd286853192af8601920d959b14c401fcece38071d53bf0768a8" +dependencies = [ + "test-case-macros", +] + +[[package]] +name = "test-case-core" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcb7fd841cd518e279be3d5a3eb0636409487998a4aff22f3de87b81e88384f" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.100", +] + +[[package]] +name = "test-case-macros" +version = "3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", + "test-case-core", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "fastrand", - "getrandom 0.3.2", - "once_cell", - "rustix", - "windows-sys 0.59.0", + "thiserror-impl 1.0.69", ] [[package]] @@ -4584,7 +8250,18 @@ version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl", + "thiserror-impl 2.0.12", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", ] [[package]] @@ -4598,6 +8275,16 @@ dependencies = [ "syn 2.0.100", ] +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + [[package]] name = "threadpool" version = "1.8.1" @@ -4607,6 +8294,26 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "tikv-jemalloc-sys" +version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "tikv-jemallocator" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" +dependencies = [ + "libc", + "tikv-jemalloc-sys", +] + [[package]] name = "time" version = "0.3.41" @@ -4678,6 +8385,7 @@ dependencies = [ "libc", "mio", "pin-project-lite", + "signal-hook-registry", "socket2", "tokio-macros", "windows-sys 0.52.0", @@ -4704,6 +8412,16 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.17" @@ -4729,23 +8447,73 @@ dependencies = [ "tokio", ] +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "indexmap 2.9.0", + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + +[[package]] +name = "toml" +version = "0.8.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.22.27", +] + [[package]] name = "toml_datetime" -version = "0.6.8" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.9.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.5.40", +] [[package]] name = "toml_edit" -version = "0.22.24" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ "indexmap 2.9.0", + "serde", + "serde_spanned", "toml_datetime", - "winnow", + "toml_write", + "winnow 0.7.10", ] +[[package]] +name = "toml_write" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" + [[package]] name = "tower" version = "0.5.2" @@ -4755,7 +8523,7 @@ dependencies = [ "futures-core", "futures-util", "pin-project-lite", - "sync_wrapper", + "sync_wrapper 1.0.2", "tokio", "tower-layer", "tower-service", @@ -4805,6 +8573,19 @@ dependencies = [ "valuable", ] +[[package]] +name = "tracing-forest" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee40835db14ddd1e3ba414292272eddde9dad04d3d4b65509656414d1c42592f" +dependencies = [ + "ansi_term", + "smallvec", + "thiserror 1.0.69", + "tracing", + "tracing-subscriber 0.3.19", +] + [[package]] name = "tracing-futures" version = "0.2.5" @@ -4817,6 +8598,17 @@ dependencies = [ "tracing", ] +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + [[package]] name = "tracing-subscriber" version = "0.2.25" @@ -4826,6 +8618,34 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-subscriber" +version = "0.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", +] + +[[package]] +name = "transpose" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ad61aed86bc3faea4300c7aee358b4c6d0c8d6ccc36524c96e4c92ccf26e77e" +dependencies = [ + "num-integer", + "strength_reduce", +] + [[package]] name = "triehash" version = "0.8.4" @@ -4872,12 +8692,27 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" +[[package]] +name = "uncased" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" +dependencies = [ + "version_check", +] + [[package]] name = "unicode-ident" version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + [[package]] name = "unicode-width" version = "0.2.0" @@ -4890,6 +8725,22 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unroll" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ad948c1cb799b1a70f836077721a92a35ac177d4daddf4c20a633786d4cf618" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + [[package]] name = "url" version = "2.5.4" @@ -5094,6 +8945,28 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + [[package]] name = "winapi-util" version = "0.1.9" @@ -5103,6 +8976,12 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + [[package]] name = "windows-core" version = "0.61.0" @@ -5182,6 +9061,15 @@ dependencies = [ "windows-link", ] +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + [[package]] name = "windows-sys" version = "0.52.0" @@ -5200,6 +9088,21 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + [[package]] name = "windows-targets" version = "0.52.6" @@ -5232,6 +9135,12 @@ dependencies = [ "windows_x86_64_msvc 0.53.0", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + [[package]] name = "windows_aarch64_gnullvm" version = "0.52.6" @@ -5244,6 +9153,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + [[package]] name = "windows_aarch64_msvc" version = "0.52.6" @@ -5256,6 +9171,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + [[package]] name = "windows_i686_gnu" version = "0.52.6" @@ -5280,6 +9201,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + [[package]] name = "windows_i686_msvc" version = "0.52.6" @@ -5292,6 +9219,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + [[package]] name = "windows_x86_64_gnu" version = "0.52.6" @@ -5304,6 +9237,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" @@ -5316,6 +9255,12 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + [[package]] name = "windows_x86_64_msvc" version = "0.52.6" @@ -5330,20 +9275,39 @@ checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winnow" -version = "0.7.6" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63d3fcd9bba44b03821e7d699eeee959f3126dcc4aa8e4ae18ec617c2a5cea10" +checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" dependencies = [ "memchr", ] +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + [[package]] name = "wit-bindgen-rt" version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags", + "bitflags 2.9.0", ] [[package]] @@ -5367,6 +9331,18 @@ dependencies = [ "tap", ] +[[package]] +name = "yansi" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + [[package]] name = "yoke" version = "0.7.5" @@ -5493,3 +9469,78 @@ dependencies = [ "quote", "syn 2.0.100", ] + +[[package]] +name = "zip" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" +dependencies = [ + "aes", + "byteorder", + "bzip2", + "constant_time_eq 0.1.5", + "crc32fast", + "crossbeam-utils", + "flate2", + "hmac", + "pbkdf2", + "sha1", + "time", + "zstd", +] + +[[package]] +name = "zkhash" +version = "0.2.0" +source = "git+https://github.com/HorizenLabs/poseidon2.git?rev=bb476b9#bb476b9ca38198cf5092487283c8b8c5d4317c4e" +dependencies = [ + "ark-ff 0.4.2", + "ark-std 0.4.0", + "bitvec", + "blake2", + "bls12_381 0.7.1", + "byteorder", + "cfg-if", + "group 0.12.1", + "group 0.13.0", + "halo2", + "hex", + "jubjub", + "lazy_static", + "pasta_curves 0.5.1", + "rand 0.8.5", + "serde", + "sha2 0.10.8", + "sha3", + "subtle", +] + +[[package]] +name = "zstd" +version = "0.11.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "5.0.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +dependencies = [ + "libc", + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.15+zstd.1.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/Cargo.toml b/Cargo.toml index c7624fe23..a5317cdd5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [workspace] members = [ - # binary + # binary "bins/revme", # libraries @@ -33,6 +33,8 @@ members = [ "examples/erc20_gas", "examples/my_evm", "examples/custom_opcodes", + + "tests/openvm", ] resolver = "2" default-members = ["crates/revm"] @@ -54,7 +56,7 @@ context-interface = { path = "crates/context/interface", package = "revm-context handler = { path = "crates/handler", package = "revm-handler", version = "5.0.1", default-features = false } op-revm = { path = "crates/op-revm", package = "op-revm", version = "5.0.1", default-features = false } -# alloy +# alloy alloy-eip2930 = { version = "0.2.1", default-features = false } alloy-eip7702 = { version = "0.6.1", default-features = false } alloy-primitives = { version = "1.1.2", default-features = false } @@ -110,6 +112,32 @@ rand = "0.8" tokio = "1.44" either = { version = "1.15.0", default-features = false } +# openvm stark-backend +openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", rev = "f48090c9febd021f8ee0349bc929a775fb1fa3ad" } +# openvm +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-build = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +# openvm extensions +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +# openvm guest libs +openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0", package = "k256", default-features = false } +openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "2ba87b7425479662d901cea33e26cda67981a6b6", default-features = false } + # dev-dependencies anyhow = "1.0.89" bincode = "1.3" @@ -167,3 +195,6 @@ inherits = "profiling" [profile.ethtests] inherits = "test" opt-level = 3 + +[profile.dev] +opt-level = 1 diff --git a/crates/interpreter/Cargo.toml b/crates/interpreter/Cargo.toml index 1b89eaea2..dc0987e23 100644 --- a/crates/interpreter/Cargo.toml +++ b/crates/interpreter/Cargo.toml @@ -35,18 +35,13 @@ bincode.workspace = true [features] default = ["std"] -std = [ - "serde?/std", - "primitives/std", - "context-interface/std", - "bytecode/std" -] +std = ["serde?/std", "primitives/std", "context-interface/std", "bytecode/std"] hashbrown = ["primitives/hashbrown"] serde = [ - "dep:serde", - "primitives/serde", - "bytecode/serde", - "context-interface/serde" + "dep:serde", + "primitives/serde", + "bytecode/serde", + "context-interface/serde", ] arbitrary = ["std", "primitives/arbitrary"] # TODO : Should be set from Context or from crate that consumes this PR. diff --git a/crates/precompile/Cargo.toml b/crates/precompile/Cargo.toml index 3c384eac5..3a90a7be6 100644 --- a/crates/precompile/Cargo.toml +++ b/crates/precompile/Cargo.toml @@ -26,14 +26,15 @@ once_cell = { workspace = true, features = ["alloc"] } # ecRecover k256 = { workspace = true, features = ["ecdsa"] } secp256k1 = { workspace = true, features = [ - "alloc", - "recovery", - "rand", - "global-context", + "alloc", + "recovery", + "rand", + "global-context", ], optional = true } libsecp256k1 = { workspace = true, features = [ - "static-context", + "static-context", ], optional = true } +openvm-k256 = { workspace = true, features = ["ecdsa"], optional = true } # SHA2-256 and RIPEMD-160 sha2.workspace = true @@ -53,7 +54,7 @@ ark-serialize = { workspace = true } # KZG point evaluation precompile c-kzg = { workspace = true, optional = true, features = [ - "ethereum_kzg_settings", + "ethereum_kzg_settings", ] } # Optionally use `kzg-rs` for a pure Rust implementation of KZG point evaluation. @@ -71,29 +72,37 @@ p256 = { workspace = true, optional = true, features = ["ecdsa"] } # utils cfg-if.workspace = true +# Optionally use openvm intrinsics +openvm = { workspace = true, optional = true } +openvm-ecc-guest = { workspace = true, optional = true } +openvm-keccak256 = { workspace = true, optional = true } +openvm-sha2 = { workspace = true, optional = true } +openvm-pairing = { workspace = true, optional = true } +openvm-kzg = { workspace = true, optional = true } + [dev-dependencies] criterion.workspace = true rand = { workspace = true, features = ["std"] } rstest.workspace = true [features] -default = ["std", "c-kzg", "secp256k1", "portable", "blst"] +default = ["openvm"] std = [ - "primitives/std", - "k256/std", - "once_cell/std", - "ripemd/std", - "sha2/std", - "c-kzg?/std", - "secp256k1?/std", - "libsecp256k1?/std", - "aurora-engine-modexp/std", - "p256?/std", - "ark-bn254/std", - "ark-bls12-381/std", - "ark-ec/std", - "ark-ff/std", - "ark-serialize/std", + "primitives/std", + "k256/std", + "once_cell/std", + "ripemd/std", + "sha2/std", + "c-kzg?/std", + "secp256k1?/std", + "libsecp256k1?/std", + "aurora-engine-modexp/std", + "p256?/std", + "ark-bn254/std", + "ark-bls12-381/std", + "ark-ec/std", + "ark-ff/std", + "ark-serialize/std", ] hashbrown = ["primitives/hashbrown"] asm-keccak = ["primitives/asm-keccak"] @@ -107,6 +116,10 @@ secp256r1 = ["dep:p256"] c-kzg = ["dep:c-kzg"] # `kzg-rs` is not audited but useful for `no_std` environment, use it with causing and default to `c-kzg` if possible. kzg-rs = ["dep:kzg-rs"] +# `openvm-kzg` can be used in place of kzg-rs for acceleration on OpenVM guest +openvm-kzg = ["dep:openvm-kzg"] +# TODO: always use intrinsics +openvm-kzg-intrinsics = ["openvm-kzg/use-intrinsics"] # Compile in portable mode, without ISA extensions. # Binary can be executed on all systems. @@ -117,12 +130,23 @@ portable = ["c-kzg?/portable", "blst?/portable"] # In Linux it passes. If you don't require to build wasm on win/mac, it is safe to use it and it is enabled by default. secp256k1 = ["dep:secp256k1"] libsecp256k1 = ["dep:libsecp256k1"] +# Use openvm accelerated k256. This is slightly more optimized even compared to directly patching k256 with openvm-k256 due to how byte manipulation is done. +openvm-k256 = [ + "dep:openvm", + "dep:openvm-k256", + "openvm-ecc-guest", + "openvm-keccak256", +] # Enables the blst implementation of the BLS12-381 precompile. blst = ["dep:blst"] # Enables the substrate implementation of eip1962 bn = ["dep:bn"] +# Enable openvm accelerated implementation +openvm-bn = ["dep:openvm", "openvm-ecc-guest", "openvm-pairing/bn254"] + +openvm = ["dep:openvm", "openvm-k256", "openvm-bn", "openvm-sha2", "openvm-kzg"] [[bench]] name = "bench" diff --git a/crates/precompile/src/bn128.rs b/crates/precompile/src/bn128.rs index b84e96f66..26856cb39 100644 --- a/crates/precompile/src/bn128.rs +++ b/crates/precompile/src/bn128.rs @@ -12,6 +12,12 @@ cfg_if::cfg_if! { encode_g1_point, g1_point_add, g1_point_mul, pairing_check, read_g1_point, read_g2_point, read_scalar, }; + } else if #[cfg(feature = "openvm-bn")] { + mod openvm; + use openvm::{ + encode_g1_point, g1_point_add, g1_point_mul, pairing_check, read_g1_point, read_g2_point, + read_scalar, + }; } else { mod arkworks; use arkworks::{ diff --git a/crates/precompile/src/bn128/openvm.rs b/crates/precompile/src/bn128/openvm.rs new file mode 100644 index 000000000..f3eeec0d3 --- /dev/null +++ b/crates/precompile/src/bn128/openvm.rs @@ -0,0 +1,160 @@ +use std::vec::Vec; + +use { + openvm_ecc_guest::{ + algebra::IntMod, + weierstrass::{IntrinsicCurve, WeierstrassPoint}, + AffinePoint, + }, + openvm_pairing::{ + bn254::{Bn254, Fp, Fp2, G1Affine, G2Affine, Scalar}, + PairingCheck, + }, +}; + +use super::{FQ2_LEN, FQ_LEN, G1_LEN, SCALAR_LEN}; +use crate::PrecompileError; + +#[inline] +fn read_fq(input: &[u8]) -> Result { + if input.len() < FQ_LEN { + Err(PrecompileError::Bn128FieldPointNotAMember) + } else { + let fp = Fp::from_be_bytes(&input[..32]); + if fp.is_reduced() { + Ok(fp) + } else { + Err(PrecompileError::Bn128FieldPointNotAMember) + } + } +} + +/// Reads a Fq2 (quadratic extension field element) from the input slice. +/// +/// Parses two consecutive Fq field elements as the real and imaginary parts +/// of an Fq2 element. +/// The second component is parsed before the first, ie if a we represent an +/// element in Fq2 as (x,y) -- `y` is parsed before `x` +/// +/// # Panics +/// +/// Panics if the input is not at least 64 bytes long. +#[inline] +fn read_fq2(input: &[u8]) -> Result { + let y = read_fq(&input[..FQ_LEN])?; + let x = read_fq(&input[FQ_LEN..2 * FQ_LEN])?; + Ok(Fp2::new(x, y)) +} + +#[inline] +fn new_g1_affine_point(px: Fp, py: Fp) -> Result { + G1Affine::from_xy(px, py).ok_or(PrecompileError::Bn128AffineGFailedToCreate) +} + +/// Reads a G1 point from the input slice. +/// +/// Parses a G1 point from a byte slice by reading two consecutive field elements +/// representing the x and y coordinates. +/// +/// # Panics +/// +/// Panics if the input is not at least 64 bytes long. +#[inline] +pub(super) fn read_g1_point(input: &[u8]) -> Result { + let px = read_fq(&input[0..FQ_LEN])?; + let py = read_fq(&input[FQ_LEN..2 * FQ_LEN])?; + new_g1_affine_point(px, py) +} + +/// Encodes a G1 point into a byte array. +/// +/// Converts a G1 point in Jacobian coordinates to affine coordinates and +/// serializes the x and y coordinates as big-endian byte arrays. +/// +/// Note: If the point is the point at infinity, this function returns +/// all zeroes. +#[inline] +pub(super) fn encode_g1_point(point: G1Affine) -> [u8; G1_LEN] { + let mut output = [0u8; G1_LEN]; + + // manually reverse to avoid allocation + let x_bytes: &[u8] = point.x().as_le_bytes(); + let y_bytes: &[u8] = point.y().as_le_bytes(); + for i in 0..FQ_LEN { + output[i] = x_bytes[FQ_LEN - 1 - i]; + output[i + FQ_LEN] = y_bytes[FQ_LEN - 1 - i]; + } + output +} + +/// Reads a G2 point from the input slice. +/// +/// Parses a G2 point from a byte slice by reading four consecutive Fq field elements +/// representing the two Fq2 coordinates (x and y) of the G2 point. +/// +/// # Panics +/// +/// Panics if the input is not at least 128 bytes long. +#[inline] +pub(super) fn read_g2_point(input: &[u8]) -> Result { + let ba = read_fq2(&input[0..FQ2_LEN])?; + let bb = read_fq2(&input[FQ2_LEN..2 * FQ2_LEN])?; + + G2Affine::from_xy(ba, bb).ok_or(PrecompileError::Bn128AffineGFailedToCreate) +} + +/// Reads a scalar from the input slice +/// +/// Note: The scalar does not need to be canonical. +/// +/// # Panics +/// +/// If `input.len()` is not equal to [`SCALAR_LEN`]. +#[inline] +pub(super) fn read_scalar(input: &[u8]) -> Scalar { + assert_eq!( + input.len(), + SCALAR_LEN, + "unexpected scalar length. got {}, expected {SCALAR_LEN}", + input.len() + ); + Scalar::from_be_bytes(input) +} + +/// Performs point addition on two G1 points. +#[inline] +pub(super) fn g1_point_add(p1: G1Affine, p2: G1Affine) -> G1Affine { + p1 + p2 +} + +/// Performs a G1 scalar multiplication. +#[inline] +pub(super) fn g1_point_mul(p: G1Affine, fr: Scalar) -> G1Affine { + Bn254::msm(&[fr], &[p]) +} + +/// pairing_check performs a pairing check on a list of G1 and G2 point pairs and +/// returns true if the result is equal to the identity element. +/// +/// Note: If the input is empty, this function returns true. +/// This is different to EIP2537 which disallows the empty input. +#[inline] +pub(super) fn pairing_check(pairs: &[(G1Affine, G2Affine)]) -> bool { + if pairs.is_empty() { + return true; + } + let (g1_points, g2_points): (Vec<_>, Vec<_>) = pairs + .iter() + .cloned() + .map(|(g1, g2)| { + let (g1_x, g1_y) = g1.into_coords(); + let g1 = AffinePoint::new(g1_x, g1_y); + + let (g2_x, g2_y) = g2.into_coords(); + let g2 = AffinePoint::new(g2_x, g2_y); + (g1, g2) + }) + .unzip(); + + Bn254::pairing_check(&g1_points, &g2_points).is_ok() +} diff --git a/crates/precompile/src/hash.rs b/crates/precompile/src/hash.rs index 58286d648..fb9ef7444 100644 --- a/crates/precompile/src/hash.rs +++ b/crates/precompile/src/hash.rs @@ -23,7 +23,10 @@ pub fn sha256_run(input: &[u8], gas_limit: u64) -> PrecompileResult { if cost > gas_limit { Err(PrecompileError::OutOfGas) } else { + #[cfg(not(feature = "openvm-sha2"))] let output = sha2::Sha256::digest(input); + #[cfg(feature = "openvm-sha2")] + let output = openvm_sha2::sha256(input); Ok(PrecompileOutput::new(cost, output.to_vec().into())) } } diff --git a/crates/precompile/src/kzg_point_evaluation.rs b/crates/precompile/src/kzg_point_evaluation.rs index 023c49c95..b5e380a8e 100644 --- a/crates/precompile/src/kzg_point_evaluation.rs +++ b/crates/precompile/src/kzg_point_evaluation.rs @@ -4,6 +4,8 @@ use crate::{Address, PrecompileError, PrecompileOutput, PrecompileResult, Precom cfg_if::cfg_if! { if #[cfg(feature = "c-kzg")] { use c_kzg::{Bytes32, Bytes48}; + } else if #[cfg(feature = "openvm-kzg")] { + use openvm_kzg::{Bytes32, Bytes48, KzgProof}; } else if #[cfg(feature = "kzg-rs")] { use kzg_rs::{Bytes32, Bytes48, KzgProof}; } @@ -82,6 +84,10 @@ pub fn verify_kzg_proof(commitment: &Bytes48, z: &Bytes32, y: &Bytes32, proof: & if #[cfg(feature = "c-kzg")] { let kzg_settings = c_kzg::ethereum_kzg_settings(0); kzg_settings.verify_kzg_proof(commitment, z, y, proof).unwrap_or(false) + } else if #[cfg(feature = "openvm-kzg")] { + let env = openvm_kzg::EnvKzgSettings::default(); + let kzg_settings = env.get(); + KzgProof::verify_kzg_proof(commitment, z, y, proof, kzg_settings).unwrap_or(false) } else if #[cfg(feature = "kzg-rs")] { let env = kzg_rs::EnvKzgSettings::default(); let kzg_settings = env.get(); diff --git a/crates/precompile/src/lib.rs b/crates/precompile/src/lib.rs index 69163f9be..3faa7ac41 100644 --- a/crates/precompile/src/lib.rs +++ b/crates/precompile/src/lib.rs @@ -1,7 +1,7 @@ //! # revm-precompile //! //! Implementations of EVM precompiled contracts. -#![cfg_attr(not(test), warn(unused_crate_dependencies))] +// #![cfg_attr(not(test), warn(unused_crate_dependencies))] #![cfg_attr(not(feature = "std"), no_std)] #[macro_use] @@ -16,7 +16,7 @@ pub mod bn128; pub mod hash; pub mod identity; pub mod interface; -#[cfg(any(feature = "c-kzg", feature = "kzg-rs"))] +#[cfg(any(feature = "c-kzg", feature = "kzg-rs", feature = "openvm-kzg"))] pub mod kzg_point_evaluation; pub mod modexp; pub mod secp256k1; @@ -163,7 +163,7 @@ impl Precompiles { // EIP-4844: Shard Blob Transactions cfg_if! { - if #[cfg(any(feature = "c-kzg", feature = "kzg-rs"))] { + if #[cfg(any(feature = "c-kzg", feature = "kzg-rs", feature = "openvm-kzg"))] { let precompile = kzg_point_evaluation::POINT_EVALUATION.clone(); } else { let precompile = PrecompileWithAddress(u64_to_address(0x0A), |_,_| Err(PrecompileError::Fatal("c-kzg feature is not enabled".into()))); diff --git a/crates/precompile/src/secp256k1.rs b/crates/precompile/src/secp256k1.rs index 8c0676d6f..8e69b9569 100644 --- a/crates/precompile/src/secp256k1.rs +++ b/crates/precompile/src/secp256k1.rs @@ -16,6 +16,8 @@ #[cfg(feature = "secp256k1")] pub mod bitcoin_secp256k1; pub mod k256; +#[cfg(feature = "openvm-k256")] +pub mod openvm_k256; #[cfg(feature = "libsecp256k1")] pub mod parity_libsecp256k1; @@ -60,6 +62,8 @@ cfg_if::cfg_if! { pub use bitcoin_secp256k1::ecrecover; } else if #[cfg(feature = "libsecp256k1")] { pub use parity_libsecp256k1::ecrecover; + } else if #[cfg(feature = "openvm-k256")] { + pub use openvm_k256::ecrecover; } else { pub use k256::ecrecover; } diff --git a/crates/precompile/src/secp256k1/openvm_k256.rs b/crates/precompile/src/secp256k1/openvm_k256.rs new file mode 100644 index 000000000..bcf556b64 --- /dev/null +++ b/crates/precompile/src/secp256k1/openvm_k256.rs @@ -0,0 +1,33 @@ +//! OpenVM implementation of `ecrecover`. More about it in [`crate::secp256k1`]. +use openvm_ecc_guest::{algebra::IntMod, weierstrass::WeierstrassPoint}; +use openvm_k256::ecdsa::{Error, RecoveryId, Signature, VerifyingKey}; +use openvm_keccak256::keccak256; +use primitives::{alloy_primitives::B512, B256}; + +/// Recover the public key from a signature and a message. +/// +/// This function is using the OpenVM patch of the `k256` crate. +pub fn ecrecover(sig: &B512, mut recid: u8, msg: &B256) -> Result { + let _sig = sig; + let _recid = recid; + // parse signature + let mut sig = Signature::from_slice(sig.as_slice())?; + if let Some(sig_normalized) = sig.normalize_s() { + sig = sig_normalized; + recid ^= 1; + } + let recid = RecoveryId::from_byte(recid).expect("recovery ID is valid"); + + // annoying: Signature::to_bytes copies from slice + let recovered_key = + VerifyingKey::recover_from_prehash_noverify(&msg[..], &sig.to_bytes(), recid)?; + let public_key = recovered_key.as_affine(); + let mut encoded = [0u8; 64]; + encoded[..32].copy_from_slice(&WeierstrassPoint::x(public_key).to_be_bytes()); + encoded[32..].copy_from_slice(&WeierstrassPoint::y(public_key).to_be_bytes()); + // hash it + let mut hash = keccak256(&encoded); + // truncate to 20 bytes + hash[..12].fill(0); + Ok(B256::from(hash)) +} diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index 1b31896b1..d870be629 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -26,14 +26,9 @@ num_enum = { version = "0.7.3", default-features = false } # Optional serde = { workspace = true, features = ["derive", "rc"], optional = true } - [features] default = ["std"] -std = [ - "alloy-primitives/std", - "serde?/std", - "num_enum/std" -] +std = ["alloy-primitives/std", "serde?/std", "num_enum/std"] serde = ["dep:serde", "alloy-primitives/serde"] hashbrown = ["alloy-primitives/map-hashbrown"] diff --git a/crates/revm/Cargo.toml b/crates/revm/Cargo.toml index 5f3de9d34..43310d1da 100644 --- a/crates/revm/Cargo.toml +++ b/crates/revm/Cargo.toml @@ -39,30 +39,30 @@ state.workspace = true [features] default = ["std", "c-kzg", "secp256k1", "portable", "blst"] std = [ - "interpreter/std", - "precompile/std", - "handler/std", - "context/std", - "context-interface/std", - "bytecode/std", - "database/std", - "database-interface/std", - "inspector/std", - "primitives/std", - "state/std", + "interpreter/std", + "precompile/std", + "handler/std", + "context/std", + "context-interface/std", + "bytecode/std", + "database/std", + "database-interface/std", + "inspector/std", + "primitives/std", + "state/std", ] hashbrown = ["interpreter/hashbrown", "precompile/hashbrown"] serde = [ - "interpreter/serde", - "database-interface/serde", - "primitives/serde", - "handler/serde", - "context-interface/serde", - "inspector/serde", - "bytecode/serde", - "context/serde", - "database/serde", - "state/serde", + "interpreter/serde", + "database-interface/serde", + "primitives/serde", + "handler/serde", + "context-interface/serde", + "inspector/serde", + "bytecode/serde", + "context/serde", + "database/serde", + "state/serde", ] arbitrary = ["primitives/arbitrary"] asm-keccak = ["primitives/asm-keccak"] @@ -75,11 +75,11 @@ alloydb = ["database/alloydb"] serde-json = ["serde", "inspector/serde-json"] dev = [ - "memory_limit", - "optional_balance_check", - "optional_block_gas_limit", - "optional_eip3607", - "optional_no_base_fee", + "memory_limit", + "optional_balance_check", + "optional_block_gas_limit", + "optional_eip3607", + "optional_no_base_fee", ] memory_limit = ["context/memory_limit", "interpreter/memory_limit"] optional_balance_check = ["context/optional_balance_check"] @@ -88,12 +88,13 @@ optional_eip3607 = ["context/optional_eip3607"] optional_no_base_fee = ["context/optional_no_base_fee"] # Precompiles features - -secp256k1 = ["precompile/secp256k1"] # See comments in `precompile` -c-kzg = [ - "precompile/c-kzg", -] # `kzg-rs` is not audited but useful for `no_std` environment, use it with causing and default to `c-kzg` if possible. +# See comments in `precompile` +secp256k1 = ["precompile/secp256k1"] +c-kzg = ["precompile/c-kzg"] +# `kzg-rs` is not audited but useful for `no_std` environment, use it with causing and default to `c-kzg` if possible. kzg-rs = ["precompile/kzg-rs"] +# `openvm-kzg` can be used in place of kzg-rs for acceleration on OpenVM guest +openvm-kzg = ["precompile/openvm-kzg"] blst = ["precompile/blst"] secp256r1 = ["precompile/secp256r1"] bn = ["precompile/bn"] diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 000000000..35e9b966e --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,3 @@ +[toolchain] +channel = "1.85.1" +components = ["clippy", "rustfmt"] diff --git a/tests/openvm/Cargo.toml b/tests/openvm/Cargo.toml new file mode 100644 index 000000000..a896d5a88 --- /dev/null +++ b/tests/openvm/Cargo.toml @@ -0,0 +1,34 @@ +[package] +name = "openvm-tests" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { workspace = true } +openvm-ecc-guest = { workspace = true } +openvm-pairing = { workspace = true } +openvm-keccak256-guest = { workspace = true } +openvm-sdk = { workspace = true } +openvm-build = { workspace = true } +openvm-pairing-transpiler = { workspace = true } +openvm-rv32im-transpiler = { workspace = true } +openvm-transpiler = { workspace = true } +openvm-algebra-circuit = { workspace = true } +openvm-algebra-transpiler = { workspace = true } +openvm-ecc-circuit = { workspace = true } +openvm-ecc-transpiler = { workspace = true } +openvm-pairing-circuit = { workspace = true } +openvm-circuit = { workspace = true, features = ["test-utils", "parallel"] } +openvm-stark-sdk = { workspace = true } + +num-bigint = { version = "0.4", default-features = false } +num-traits = { version = "0.2", default-features = false } + +primitives = { workspace = true } + +sha2 = { version = "0.10", default-features = false } +toml = "0.8.23" + +[dev-dependencies] +rand.workspace = true +secp256k1.workspace = true diff --git a/tests/openvm/programs/ec_add/Cargo.toml b/tests/openvm/programs/ec_add/Cargo.toml new file mode 100644 index 000000000..283c7ea20 --- /dev/null +++ b/tests/openvm/programs/ec_add/Cargo.toml @@ -0,0 +1,14 @@ +[workspace] +[package] +name = "ec-add-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-bn", +] } diff --git a/tests/openvm/programs/ec_add/openvm.toml b/tests/openvm/programs/ec_add/openvm.toml new file mode 100644 index 000000000..b704f9971 --- /dev/null +++ b/tests/openvm/programs/ec_add/openvm.toml @@ -0,0 +1,18 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] + +[app_vm_config.modular] +supported_moduli = [ + # bn254 (alt bn128) + "21888242871839275222246405745257275088696311157297823662689037894645226208583", # coordinate field + "21888242871839275222246405745257275088548364400416034343698204186575808495617", # scalar field +] + +# bn254 (alt bn128) +[[app_vm_config.ecc.supported_curves]] +struct_name = "Bn254G1Affine" +modulus = "21888242871839275222246405745257275088696311157297823662689037894645226208583" +scalar = "21888242871839275222246405745257275088548364400416034343698204186575808495617" +a = "0" +b = "3" diff --git a/tests/openvm/programs/ec_add/openvm_init.rs b/tests/openvm/programs/ec_add/openvm_init.rs new file mode 100644 index 000000000..64de28e83 --- /dev/null +++ b/tests/openvm/programs/ec_add/openvm_init.rs @@ -0,0 +1,3 @@ +// This file is automatically generated by cargo openvm. Do not rename or edit. +openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } +openvm_ecc_guest::sw_macros::sw_init! { Bn254G1Affine } diff --git a/tests/openvm/programs/ec_add/src/main.rs b/tests/openvm/programs/ec_add/src/main.rs new file mode 100644 index 000000000..aab900407 --- /dev/null +++ b/tests/openvm/programs/ec_add/src/main.rs @@ -0,0 +1,19 @@ +#![no_std] +#![no_main] + +use openvm::io::read_vec; +#[allow(unused_imports)] +use openvm_pairing::bn254::Bn254G1Affine; +use revm_precompile::bn128::{add::BYZANTIUM_ADD_GAS_COST, run_add}; + +openvm::init!(); + +openvm::entry!(main); + +pub fn main() { + let input = read_vec(); + let expected = read_vec(); + + let outcome = run_add(&input, BYZANTIUM_ADD_GAS_COST, 500).unwrap(); + assert_eq!(outcome.bytes, expected); +} diff --git a/tests/openvm/programs/ec_mul/Cargo.toml b/tests/openvm/programs/ec_mul/Cargo.toml new file mode 100644 index 000000000..ee5f74804 --- /dev/null +++ b/tests/openvm/programs/ec_mul/Cargo.toml @@ -0,0 +1,14 @@ +[workspace] +[package] +name = "ec-mul-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-bn", +] } diff --git a/tests/openvm/programs/ec_mul/openvm.toml b/tests/openvm/programs/ec_mul/openvm.toml new file mode 100644 index 000000000..b704f9971 --- /dev/null +++ b/tests/openvm/programs/ec_mul/openvm.toml @@ -0,0 +1,18 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] + +[app_vm_config.modular] +supported_moduli = [ + # bn254 (alt bn128) + "21888242871839275222246405745257275088696311157297823662689037894645226208583", # coordinate field + "21888242871839275222246405745257275088548364400416034343698204186575808495617", # scalar field +] + +# bn254 (alt bn128) +[[app_vm_config.ecc.supported_curves]] +struct_name = "Bn254G1Affine" +modulus = "21888242871839275222246405745257275088696311157297823662689037894645226208583" +scalar = "21888242871839275222246405745257275088548364400416034343698204186575808495617" +a = "0" +b = "3" diff --git a/tests/openvm/programs/ec_mul/openvm_init.rs b/tests/openvm/programs/ec_mul/openvm_init.rs new file mode 100644 index 000000000..64de28e83 --- /dev/null +++ b/tests/openvm/programs/ec_mul/openvm_init.rs @@ -0,0 +1,3 @@ +// This file is automatically generated by cargo openvm. Do not rename or edit. +openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } +openvm_ecc_guest::sw_macros::sw_init! { Bn254G1Affine } diff --git a/tests/openvm/programs/ec_mul/src/main.rs b/tests/openvm/programs/ec_mul/src/main.rs new file mode 100644 index 000000000..4ac9ef0ee --- /dev/null +++ b/tests/openvm/programs/ec_mul/src/main.rs @@ -0,0 +1,19 @@ +#![no_std] +#![no_main] + +use openvm::io::read_vec; +#[allow(unused_imports)] +use openvm_pairing::bn254::Bn254G1Affine; +use revm_precompile::bn128::{mul::BYZANTIUM_MUL_GAS_COST, run_mul}; + +openvm::init!(); + +openvm::entry!(main); + +pub fn main() { + let input = read_vec(); + let expected = read_vec(); + + let outcome = run_mul(&input, BYZANTIUM_MUL_GAS_COST, 40_000).unwrap(); + assert_eq!(outcome.bytes, expected); +} diff --git a/tests/openvm/programs/ecrecover/Cargo.toml b/tests/openvm/programs/ecrecover/Cargo.toml new file mode 100644 index 000000000..858149053 --- /dev/null +++ b/tests/openvm/programs/ecrecover/Cargo.toml @@ -0,0 +1,27 @@ +[workspace] +[package] +name = "ecrecover-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-k256", +] } +revm-primitives = { path = "../../../../crates/primitives", default-features = false } +k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } + +[features] +default = [] + +[profile.release] +panic = "abort" +lto = "thin" # faster compile time + +[profile.profiling] +inherits = "release" +debug = 2 +strip = false diff --git a/tests/openvm/programs/ecrecover/openvm.toml b/tests/openvm/programs/ecrecover/openvm.toml new file mode 100644 index 000000000..c1261ee45 --- /dev/null +++ b/tests/openvm/programs/ecrecover/openvm.toml @@ -0,0 +1,17 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] +[app_vm_config.keccak] + +[app_vm_config.modular] +supported_moduli = [ + "115792089237316195423570985008687907853269984665640564039457584007908834671663", + "115792089237316195423570985008687907852837564279074904382605163141518161494337", +] + +[[app_vm_config.ecc.supported_curves]] +struct_name = "Secp256k1Point" +modulus = "115792089237316195423570985008687907853269984665640564039457584007908834671663" +scalar = "115792089237316195423570985008687907852837564279074904382605163141518161494337" +a = "0" +b = "7" diff --git a/tests/openvm/programs/ecrecover/openvm_init.rs b/tests/openvm/programs/ecrecover/openvm_init.rs new file mode 100644 index 000000000..bec9f527e --- /dev/null +++ b/tests/openvm/programs/ecrecover/openvm_init.rs @@ -0,0 +1,3 @@ +// This file is automatically generated by cargo openvm. Do not rename or edit. +openvm_algebra_guest::moduli_macros::moduli_init! { "115792089237316195423570985008687907853269984665640564039457584007908834671663", "115792089237316195423570985008687907852837564279074904382605163141518161494337" } +openvm_ecc_guest::sw_macros::sw_init! { Secp256k1Point } diff --git a/tests/openvm/programs/ecrecover/src/main.rs b/tests/openvm/programs/ecrecover/src/main.rs new file mode 100644 index 000000000..953e16ff8 --- /dev/null +++ b/tests/openvm/programs/ecrecover/src/main.rs @@ -0,0 +1,19 @@ +#![no_std] +#![no_main] + +#[allow(unused_imports)] +use k256::Secp256k1Point; +use openvm::io::read_vec; +use revm_precompile::secp256k1::ec_recover_run; +use revm_primitives::Bytes; + +openvm::init!(); + +openvm::entry!(main); + +pub fn main() { + let expected_address = read_vec(); + let input = read_vec(); + let recovered = ec_recover_run(&Bytes::from(input), 3000).unwrap(); + assert_eq!(recovered.bytes.as_ref(), expected_address); +} diff --git a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml new file mode 100644 index 000000000..b8eb9dd58 --- /dev/null +++ b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml @@ -0,0 +1,19 @@ +[workspace] +[package] +name = "kzg-point-evaluation-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0", features = [ + "bls12_381", +] } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-kzg", +] } + +[features] +use-intrinsics = ["revm-precompile/openvm-kzg-intrinsics"] diff --git a/tests/openvm/programs/kzg_point_evaluation/openvm.toml b/tests/openvm/programs/kzg_point_evaluation/openvm.toml new file mode 100644 index 000000000..20d06d34d --- /dev/null +++ b/tests/openvm/programs/kzg_point_evaluation/openvm.toml @@ -0,0 +1,26 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] + +[app_vm_config.modular] +supported_moduli = [ + "4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787", +] + +[app_vm_config.fp2] +supported_moduli = [ + [ + "Bls12_381Fp2", + "4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787", + ], +] + +[[app_vm_config.ecc.supported_curves]] +struct_name = "Bls12_381G1Affine" +modulus = "4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787" +scalar = "52435875175126190479447740508185965837690552500527637822603658699938581184513" +a = "0" +b = "4" + +[app_vm_config.pairing] +supported_curves = ["Bls12_381"] diff --git a/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs b/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs new file mode 100644 index 000000000..384af6f4f --- /dev/null +++ b/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs @@ -0,0 +1,4 @@ +// This file is automatically generated by cargo openvm. Do not rename or edit. +openvm_algebra_guest::moduli_macros::moduli_init! { "4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787" } +openvm_algebra_guest::complex_macros::complex_init! { Bls12_381Fp2 { mod_idx = 0 } } +openvm_ecc_guest::sw_macros::sw_init! { Bls12_381G1Affine } diff --git a/tests/openvm/programs/kzg_point_evaluation/src/main.rs b/tests/openvm/programs/kzg_point_evaluation/src/main.rs new file mode 100644 index 000000000..d614e4fa7 --- /dev/null +++ b/tests/openvm/programs/kzg_point_evaluation/src/main.rs @@ -0,0 +1,22 @@ +#![no_std] +#![no_main] + +use openvm::io::read_vec; +#[allow(unused_imports)] +use openvm_pairing::bls12_381::Bls12_381G1Affine; +use revm_precompile::kzg_point_evaluation::{run, GAS_COST}; + +openvm::entry!(main); + +#[cfg(feature = "use-intrinsics")] +openvm::init!(); + +pub fn main() { + let input = read_vec(); + let expected_output = read_vec(); + + let gas = GAS_COST; + let output = run(&input, gas).unwrap(); + assert_eq!(output.gas_used, gas); + assert_eq!(&output.bytes[..], &expected_output); +} diff --git a/tests/openvm/programs/pairing/Cargo.toml b/tests/openvm/programs/pairing/Cargo.toml new file mode 100644 index 000000000..1d3babd40 --- /dev/null +++ b/tests/openvm/programs/pairing/Cargo.toml @@ -0,0 +1,12 @@ +[workspace] +[package] +name = "ec-pairing-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-bn", +] } diff --git a/tests/openvm/programs/pairing/openvm.toml b/tests/openvm/programs/pairing/openvm.toml new file mode 100644 index 000000000..16186e9b9 --- /dev/null +++ b/tests/openvm/programs/pairing/openvm.toml @@ -0,0 +1,21 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] +[app_vm_config.modular] +supported_moduli = [ + # bn254 (alt bn128) + "21888242871839275222246405745257275088696311157297823662689037894645226208583", # coordinate field + "21888242871839275222246405745257275088548364400416034343698204186575808495617", # scalar field +] + +[app_vm_config.fp2] +supported_moduli = [ + # bn254 (alt bn128) + [ + "Bn254Fp2", + "21888242871839275222246405745257275088696311157297823662689037894645226208583", + ], +] + +[app_vm_config.pairing] +supported_curves = ["Bn254"] diff --git a/tests/openvm/programs/pairing/openvm_init.rs b/tests/openvm/programs/pairing/openvm_init.rs new file mode 100644 index 000000000..31e3d8938 --- /dev/null +++ b/tests/openvm/programs/pairing/openvm_init.rs @@ -0,0 +1,3 @@ +// This file is automatically generated by cargo openvm. Do not rename or edit. +openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } +openvm_algebra_guest::complex_macros::complex_init! { Bn254Fp2 { mod_idx = 0 } } diff --git a/tests/openvm/programs/pairing/src/main.rs b/tests/openvm/programs/pairing/src/main.rs new file mode 100644 index 000000000..8f44f3c50 --- /dev/null +++ b/tests/openvm/programs/pairing/src/main.rs @@ -0,0 +1,26 @@ +#![no_std] +#![no_main] + +use openvm::io::read_vec; +use revm_precompile::bn128::{ + pair::{BYZANTIUM_PAIR_BASE, BYZANTIUM_PAIR_PER_POINT}, + run_pair, +}; + +openvm::init!(); + +openvm::entry!(main); + +pub fn main() { + let input = read_vec(); + let expected = read_vec(); + + let outcome = run_pair( + &input, + BYZANTIUM_PAIR_PER_POINT, + BYZANTIUM_PAIR_BASE, + 260_000, + ) + .unwrap(); + assert_eq!(outcome.bytes, expected); +} diff --git a/tests/openvm/programs/sha256/Cargo.toml b/tests/openvm/programs/sha256/Cargo.toml new file mode 100644 index 000000000..9b07d7d2c --- /dev/null +++ b/tests/openvm/programs/sha256/Cargo.toml @@ -0,0 +1,11 @@ +[workspace] +[package] +name = "sha256-program" +version = "0.1.0" +edition = "2021" + +[dependencies] +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ + "openvm-sha2", +] } diff --git a/tests/openvm/programs/sha256/openvm.toml b/tests/openvm/programs/sha256/openvm.toml new file mode 100644 index 000000000..656bf5241 --- /dev/null +++ b/tests/openvm/programs/sha256/openvm.toml @@ -0,0 +1,4 @@ +[app_vm_config.rv32i] +[app_vm_config.rv32m] +[app_vm_config.io] +[app_vm_config.sha256] diff --git a/tests/openvm/programs/sha256/src/main.rs b/tests/openvm/programs/sha256/src/main.rs new file mode 100644 index 000000000..80b8acac3 --- /dev/null +++ b/tests/openvm/programs/sha256/src/main.rs @@ -0,0 +1,16 @@ +#![no_std] +#![no_main] + +extern crate alloc; + +use openvm::io::read_vec; +use revm_precompile::hash::sha256_run; +openvm::entry!(main); + +pub fn main() { + let input = read_vec(); + let expected = read_vec(); + + let outcome = sha256_run(&input, 260_000).unwrap(); + assert_eq!(outcome.bytes, expected); +} diff --git a/tests/openvm/src/ec_precompile.rs b/tests/openvm/src/ec_precompile.rs new file mode 100644 index 000000000..4d8ba66a2 --- /dev/null +++ b/tests/openvm/src/ec_precompile.rs @@ -0,0 +1,133 @@ +use std::path::PathBuf; + +use openvm_build::GuestOptions; +use openvm_circuit::utils::air_test_with_min_segments; +use openvm_sdk::config::AppConfig; +use openvm_sdk::{config::SdkVmConfig, Sdk}; +use openvm_stark_sdk::openvm_stark_backend::p3_field::FieldAlgebra; +use openvm_stark_sdk::p3_baby_bear::BabyBear; +use primitives::hex; + +type F = BabyBear; + +// These tests should be run with --profile=ethtests for more compiler optimization + +// RUST_MIN_STACK=8388608 +#[test] +fn test_ec_pairing_precompile() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/pairing"); + let app_config: AppConfig = + toml::from_str(include_str!("../programs/pairing/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let ec_precompile = sdk + .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) + .unwrap(); + let exe = sdk + .transpile(ec_precompile, vm_config.transpiler()) + .unwrap(); + + let input = hex::decode( + "\ + 1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f59\ + 3034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41\ + 209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf7\ + 04bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a41678\ + 2bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d\ + 120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550\ + 111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c\ + 2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411\ + 198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c2\ + 1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed\ + 090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b\ + 12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa", + ) + .unwrap(); + let expected = + hex::decode("0000000000000000000000000000000000000000000000000000000000000001").unwrap(); + + let io = [input, expected] + .into_iter() + .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) + .collect::>(); + air_test_with_min_segments(vm_config, exe, io, 1); +} + +#[test] +fn test_ec_add_precompile() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/ec_add"); + + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ec_add/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let ec_precompile = sdk + .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) + .unwrap(); + let exe = sdk + .transpile(ec_precompile, vm_config.transpiler()) + .unwrap(); + + let input = hex::decode( + "\ + 18b18acfb4c2c30276db5411368e7185b311dd124691610c5d3b74034e093dc9\ + 063c909c4720840cb5134cb9f59fa749755796819658d32efc0d288198f37266\ + 07c2b7f58a84bd6145f00c9c2bc0bb1a187f20ff2c92963a88019e7c6a014eed\ + 06614e20c147e940f2d70da3f74c9a17df361706a4485c742bd6788478fa17d7", + ) + .unwrap(); + let expected = hex::decode( + "\ + 2243525c5efd4b9c3d3c45ac0ca3fe4dd85e830a4ce6b65fa1eeaee202839703\ + 301d1d33be6da8e509df21cc35964723180eed7532537db9ae5e7d48f195c915", + ) + .unwrap(); + + let io = [input, expected] + .into_iter() + .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) + .collect::>(); + air_test_with_min_segments(vm_config, exe, io, 1); +} + +#[test] +fn test_ec_mul_precompile() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/ec_mul"); + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ec_mul/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let ec_precompile = sdk + .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) + .unwrap(); + + let exe = sdk + .transpile(ec_precompile, vm_config.transpiler()) + .unwrap(); + + let input = hex::decode( + "\ + 2bd3e6d0f3b142924f5ca7b49ce5b9d54c4703d7ae5648e61d02268b1a0a9fb7\ + 21611ce0a6af85915e2f1d70300909ce2e49dfad4a4619c8390cae66cefdb204\ + 00000000000000000000000000000000000000000000000011138ce750fa15c2", + ) + .unwrap(); + let expected = hex::decode( + "\ + 070a8d6a982153cae4be29d434e8faef8a47b274a053f5a4ee2a6c9c13c31e5c\ + 031b8ce914eba3a9ffb989f9cdd5b0f01943074bf4f0f315690ec3cec6981afc", + ) + .unwrap(); + + let io = [input, expected] + .into_iter() + .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) + .collect::>(); + air_test_with_min_segments(vm_config, exe, io, 1); +} diff --git a/tests/openvm/src/ecrecover.rs b/tests/openvm/src/ecrecover.rs new file mode 100644 index 000000000..72f6f8d84 --- /dev/null +++ b/tests/openvm/src/ecrecover.rs @@ -0,0 +1,52 @@ +use std::path::PathBuf; + +use openvm_build::GuestOptions; +use openvm_circuit::utils::air_test_with_min_segments; +use openvm_sdk::config::AppConfig; +use openvm_sdk::StdIn; +use openvm_sdk::{config::SdkVmConfig, Sdk}; +use primitives::{hex, keccak256, Bytes, U256}; +use secp256k1::{Message, SecretKey, SECP256K1}; + +#[test] +fn test_ecrecover_precompile() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/ecrecover"); + + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ecrecover/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let elf = sdk + .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) + .unwrap(); + let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); + + // Generate secp256k1 signature + let data = hex::decode("1337133713371337").unwrap(); + let hash = keccak256(data); + let secret_key = SecretKey::new(&mut rand::thread_rng()); + + let message = Message::from_digest_slice(&hash[..]).unwrap(); + let s = SECP256K1.sign_ecdsa_recoverable(&message, &secret_key); + let (rec_id, data) = s.serialize_compact(); + let rec_id = i32::from(rec_id) as u8 + 27; + + let mut message_and_signature = [0u8; 128]; + message_and_signature[0..32].copy_from_slice(&hash[..]); + + // Fit signature into format the precompile expects + let rec_id = U256::from(rec_id as u64); + message_and_signature[32..64].copy_from_slice(&rec_id.to_be_bytes::<32>()); + message_and_signature[64..128].copy_from_slice(&data); + + let message_and_signature = Bytes::from(message_and_signature); + let public = SECP256K1.recover_ecdsa(&message, &s).unwrap(); + let mut expected = keccak256(&public.serialize_uncompressed()[1..]); + expected[..12].fill(0); + let mut stdin = StdIn::default(); + stdin.write_bytes(expected.as_slice()); + stdin.write_bytes(&message_and_signature); + air_test_with_min_segments(vm_config, exe, stdin, 1); +} diff --git a/tests/openvm/src/kzg_precompile.rs b/tests/openvm/src/kzg_precompile.rs new file mode 100644 index 000000000..e423c2835 --- /dev/null +++ b/tests/openvm/src/kzg_precompile.rs @@ -0,0 +1,84 @@ +use std::path::PathBuf; + +use openvm_build::GuestOptions; +use openvm_circuit::utils::air_test_with_min_segments; +use openvm_sdk::config::AppConfig; +use openvm_sdk::StdIn; +use openvm_sdk::{config::SdkVmConfig, Sdk}; +use primitives::eip4844::VERSIONED_HASH_VERSION_KZG; +use primitives::hex; +use sha2::{Digest, Sha256}; + +// These tests should be run with --profile=fast or --profile=ethtests for more compiler optimization + +#[test] +fn test_kzg_precompile_with_intrinsics() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default().with_features(["use-intrinsics"]); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/kzg_point_evaluation"); + + let app_config: AppConfig = + toml::from_str(include_str!("../programs/kzg_point_evaluation/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let elf = sdk + .build(guest_opts, &vm_config, &pkg_dir, &None, None) + .unwrap(); + let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); + + // test data from: https://github.com/ethereum/c-kzg-4844/blob/main/tests/verify_kzg_proof/kzg-mainnet/verify_kzg_proof_case_correct_proof_31ebd010e6098750/data.yaml + + let commitment = hex!("8f59a8d2a1a625a17f3fea0fe5eb8c896db3764f3185481bc22f91b4aaffcca25f26936857bc3a7c2539ea8ec3a952b7").to_vec(); + let mut versioned_hash = Sha256::digest(&commitment).to_vec(); + versioned_hash[0] = VERSIONED_HASH_VERSION_KZG; + let z = hex!("73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000000").to_vec(); + let y = hex!("1522a4a7f34e1ea350ae07c29c96c7e79655aa926122e95fe69fcbd932ca49e9").to_vec(); + let proof = hex!("a62ad71d14c5719385c0686f1871430475bf3a00f0aa3f7b8dd99a9abc2160744faf0070725e00b60ad9a026a15b1a8c").to_vec(); + + let input = [versioned_hash, z, y, commitment, proof].concat(); + + let expected_output = hex!("000000000000000000000000000000000000000000000000000000000000100073eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001"); + + let mut io = StdIn::default(); + io.write_bytes(&input); + io.write_bytes(&expected_output); + air_test_with_min_segments(vm_config, exe, io, 1); +} + +#[test] +#[ignore] +fn test_kzg_precompile_without_intrinsics() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/kzg_point_evaluation"); + let vm_config = SdkVmConfig::builder() + .system(Default::default()) + .rv32i(Default::default()) + .rv32m(Default::default()) + .io(Default::default()) + .keccak(Default::default()) + .build(); + let elf = sdk + .build(guest_opts, &vm_config, &pkg_dir, &None, None) + .unwrap(); + + let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); + + // test data from: https://github.com/ethereum/c-kzg-4844/blob/main/tests/verify_kzg_proof/kzg-mainnet/verify_kzg_proof_case_correct_proof_31ebd010e6098750/data.yaml + let commitment = hex!("8f59a8d2a1a625a17f3fea0fe5eb8c896db3764f3185481bc22f91b4aaffcca25f26936857bc3a7c2539ea8ec3a952b7").to_vec(); + let mut versioned_hash = Sha256::digest(&commitment).to_vec(); + versioned_hash[0] = VERSIONED_HASH_VERSION_KZG; + let z = hex!("73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000000").to_vec(); + let y = hex!("1522a4a7f34e1ea350ae07c29c96c7e79655aa926122e95fe69fcbd932ca49e9").to_vec(); + let proof = hex!("a62ad71d14c5719385c0686f1871430475bf3a00f0aa3f7b8dd99a9abc2160744faf0070725e00b60ad9a026a15b1a8c").to_vec(); + + let input = [versioned_hash, z, y, commitment, proof].concat(); + + let expected_output = hex!("000000000000000000000000000000000000000000000000000000000000100073eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001"); + + let mut io = StdIn::default(); + io.write_bytes(&input); + io.write_bytes(&expected_output); + air_test_with_min_segments(vm_config, exe, io, 1); +} diff --git a/tests/openvm/src/lib.rs b/tests/openvm/src/lib.rs new file mode 100644 index 000000000..3518bcc26 --- /dev/null +++ b/tests/openvm/src/lib.rs @@ -0,0 +1,8 @@ +#[cfg(test)] +pub mod ec_precompile; +#[cfg(test)] +pub mod ecrecover; +#[cfg(test)] +pub mod kzg_precompile; +#[cfg(test)] +pub mod sha256_precompile; diff --git a/tests/openvm/src/sha256_precompile.rs b/tests/openvm/src/sha256_precompile.rs new file mode 100644 index 000000000..2a6c2b66a --- /dev/null +++ b/tests/openvm/src/sha256_precompile.rs @@ -0,0 +1,55 @@ +use std::path::PathBuf; + +use openvm_build::GuestOptions; +use openvm_circuit::utils::air_test_with_min_segments; +use openvm_sdk::{ + config::{AppConfig, SdkVmConfig}, + Sdk, +}; +use openvm_stark_sdk::openvm_stark_backend::p3_field::FieldAlgebra; +use openvm_stark_sdk::p3_baby_bear::BabyBear; +use primitives::hex; + +type F = BabyBear; + +#[test] +fn test_sha256_precompile() { + let sdk = Sdk::new(); + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/sha256"); + let app_config: AppConfig = + toml::from_str(include_str!("../programs/sha256/openvm.toml")).unwrap(); + let vm_config = app_config.app_vm_config; + let sha256_precompile = sdk + .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) + .unwrap(); + let exe = sdk + .transpile(sha256_precompile, vm_config.transpiler()) + .unwrap(); + + let input = hex::decode( + "\ + 1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f59\ + 3034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41\ + 209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf7\ + 04bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a41678\ + 2bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d\ + 120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550\ + 111e129f1cf1097710d41c4ac70fcdfa5ba2023c6ff1cbeac322de49d1b6df7c\ + 2032c61a830e3c17286de9462bf242fca2883585b93870a73853face6a6bf411\ + 198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c2\ + 1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed\ + 090689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b\ + 12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa", + ) + .unwrap(); + let expected = + hex::decode("5f4e768d9faaf07a8c7264b937d60ff0b2fd52458e60a235f79c54bea68979dc").unwrap(); + + let io = [input, expected] + .into_iter() + .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) + .collect::>(); + air_test_with_min_segments(vm_config, exe, io, 1); +} From 9ed4543409b1d56f4f1f265ab0db63bf2883971e Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Mon, 9 Jun 2025 12:14:05 -0400 Subject: [PATCH 2/6] chore(ci): update workflow (#77) --- .github/workflows/openvm-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/openvm-tests.yml b/.github/workflows/openvm-tests.yml index 287f277e1..f3140f865 100644 --- a/.github/workflows/openvm-tests.yml +++ b/.github/workflows/openvm-tests.yml @@ -2,7 +2,7 @@ name: OpenVM Tests on: push: - branches: ["v69-openvm"] + branches: ["v*-openvm"] pull_request: branches: ["**"] From 8fa296f5bde04f4523c5586d5b4efd88945accf3 Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Mon, 9 Jun 2025 12:49:52 -0400 Subject: [PATCH 3/6] fix: turn off `openvm-k256` for patching (#78) Cannot import `openvm-k256` and `k256` together if you later patch `k256` with `openvm-k256`, so for now we don't enable `openvm-k256` by default. It only leads to a small performance diff, so we may just delete the `openvm-k256` feature eventually. --- crates/precompile/Cargo.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/precompile/Cargo.toml b/crates/precompile/Cargo.toml index 3a90a7be6..baec141e2 100644 --- a/crates/precompile/Cargo.toml +++ b/crates/precompile/Cargo.toml @@ -146,7 +146,8 @@ bn = ["dep:bn"] # Enable openvm accelerated implementation openvm-bn = ["dep:openvm", "openvm-ecc-guest", "openvm-pairing/bn254"] -openvm = ["dep:openvm", "openvm-k256", "openvm-bn", "openvm-sha2", "openvm-kzg"] +# We do NOT include `openvm-k256` because it will cause a conflict when patching k256 +openvm = ["dep:openvm", "openvm-bn", "openvm-sha2", "openvm-kzg"] [[bench]] name = "bench" From 12f8a0325eb0578884dbc7e1187464ff2bd08bce Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Wed, 11 Jun 2025 18:58:25 +0200 Subject: [PATCH 4/6] chore: update openvm tag (#79) --- Cargo.lock | 108 +++++++++--------- Cargo.toml | 40 +++---- crates/precompile/Cargo.toml | 3 +- tests/openvm/programs/ec_add/Cargo.toml | 8 +- tests/openvm/programs/ec_mul/Cargo.toml | 8 +- tests/openvm/programs/ecrecover/Cargo.toml | 8 +- .../programs/kzg_point_evaluation/Cargo.toml | 8 +- tests/openvm/programs/pairing/Cargo.toml | 4 +- tests/openvm/programs/sha256/Cargo.toml | 2 +- 9 files changed, 94 insertions(+), 95 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 49fedb889..1aef10445 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3852,7 +3852,7 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "ecdsa", "elliptic-curve", @@ -4521,7 +4521,7 @@ dependencies = [ [[package]] name = "openvm" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "bytemuck", "getrandom 0.3.2", @@ -4535,7 +4535,7 @@ dependencies = [ [[package]] name = "openvm-algebra-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4563,8 +4563,8 @@ dependencies = [ [[package]] name = "openvm-algebra-complex-macros" -version = "0.1.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +version = "1.2.1-rc.0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-macros-common", "quote", @@ -4574,7 +4574,7 @@ dependencies = [ [[package]] name = "openvm-algebra-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "halo2curves-axiom", "num-bigint 0.4.6", @@ -4590,7 +4590,7 @@ dependencies = [ [[package]] name = "openvm-algebra-moduli-macros" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "num-bigint 0.4.6", "num-prime", @@ -4602,7 +4602,7 @@ dependencies = [ [[package]] name = "openvm-algebra-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-algebra-guest", "openvm-instructions", @@ -4616,7 +4616,7 @@ dependencies = [ [[package]] name = "openvm-bigint-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4638,7 +4638,7 @@ dependencies = [ [[package]] name = "openvm-bigint-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-platform", "strum_macros 0.26.4", @@ -4647,7 +4647,7 @@ dependencies = [ [[package]] name = "openvm-bigint-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-bigint-guest", "openvm-instructions", @@ -4662,7 +4662,7 @@ dependencies = [ [[package]] name = "openvm-build" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "cargo_metadata", "eyre", @@ -4674,7 +4674,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "backtrace", "cfg-if", @@ -4705,7 +4705,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "itertools 0.14.0", "quote", @@ -4715,7 +4715,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -4730,7 +4730,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "itertools 0.14.0", "quote", @@ -4740,7 +4740,7 @@ dependencies = [ [[package]] name = "openvm-continuations" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derivative", "openvm-circuit", @@ -4755,7 +4755,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "proc-macro2", "quote", @@ -4765,7 +4765,7 @@ dependencies = [ [[package]] name = "openvm-ecc-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4795,7 +4795,7 @@ dependencies = [ [[package]] name = "openvm-ecc-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "ecdsa", "elliptic-curve", @@ -4814,7 +4814,7 @@ dependencies = [ [[package]] name = "openvm-ecc-sw-macros" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-macros-common", "quote", @@ -4824,7 +4824,7 @@ dependencies = [ [[package]] name = "openvm-ecc-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-ecc-guest", "openvm-instructions", @@ -4838,7 +4838,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -4855,7 +4855,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "quote", "syn 2.0.100", @@ -4864,7 +4864,7 @@ dependencies = [ [[package]] name = "openvm-keccak256" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-keccak256-guest", "tiny-keccak", @@ -4873,7 +4873,7 @@ dependencies = [ [[package]] name = "openvm-keccak256-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4899,7 +4899,7 @@ dependencies = [ [[package]] name = "openvm-keccak256-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-platform", ] @@ -4907,7 +4907,7 @@ dependencies = [ [[package]] name = "openvm-keccak256-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -4921,7 +4921,7 @@ dependencies = [ [[package]] name = "openvm-kzg" version = "0.1.0-alpha" -source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=2ba87b7425479662d901cea33e26cda67981a6b6#2ba87b7425479662d901cea33e26cda67981a6b6" +source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=a07b1983012e97ee21ebf0eef0d4da954d9cc2e5#a07b1983012e97ee21ebf0eef0d4da954d9cc2e5" dependencies = [ "bls12_381 0.8.0", "hex", @@ -4937,7 +4937,7 @@ dependencies = [ [[package]] name = "openvm-macros-common" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "syn 2.0.100", ] @@ -4945,7 +4945,7 @@ dependencies = [ [[package]] name = "openvm-mod-circuit-builder" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "itertools 0.14.0", "num-bigint 0.4.6", @@ -4964,7 +4964,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4991,7 +4991,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "backtrace", "itertools 0.14.0", @@ -5014,7 +5014,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "quote", "syn 2.0.100", @@ -5023,7 +5023,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -5050,7 +5050,7 @@ dependencies = [ [[package]] name = "openvm-native-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-instructions", "openvm-transpiler", @@ -5060,7 +5060,7 @@ dependencies = [ [[package]] name = "openvm-pairing" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "group 0.13.0", "hex-literal 0.4.1", @@ -5084,7 +5084,7 @@ dependencies = [ [[package]] name = "openvm-pairing-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5115,7 +5115,7 @@ dependencies = [ [[package]] name = "openvm-pairing-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "halo2curves-axiom", "hex-literal 0.4.1", @@ -5136,7 +5136,7 @@ dependencies = [ [[package]] name = "openvm-pairing-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -5150,7 +5150,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "libm", "openvm-custom-insn", @@ -5160,7 +5160,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derivative", "lazy_static", @@ -5177,7 +5177,7 @@ dependencies = [ [[package]] name = "openvm-rv32-adapters" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -5197,7 +5197,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5220,7 +5220,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-custom-insn", "p3-field 0.1.0", @@ -5230,7 +5230,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -5246,7 +5246,7 @@ dependencies = [ [[package]] name = "openvm-sdk" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "alloy-sol-types 0.8.25", "async-trait", @@ -5302,7 +5302,7 @@ dependencies = [ [[package]] name = "openvm-sha2" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-sha256-guest", "sha2 0.10.8", @@ -5311,7 +5311,7 @@ dependencies = [ [[package]] name = "openvm-sha256-air" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-circuit-primitives", "openvm-stark-backend", @@ -5322,7 +5322,7 @@ dependencies = [ [[package]] name = "openvm-sha256-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5345,7 +5345,7 @@ dependencies = [ [[package]] name = "openvm-sha256-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-platform", ] @@ -5353,7 +5353,7 @@ dependencies = [ [[package]] name = "openvm-sha256-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -5458,7 +5458,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0#c25b262dd75694e798ab090c22f42ffc2e1002a0" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" dependencies = [ "elf", "eyre", @@ -7018,7 +7018,7 @@ dependencies = [ "cfg-if", "codspeed-criterion-compat", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?rev=c25b262dd75694e798ab090c22f42ffc2e1002a0)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1)", "kzg-rs", "libsecp256k1", "once_cell", diff --git a/Cargo.toml b/Cargo.toml index a5317cdd5..84e034c85 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -115,28 +115,28 @@ either = { version = "1.15.0", default-features = false } # openvm stark-backend openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", rev = "f48090c9febd021f8ee0349bc929a775fb1fa3ad" } # openvm -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-build = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-build = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } # openvm extensions -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } # openvm guest libs -openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0", package = "k256", default-features = false } -openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "2ba87b7425479662d901cea33e26cda67981a6b6", default-features = false } +openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1", package = "k256", default-features = false } +openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "a07b1983012e97ee21ebf0eef0d4da954d9cc2e5", default-features = false } # dev-dependencies anyhow = "1.0.89" diff --git a/crates/precompile/Cargo.toml b/crates/precompile/Cargo.toml index baec141e2..40af37fbc 100644 --- a/crates/precompile/Cargo.toml +++ b/crates/precompile/Cargo.toml @@ -118,7 +118,6 @@ c-kzg = ["dep:c-kzg"] kzg-rs = ["dep:kzg-rs"] # `openvm-kzg` can be used in place of kzg-rs for acceleration on OpenVM guest openvm-kzg = ["dep:openvm-kzg"] -# TODO: always use intrinsics openvm-kzg-intrinsics = ["openvm-kzg/use-intrinsics"] # Compile in portable mode, without ISA extensions. @@ -147,7 +146,7 @@ bn = ["dep:bn"] openvm-bn = ["dep:openvm", "openvm-ecc-guest", "openvm-pairing/bn254"] # We do NOT include `openvm-k256` because it will cause a conflict when patching k256 -openvm = ["dep:openvm", "openvm-bn", "openvm-sha2", "openvm-kzg"] +openvm = ["dep:openvm", "openvm-bn", "openvm-sha2", "openvm-kzg-intrinsics"] [[bench]] name = "bench" diff --git a/tests/openvm/programs/ec_add/Cargo.toml b/tests/openvm/programs/ec_add/Cargo.toml index 283c7ea20..cd9a89b5f 100644 --- a/tests/openvm/programs/ec_add/Cargo.toml +++ b/tests/openvm/programs/ec_add/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ec_mul/Cargo.toml b/tests/openvm/programs/ec_mul/Cargo.toml index ee5f74804..2041b7881 100644 --- a/tests/openvm/programs/ec_mul/Cargo.toml +++ b/tests/openvm/programs/ec_mul/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ecrecover/Cargo.toml b/tests/openvm/programs/ecrecover/Cargo.toml index 858149053..58240cb5e 100644 --- a/tests/openvm/programs/ecrecover/Cargo.toml +++ b/tests/openvm/programs/ecrecover/Cargo.toml @@ -5,14 +5,14 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-k256", ] } revm-primitives = { path = "../../../../crates/primitives", default-features = false } -k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +k256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } [features] default = [] diff --git a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml index b8eb9dd58..56fa33c49 100644 --- a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml +++ b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0", features = [ +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1", features = [ "bls12_381", ] } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ diff --git a/tests/openvm/programs/pairing/Cargo.toml b/tests/openvm/programs/pairing/Cargo.toml index 1d3babd40..b8ff1cbfa 100644 --- a/tests/openvm/programs/pairing/Cargo.toml +++ b/tests/openvm/programs/pairing/Cargo.toml @@ -5,8 +5,8 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/sha256/Cargo.toml b/tests/openvm/programs/sha256/Cargo.toml index 9b07d7d2c..f19ed4fb9 100644 --- a/tests/openvm/programs/sha256/Cargo.toml +++ b/tests/openvm/programs/sha256/Cargo.toml @@ -5,7 +5,7 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "c25b262dd75694e798ab090c22f42ffc2e1002a0" } +openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-sha2", ] } From 9f89009d065361f28d2984cbf50d670c7278719a Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Wed, 18 Jun 2025 14:10:32 -0700 Subject: [PATCH 5/6] chore: update openvm (#80) * chore: update openvm * fixes --- Cargo.lock | 2433 +++-------------- Cargo.toml | 42 +- crates/precompile/src/bn128/openvm.rs | 9 +- tests/openvm/Cargo.toml | 7 +- tests/openvm/programs/ec_add/Cargo.toml | 8 +- tests/openvm/programs/ec_mul/Cargo.toml | 8 +- tests/openvm/programs/ecrecover/Cargo.toml | 8 +- .../programs/kzg_point_evaluation/Cargo.toml | 8 +- tests/openvm/programs/pairing/Cargo.toml | 4 +- tests/openvm/programs/sha256/Cargo.toml | 2 +- 10 files changed, 392 insertions(+), 2137 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1aef10445..b8fa6a73c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,16 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "Inflector" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" -dependencies = [ - "lazy_static", - "regex", -] - [[package]] name = "addchain" version = "0.2.0" @@ -38,17 +28,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - [[package]] name = "ahash" version = "0.8.11" @@ -82,7 +61,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7734aecfc58a597dde036e4c5cace2ae43e2f8bf3d406b022a1ef34da178dd49" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "num_enum", "strum 0.27.1", ] @@ -94,7 +73,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b2123d190c823301be54e14a12ef10c00823d90047a140aa41650c26668d5b1" dependencies = [ "alloy-eips", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-trie", @@ -119,7 +98,7 @@ checksum = "c89b71e608e06b3d55169595c8ff39bd2177389508b0e91da8400b48d88d3afd" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "alloy-serde", "serde", @@ -131,7 +110,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "741bdd7499908b3aa0b159bba11e71c8cddd009a2c2eb7a06e825f1ec87900a5" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "crc", "serde", @@ -144,7 +123,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "serde", ] @@ -155,7 +134,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde", @@ -171,7 +150,7 @@ dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "alloy-serde", "auto_impl", @@ -182,26 +161,14 @@ dependencies = [ "sha2 0.10.8", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe6beff64ad0aa6ad1019a3db26fef565aefeb011736150ab73ed3366c3cfd1b" -dependencies = [ - "alloy-primitives 0.8.25", - "alloy-sol-type-parser 0.8.25", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-abi" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ccaa79753d7bf15f06399ea76922afbfaf8d18bebed9e8fc452984b4a90dcc9" dependencies = [ - "alloy-primitives 1.1.2", - "alloy-sol-type-parser 1.1.2", + "alloy-primitives", + "alloy-sol-type-parser", "serde", "serde_json", ] @@ -212,8 +179,8 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83498cbeb8353b78985ad6c127fc7376767c5d341e05e3f641076d61f3a78471" dependencies = [ - "alloy-primitives 1.1.2", - "alloy-sol-types 1.1.2", + "alloy-primitives", + "alloy-sol-types", "serde", "serde_json", "thiserror 2.0.12", @@ -231,12 +198,12 @@ dependencies = [ "alloy-eips", "alloy-json-rpc", "alloy-network-primitives", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rpc-types-any", "alloy-rpc-types-eth", "alloy-serde", "alloy-signer", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "async-trait", "auto_impl", "derive_more 2.0.1", @@ -254,71 +221,11 @@ checksum = "ad99d5b76aed5ed7bd752a9ef5c5e4acf74e8956df80080a492dc83e96d7067e" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-serde", "serde", ] -[[package]] -name = "alloy-primitives" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e416903084d3392ebd32d94735c395d6709415b76c7728e594d3f996f2b03e65" -dependencies = [ - "bytes", - "cfg-if", - "const-hex", - "derive_more 0.99.20", - "hex-literal 0.4.1", - "itoa", - "ruint", - "tiny-keccak", -] - -[[package]] -name = "alloy-primitives" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" -dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if", - "const-hex", - "derive_more 0.99.20", - "hex-literal 0.4.1", - "itoa", - "ruint", - "tiny-keccak", -] - -[[package]] -name = "alloy-primitives" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" -dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if", - "const-hex", - "derive_more 2.0.1", - "foldhash", - "hashbrown 0.15.2", - "indexmap 2.9.0", - "itoa", - "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "keccak-asm", - "paste", - "proptest", - "rand 0.8.5", - "ruint", - "rustc-hash 2.1.1", - "serde", - "sha3", - "tiny-keccak", -] - [[package]] name = "alloy-primitives" version = "1.1.2" @@ -344,7 +251,7 @@ dependencies = [ "proptest-derive", "rand 0.9.1", "ruint", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "sha3", "tiny-keccak", @@ -362,11 +269,11 @@ dependencies = [ "alloy-json-rpc", "alloy-network", "alloy-network-primitives", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rpc-client", "alloy-rpc-types-eth", "alloy-signer", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "alloy-transport", "alloy-transport-http", "async-stream", @@ -379,7 +286,7 @@ dependencies = [ "lru 0.13.0", "parking_lot", "pin-project", - "reqwest 0.12.15", + "reqwest", "serde", "serde_json", "thiserror 2.0.12", @@ -418,13 +325,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e59b7ec68078fcae32736052a5f56ffe1a01da267c10692757a9ae70698bb99" dependencies = [ "alloy-json-rpc", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-transport", "alloy-transport-http", "async-stream", "futures", "pin-project", - "reqwest 0.12.15", + "reqwest", "serde", "serde_json", "tokio", @@ -457,11 +364,11 @@ dependencies = [ "alloy-consensus-any", "alloy-eips", "alloy-network-primitives", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "alloy-serde", - "alloy-sol-types 1.1.2", - "itertools 0.14.0", + "alloy-sol-types", + "itertools 0.13.0", "serde", "serde_json", "thiserror 2.0.12", @@ -473,7 +380,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec9f6973e552b33c9e0733165ef3f6cea3cc70617d5768260e98a29aab5e974e" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "serde", "serde_json", ] @@ -484,7 +391,7 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "873c4e578c20af87b62b66d6f6c1cd81ab192f52515d4e63ddfecba1ac69216b" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "async-trait", "auto_impl", "either", @@ -501,7 +408,7 @@ checksum = "52bbc5479f66f49f06c91b69c4ffd33b4df3b6f286c55c2dc94fb7ac8571053a" dependencies = [ "alloy-consensus", "alloy-network", - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-signer", "async-trait", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -509,51 +416,18 @@ dependencies = [ "thiserror 2.0.12", ] -[[package]] -name = "alloy-sol-macro" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10ae8e9a91d328ae954c22542415303919aabe976fe7a92eb06db1b68fd59f2" -dependencies = [ - "alloy-sol-macro-expander 0.8.25", - "alloy-sol-macro-input 0.8.25", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.100", -] - [[package]] name = "alloy-sol-macro" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8612e0658964d616344f199ab251a49d48113992d81b92dab93ed855faa66383" dependencies = [ - "alloy-sol-macro-expander 1.1.2", - "alloy-sol-macro-input 1.1.2", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.100", -] - -[[package]] -name = "alloy-sol-macro-expander" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ad5da86c127751bc607c174d6c9fe9b85ef0889a9ca0c641735d77d4f98f26" -dependencies = [ - "alloy-json-abi 0.8.25", - "alloy-sol-macro-input 0.8.25", - "const-hex", - "heck", - "indexmap 2.9.0", + "alloy-sol-macro-expander", + "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", "syn 2.0.100", - "syn-solidity 0.8.25", - "tiny-keccak", ] [[package]] @@ -562,7 +436,7 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a384edac7283bc4c010a355fb648082860c04b826bb7a814c45263c8f304c74" dependencies = [ - "alloy-sol-macro-input 1.1.2", + "alloy-sol-macro-input", "const-hex", "heck", "indexmap 2.9.0", @@ -570,28 +444,10 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.100", - "syn-solidity 1.1.2", + "syn-solidity", "tiny-keccak", ] -[[package]] -name = "alloy-sol-macro-input" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3d30f0d3f9ba3b7686f3ff1de9ee312647aac705604417a2f40c604f409a9e" -dependencies = [ - "alloy-json-abi 0.8.25", - "const-hex", - "dunce", - "heck", - "macro-string", - "proc-macro2", - "quote", - "serde_json", - "syn 2.0.100", - "syn-solidity 0.8.25", -] - [[package]] name = "alloy-sol-macro-input" version = "1.1.2" @@ -605,17 +461,7 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.100", - "syn-solidity 1.1.2", -] - -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d162f8524adfdfb0e4bd0505c734c985f3e2474eb022af32eef0d52a4f3935c" -dependencies = [ - "serde", - "winnow 0.7.10", + "syn-solidity", ] [[package]] @@ -625,20 +471,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e86ddeb70792c7ceaad23e57d52250107ebbb86733e52f4a25d8dc1abc931837" dependencies = [ "serde", - "winnow 0.7.10", -] - -[[package]] -name = "alloy-sol-types" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d43d5e60466a440230c07761aa67671d4719d46f43be8ea6e7ed334d8db4a9ab" -dependencies = [ - "alloy-json-abi 0.8.25", - "alloy-primitives 0.8.25", - "alloy-sol-macro 0.8.25", - "const-hex", - "serde", + "winnow", ] [[package]] @@ -647,9 +480,9 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "584cb97bfc5746cb9dcc4def77da11694b5d6d7339be91b7480a6a68dc129387" dependencies = [ - "alloy-json-abi 1.1.2", - "alloy-primitives 1.1.2", - "alloy-sol-macro 1.1.2", + "alloy-json-abi", + "alloy-primitives", + "alloy-sol-macro", "serde", ] @@ -660,8 +493,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db88a480955a3a1a6dbcd51076b03f522c64fb4ecb74545c4d38b0ca58d9fbe6" dependencies = [ "alloy-json-rpc", - "alloy-primitives 1.1.2", - "base64 0.22.1", + "alloy-primitives", + "base64", "derive_more 2.0.1", "futures", "futures-utils-wasm", @@ -684,7 +517,7 @@ checksum = "1ba0d8eace41128b4dbf87adff5d63347b8004977aa7f9c62b63308539dd2a29" dependencies = [ "alloy-json-rpc", "alloy-transport", - "reqwest 0.12.15", + "reqwest", "serde_json", "tower", "tracing", @@ -697,7 +530,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "983d99aa81f586cef9dae38443245e585840fcf0fc58b09aee0b1f27aed1d500" dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "alloy-rlp", "arrayvec", "derive_more 2.0.1", @@ -799,16 +632,6 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -[[package]] -name = "ariadne" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "367fd0ad87307588d087544707bc5fbf4805ded96c7db922b70d368fa1cb5702" -dependencies = [ - "unicode-width 0.1.14", - "yansi 0.5.1", -] - [[package]] name = "ark-bls12-381" version = "0.5.0" @@ -1114,15 +937,6 @@ dependencies = [ "serde", ] -[[package]] -name = "ascii-canvas" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" -dependencies = [ - "term", -] - [[package]] name = "async-stream" version = "0.3.6" @@ -1156,15 +970,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "atomic" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" -dependencies = [ - "bytemuck", -] - [[package]] name = "aurora-engine-modexp" version = "1.2.0" @@ -1214,12 +1019,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - [[package]] name = "base64" version = "0.22.1" @@ -1241,30 +1040,15 @@ dependencies = [ "serde", ] -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec 0.6.3", -] - [[package]] name = "bit-set" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "bit-vec 0.8.0", + "bit-vec", ] -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - [[package]] name = "bit-vec" version = "0.8.0" @@ -1311,12 +1095,6 @@ dependencies = [ "hex-conservative", ] -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - [[package]] name = "bitflags" version = "2.9.0" @@ -1356,7 +1134,7 @@ checksum = "06e903a20b159e944f91ec8499fe1e55651480c541ea0a584f5d967c49ad9d99" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq 0.3.1", + "constant_time_eq", ] [[package]] @@ -1369,7 +1147,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq 0.3.1", + "constant_time_eq", ] [[package]] @@ -1453,22 +1231,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "bstr" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "build_const" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7" - [[package]] name = "bumpalo" version = "3.17.0" @@ -1502,26 +1264,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" -dependencies = [ - "cc", - "pkg-config", -] - [[package]] name = "c-kzg" version = "2.1.1" @@ -1581,8 +1323,6 @@ version = "1.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e3a13707ac958681c13b39b458c073d0d9bc8a22cb1b2f4c8e55eb72c13f362" dependencies = [ - "jobserver", - "libc", "shlex", ] @@ -1632,16 +1372,6 @@ dependencies = [ "half", ] -[[package]] -name = "cipher" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", -] - [[package]] name = "clap" version = "4.5.37" @@ -1746,7 +1476,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -1758,7 +1488,7 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width 0.2.0", + "unicode-width", "windows-sys 0.59.0", ] @@ -1801,12 +1531,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "constant_time_eq" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" - [[package]] name = "constant_time_eq" version = "0.3.1" @@ -1859,15 +1583,6 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - [[package]] name = "criterion-plot" version = "0.5.0" @@ -1878,28 +1593,6 @@ dependencies = [ "itertools 0.10.5", ] -[[package]] -name = "crossbeam" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" -dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-epoch", - "crossbeam-queue", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-channel" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -1919,15 +1612,6 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "crossbeam-queue" -version = "0.3.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-utils" version = "0.8.21" @@ -2163,67 +1847,25 @@ dependencies = [ ] [[package]] -name = "dirs" -version = "5.0.1" +name = "displaydoc" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ - "dirs-sys", + "proc-macro2", + "quote", + "syn 2.0.100", ] [[package]] -name = "dirs-next" -version = "2.0.0" +name = "downcast-rs" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" -dependencies = [ - "cfg-if", - "dirs-sys-next", -] +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - -[[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", -] - -[[package]] -name = "downcast-rs" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" - -[[package]] -name = "dunce" -version = "1.0.5" +name = "dunce" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" @@ -2289,30 +1931,12 @@ dependencies = [ "zeroize", ] -[[package]] -name = "ena" -version = "0.14.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" -dependencies = [ - "log", -] - [[package]] name = "encode_unicode" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" -[[package]] -name = "encoding_rs" -version = "0.8.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" -dependencies = [ - "cfg-if", -] - [[package]] name = "endian-type" version = "0.1.2" @@ -2351,17 +1975,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "enumn" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", -] - [[package]] name = "equivalent" version = "1.0.2" @@ -2375,133 +1988,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" dependencies = [ "libc", - "windows-sys 0.59.0", -] - -[[package]] -name = "ethabi" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" -dependencies = [ - "ethereum-types", - "hex", - "once_cell", - "regex", - "serde", - "serde_json", - "sha3", - "thiserror 1.0.69", - "uint", -] - -[[package]] -name = "ethbloom" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" -dependencies = [ - "crunchy", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "tiny-keccak", -] - -[[package]] -name = "ethereum-types" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" -dependencies = [ - "ethbloom", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "primitive-types", - "scale-info", - "uint", -] - -[[package]] -name = "ethers-core" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" -dependencies = [ - "arrayvec", - "bytes", - "chrono", - "const-hex", - "elliptic-curve", - "ethabi", - "generic-array", - "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "num_enum", - "open-fastrlp", - "rand 0.8.5", - "rlp", - "serde", - "serde_json", - "strum 0.26.3", - "tempfile", - "thiserror 1.0.69", - "tiny-keccak", - "unicode-xid", -] - -[[package]] -name = "ethers-etherscan" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" -dependencies = [ - "chrono", - "ethers-core", - "reqwest 0.11.27", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", -] - -[[package]] -name = "ethers-solc" -version = "2.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de34e484e7ae3cab99fbfd013d6c5dc7f9013676a4e0e414d8b12e1213e8b3ba" -dependencies = [ - "cfg-if", - "const-hex", - "dirs", - "dunce", - "ethers-core", - "futures-util", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.8", - "solang-parser", - "svm-rs", - "svm-rs-builds", - "thiserror 1.0.69", - "tiny-keccak", - "tokio", - "tracing", - "walkdir", - "yansi 0.5.1", + "windows-sys 0.52.0", ] [[package]] @@ -2513,7 +2000,7 @@ dependencies = [ "alloy-provider", "anyhow", "indicatif", - "revm 24.0.1", + "revm", "tokio", ] @@ -2522,7 +2009,7 @@ name = "example-cheatcode-inspector" version = "0.0.0" dependencies = [ "anyhow", - "revm 24.0.1", + "revm", ] [[package]] @@ -2530,14 +2017,14 @@ name = "example-contract-deployment" version = "0.0.0" dependencies = [ "anyhow", - "revm 24.0.1", + "revm", ] [[package]] name = "example-custom-opcodes" version = "0.0.0" dependencies = [ - "revm 24.0.1", + "revm", ] [[package]] @@ -2545,7 +2032,7 @@ name = "example-database-components" version = "0.0.0" dependencies = [ "auto_impl", - "revm 24.0.1", + "revm", "thiserror 2.0.12", ] @@ -2554,9 +2041,9 @@ name = "example-erc20-gas" version = "0.0.0" dependencies = [ "alloy-provider", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "anyhow", - "revm 24.0.1", + "revm", "tokio", ] @@ -2564,7 +2051,7 @@ dependencies = [ name = "example-my-evm" version = "0.0.0" dependencies = [ - "revm 24.0.1", + "revm", ] [[package]] @@ -2573,9 +2060,9 @@ version = "0.0.0" dependencies = [ "alloy-eips", "alloy-provider", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "anyhow", - "revm 24.0.1", + "revm", "tokio", ] @@ -2585,9 +2072,9 @@ version = "0.0.0" dependencies = [ "alloy-eips", "alloy-provider", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "anyhow", - "revm 24.0.1", + "revm", "tokio", ] @@ -2668,20 +2155,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "figment" -version = "0.10.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" -dependencies = [ - "atomic", - "pear", - "serde", - "toml 0.8.23", - "uncased", - "version_check", -] - [[package]] name = "fixed-hash" version = "0.8.0" @@ -2694,22 +2167,6 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "fixedbitset" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" - -[[package]] -name = "flate2" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - [[package]] name = "fnv" version = "1.0.7" @@ -2737,21 +2194,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" -[[package]] -name = "forge-fmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac0b82597ff80bc12b3b001dfb968769c345e353650dd32d337f2c64d2167c88" -dependencies = [ - "alloy-primitives 0.3.3", - "ariadne", - "foundry-config", - "itertools 0.11.0", - "solang-parser", - "thiserror 1.0.69", - "tracing", -] - [[package]] name = "form_urlencoded" version = "1.2.1" @@ -2761,48 +2203,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "foundry-config" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a64a9bdad47eb4d950523b8ff14e675db8f2226a2aef79063d9344449b3abd5" -dependencies = [ - "Inflector", - "dirs-next", - "ethers-core", - "ethers-etherscan", - "ethers-solc", - "eyre", - "figment", - "globset", - "number_prefix", - "once_cell", - "open-fastrlp", - "path-slash", - "regex", - "reqwest 0.11.27", - "revm-primitives 1.3.0", - "semver 1.0.26", - "serde", - "serde_json", - "serde_regex", - "thiserror 1.0.69", - "toml 0.7.8", - "toml_edit 0.19.15", - "tracing", - "walkdir", -] - -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "funty" version = "2.0.0" @@ -2980,19 +2380,6 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" -[[package]] -name = "globset" -version = "0.4.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a1028dfc5f5df5da8a56a73e6c153c9a9708ec57232470703592a3f18e49f5" -dependencies = [ - "aho-corasick", - "bstr", - "log", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - [[package]] name = "group" version = "0.12.1" @@ -3016,25 +2403,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "h2" -version = "0.3.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap 2.9.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - [[package]] name = "half" version = "2.6.0" @@ -3054,69 +2422,6 @@ dependencies = [ "halo2_proofs", ] -[[package]] -name = "halo2-axiom" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f0ca78d12ac5c893f286d7cdfe3869290305ab8cac376e2592cdc8396da102" -dependencies = [ - "blake2b_simd", - "crossbeam", - "ff 0.13.1", - "group 0.13.0", - "halo2curves-axiom", - "itertools 0.11.0", - "maybe-rayon", - "pairing 0.23.0", - "rand 0.8.5", - "rand_core 0.6.4", - "rayon", - "rustc-hash 1.1.0", - "sha3", - "tracing", -] - -[[package]] -name = "halo2-base" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678cf3adc0a39d7b4d9b82315a655201aa24a430dd1902b162c508047f56ac69" -dependencies = [ - "getset", - "halo2-axiom", - "itertools 0.11.0", - "log", - "num-bigint 0.4.6", - "num-integer", - "num-traits", - "poseidon-primitives", - "rand_chacha 0.3.1", - "rayon", - "rustc-hash 1.1.0", - "serde", - "serde_json", -] - -[[package]] -name = "halo2-ecc" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c00681fdd1febaf552d8814e9f5a6a142d81a1514102190da07039588b366" -dependencies = [ - "halo2-base", - "itertools 0.11.0", - "num-bigint 0.4.6", - "num-integer", - "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", - "rand_core 0.6.4", - "rayon", - "serde", - "serde_json", - "test-case", -] - [[package]] name = "halo2_proofs" version = "0.1.0" @@ -3221,7 +2526,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", - "allocator-api2", ] [[package]] @@ -3293,26 +2597,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - [[package]] name = "http" version = "1.3.1" @@ -3324,17 +2608,6 @@ dependencies = [ "itoa", ] -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", -] - [[package]] name = "http-body" version = "1.0.1" @@ -3342,7 +2615,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.3.1", + "http", ] [[package]] @@ -3353,8 +2626,8 @@ checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ "bytes", "futures-core", - "http 1.3.1", - "http-body 1.0.1", + "http", + "http-body", "pin-project-lite", ] @@ -3364,36 +2637,6 @@ version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "hyper" -version = "0.14.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - [[package]] name = "hyper" version = "1.6.0" @@ -3403,8 +2646,8 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.3.1", - "http-body 1.0.1", + "http", + "http-body", "httparse", "itoa", "pin-project-lite", @@ -3413,20 +2656,6 @@ dependencies = [ "want", ] -[[package]] -name = "hyper-rustls" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" -dependencies = [ - "futures-util", - "http 0.2.12", - "hyper 0.14.32", - "rustls", - "tokio", - "tokio-rustls", -] - [[package]] name = "hyper-tls" version = "0.6.0" @@ -3435,7 +2664,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.6.0", + "hyper", "hyper-util", "native-tls", "tokio", @@ -3452,9 +2681,9 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "hyper 1.6.0", + "http", + "http-body", + "hyper", "libc", "pin-project-lite", "socket2", @@ -3641,24 +2870,6 @@ dependencies = [ "parity-scale-codec", ] -[[package]] -name = "impl-rlp" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" -dependencies = [ - "rlp", -] - -[[package]] -name = "impl-serde" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" -dependencies = [ - "serde", -] - [[package]] name = "impl-trait-for-tuples" version = "0.2.3" @@ -3708,25 +2919,10 @@ dependencies = [ "console", "number_prefix", "portable-atomic", - "unicode-width 0.2.0", + "unicode-width", "web-time", ] -[[package]] -name = "inlinable_string" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" - -[[package]] -name = "inout" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" -dependencies = [ - "generic-array", -] - [[package]] name = "ipnet" version = "2.11.0" @@ -3741,7 +2937,7 @@ checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ "hermit-abi 0.5.0", "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -3759,15 +2955,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - [[package]] name = "itertools" version = "0.12.1" @@ -3801,16 +2988,6 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" -[[package]] -name = "jobserver" -version = "0.1.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" -dependencies = [ - "getrandom 0.3.2", - "libc", -] - [[package]] name = "js-sys" version = "0.3.77" @@ -3852,7 +3029,7 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "ecdsa", "elliptic-curve", @@ -3900,36 +3077,6 @@ dependencies = [ "spin 0.9.8", ] -[[package]] -name = "lalrpop" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" -dependencies = [ - "ascii-canvas", - "bit-set 0.5.3", - "ena", - "itertools 0.11.0", - "lalrpop-util", - "petgraph", - "regex", - "regex-syntax 0.8.5", - "string_cache", - "term", - "tiny-keccak", - "unicode-xid", - "walkdir", -] - -[[package]] -name = "lalrpop-util" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" -dependencies = [ - "regex-automata 0.4.9", -] - [[package]] name = "lazy_static" version = "1.5.0" @@ -3951,16 +3098,6 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.9.0", - "libc", -] - [[package]] name = "libsecp256k1" version = "0.7.2" @@ -3968,7 +3105,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" dependencies = [ "arrayref", - "base64 0.22.1", + "base64", "digest 0.9.0", "libsecp256k1-core", "libsecp256k1-gen-ecmult", @@ -4079,26 +3216,6 @@ dependencies = [ "regex-automata 0.1.10", ] -[[package]] -name = "maybe-rayon" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" -dependencies = [ - "cfg-if", - "rayon", -] - -[[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest 0.10.7", -] - [[package]] name = "memchr" version = "2.7.4" @@ -4200,12 +3317,6 @@ dependencies = [ "tempfile", ] -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - [[package]] name = "nibble_vec" version = "0.1.0" @@ -4432,11 +3543,11 @@ checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" name = "op-revm" version = "5.0.1" dependencies = [ - "alloy-primitives 1.1.2", - "alloy-sol-types 1.1.2", + "alloy-primitives", + "alloy-sol-types", "auto_impl", "once_cell", - "revm 24.0.1", + "revm", "rstest", "serde", "serde_json", @@ -4449,38 +3560,13 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" -[[package]] -name = "open-fastrlp" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" -dependencies = [ - "arrayvec", - "auto_impl", - "bytes", - "ethereum-types", - "open-fastrlp-derive", -] - -[[package]] -name = "open-fastrlp-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" -dependencies = [ - "bytes", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "openssl" version = "0.10.72" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" dependencies = [ - "bitflags 2.9.0", + "bitflags", "cfg-if", "foreign-types", "libc", @@ -4521,7 +3607,7 @@ dependencies = [ [[package]] name = "openvm" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "bytemuck", "getrandom 0.3.2", @@ -4535,7 +3621,7 @@ dependencies = [ [[package]] name = "openvm-algebra-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4552,8 +3638,8 @@ dependencies = [ "openvm-mod-circuit-builder", "openvm-rv32-adapters", "openvm-rv32im-circuit", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "serde-big-array", @@ -4564,7 +3650,7 @@ dependencies = [ [[package]] name = "openvm-algebra-complex-macros" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-macros-common", "quote", @@ -4574,7 +3660,7 @@ dependencies = [ [[package]] name = "openvm-algebra-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "halo2curves-axiom", "num-bigint 0.4.6", @@ -4590,7 +3676,7 @@ dependencies = [ [[package]] name = "openvm-algebra-moduli-macros" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "num-bigint 0.4.6", "num-prime", @@ -4602,12 +3688,12 @@ dependencies = [ [[package]] name = "openvm-algebra-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-algebra-guest", "openvm-instructions", "openvm-instructions-derive", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4616,7 +3702,7 @@ dependencies = [ [[package]] name = "openvm-bigint-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4629,8 +3715,8 @@ dependencies = [ "openvm-rv32-adapters", "openvm-rv32im-circuit", "openvm-rv32im-transpiler", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", ] @@ -4638,7 +3724,7 @@ dependencies = [ [[package]] name = "openvm-bigint-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-platform", "strum_macros 0.26.4", @@ -4647,13 +3733,13 @@ dependencies = [ [[package]] name = "openvm-bigint-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-bigint-guest", "openvm-instructions", "openvm-instructions-derive", "openvm-rv32im-transpiler", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4662,7 +3748,7 @@ dependencies = [ [[package]] name = "openvm-build" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "cargo_metadata", "eyre", @@ -4674,7 +3760,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "backtrace", "cfg-if", @@ -4690,11 +3776,11 @@ dependencies = [ "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-poseidon2-air", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "p3-baby-bear 0.1.0", "rand 0.8.5", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "serde-big-array", "static_assertions", @@ -4705,7 +3791,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "itertools 0.14.0", "quote", @@ -4715,14 +3801,14 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", "num-bigint 0.4.6", "num-traits", "openvm-circuit-primitives-derive", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "tracing", ] @@ -4730,7 +3816,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "itertools 0.14.0", "quote", @@ -4740,14 +3826,14 @@ dependencies = [ [[package]] name = "openvm-continuations" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derivative", "openvm-circuit", "openvm-native-compiler", "openvm-native-recursion", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "serde", "static_assertions", ] @@ -4755,7 +3841,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "proc-macro2", "quote", @@ -4765,15 +3851,13 @@ dependencies = [ [[package]] name = "openvm-ecc-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", - "eyre", "hex-literal 0.4.1", "lazy_static", "num-bigint 0.4.6", - "num-integer", "num-traits", "once_cell", "openvm-algebra-circuit", @@ -4786,7 +3870,7 @@ dependencies = [ "openvm-mod-circuit-builder", "openvm-rv32-adapters", "openvm-rv32im-circuit", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "serde", "serde_with", "strum 0.26.3", @@ -4795,7 +3879,7 @@ dependencies = [ [[package]] name = "openvm-ecc-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "ecdsa", "elliptic-curve", @@ -4814,7 +3898,7 @@ dependencies = [ [[package]] name = "openvm-ecc-sw-macros" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-macros-common", "quote", @@ -4824,12 +3908,12 @@ dependencies = [ [[package]] name = "openvm-ecc-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-ecc-guest", "openvm-instructions", "openvm-instructions-derive", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4838,7 +3922,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -4846,7 +3930,7 @@ dependencies = [ "num-bigint 0.4.6", "num-traits", "openvm-instructions-derive", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "serde", "strum 0.26.3", "strum_macros 0.26.4", @@ -4855,7 +3939,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "quote", "syn 2.0.100", @@ -4864,7 +3948,7 @@ dependencies = [ [[package]] name = "openvm-keccak256" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-keccak256-guest", "tiny-keccak", @@ -4873,7 +3957,7 @@ dependencies = [ [[package]] name = "openvm-keccak256-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4885,8 +3969,8 @@ dependencies = [ "openvm-instructions", "openvm-keccak256-transpiler", "openvm-rv32im-circuit", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "p3-keccak-air", "rand 0.8.5", "serde", @@ -4899,7 +3983,7 @@ dependencies = [ [[package]] name = "openvm-keccak256-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-platform", ] @@ -4907,12 +3991,12 @@ dependencies = [ [[package]] name = "openvm-keccak256-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-keccak256-guest", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4921,7 +4005,7 @@ dependencies = [ [[package]] name = "openvm-kzg" version = "0.1.0-alpha" -source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=a07b1983012e97ee21ebf0eef0d4da954d9cc2e5#a07b1983012e97ee21ebf0eef0d4da954d9cc2e5" +source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=56751b25b4f18ba9988355faa288918db0ab3fde#56751b25b4f18ba9988355faa288918db0ab3fde" dependencies = [ "bls12_381 0.8.0", "hex", @@ -4937,7 +4021,7 @@ dependencies = [ [[package]] name = "openvm-macros-common" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "syn 2.0.100", ] @@ -4945,7 +4029,7 @@ dependencies = [ [[package]] name = "openvm-mod-circuit-builder" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "itertools 0.14.0", "num-bigint 0.4.6", @@ -4953,8 +4037,8 @@ dependencies = [ "openvm-circuit", "openvm-circuit-primitives", "openvm-instructions", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "serde_with", @@ -4964,7 +4048,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4978,8 +4062,8 @@ dependencies = [ "openvm-native-compiler", "openvm-poseidon2-air", "openvm-rv32im-circuit", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "serde-big-array", @@ -4991,7 +4075,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "backtrace", "itertools 0.14.0", @@ -5002,10 +4086,9 @@ dependencies = [ "openvm-instructions-derive", "openvm-native-compiler-derive", "openvm-rv32im-transpiler", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "serde", - "snark-verifier-sdk", "strum 0.26.3", "strum_macros 0.26.4", "zkhash", @@ -5014,7 +4097,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "quote", "syn 2.0.100", @@ -5023,18 +4106,17 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "cfg-if", "itertools 0.14.0", "lazy_static", - "once_cell", "openvm-circuit", "openvm-native-circuit", "openvm-native-compiler", "openvm-native-compiler-derive", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "p3-dft 0.1.0", "p3-fri", "p3-merkle-tree", @@ -5042,15 +4124,13 @@ dependencies = [ "rand 0.8.5", "serde", "serde_json", - "serde_with", - "snark-verifier-sdk", "tracing", ] [[package]] name = "openvm-native-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-instructions", "openvm-transpiler", @@ -5060,7 +4140,7 @@ dependencies = [ [[package]] name = "openvm-pairing" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "group 0.13.0", "hex-literal 0.4.1", @@ -5084,7 +4164,7 @@ dependencies = [ [[package]] name = "openvm-pairing-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5106,7 +4186,7 @@ dependencies = [ "openvm-pairing-transpiler", "openvm-rv32-adapters", "openvm-rv32im-circuit", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "strum 0.26.3", @@ -5115,7 +4195,7 @@ dependencies = [ [[package]] name = "openvm-pairing-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "halo2curves-axiom", "hex-literal 0.4.1", @@ -5136,12 +4216,12 @@ dependencies = [ [[package]] name = "openvm-pairing-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-pairing-guest", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -5150,7 +4230,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "libm", "openvm-custom-insn", @@ -5160,12 +4240,12 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derivative", "lazy_static", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "p3-monty-31", "p3-poseidon2 0.1.0", "p3-poseidon2-air", @@ -5177,7 +4257,7 @@ dependencies = [ [[package]] name = "openvm-rv32-adapters" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -5186,8 +4266,8 @@ dependencies = [ "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-rv32im-circuit", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "serde-big-array", @@ -5197,7 +4277,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5210,7 +4290,7 @@ dependencies = [ "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-rv32im-transpiler", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "serde-big-array", @@ -5220,7 +4300,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-custom-insn", "p3-field 0.1.0", @@ -5230,12 +4310,12 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-rv32im-guest", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "serde", @@ -5246,9 +4326,8 @@ dependencies = [ [[package]] name = "openvm-sdk" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ - "alloy-sol-types 0.8.25", "async-trait", "bitcode", "bon", @@ -5256,7 +4335,6 @@ dependencies = [ "derivative", "derive_more 1.0.0", "eyre", - "forge-fmt", "getset", "hex", "itertools 0.14.0", @@ -5284,16 +4362,14 @@ dependencies = [ "openvm-rv32im-transpiler", "openvm-sha256-circuit", "openvm-sha256-transpiler", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "p3-fri", "rrs-lib", "serde", "serde_json", "serde_with", - "snark-verifier", - "snark-verifier-sdk", "tempfile", "thiserror 1.0.69", "tracing", @@ -5302,7 +4378,7 @@ dependencies = [ [[package]] name = "openvm-sha2" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-sha256-guest", "sha2 0.10.8", @@ -5311,10 +4387,10 @@ dependencies = [ [[package]] name = "openvm-sha256-air" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-circuit-primitives", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "sha2 0.10.8", ] @@ -5322,7 +4398,7 @@ dependencies = [ [[package]] name = "openvm-sha256-circuit" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -5334,8 +4410,8 @@ dependencies = [ "openvm-rv32im-circuit", "openvm-sha256-air", "openvm-sha256-transpiler", - "openvm-stark-backend", - "openvm-stark-sdk", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rand 0.8.5", "serde", "sha2 0.10.8", @@ -5345,7 +4421,7 @@ dependencies = [ [[package]] name = "openvm-sha256-guest" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-platform", ] @@ -5353,17 +4429,42 @@ dependencies = [ [[package]] name = "openvm-sha256-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-sha256-guest", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "openvm-transpiler", "rrs-lib", "strum 0.26.3", ] +[[package]] +name = "openvm-stark-backend" +version = "1.1.1" +source = "git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1#0879de162658b797b8dd6b6ee4429cbb8dd78ba1" +dependencies = [ + "bitcode", + "cfg-if", + "derivative", + "derive-new 0.7.0", + "itertools 0.14.0", + "p3-air", + "p3-challenger", + "p3-commit", + "p3-field 0.1.0", + "p3-matrix 0.1.0", + "p3-maybe-rayon 0.1.0", + "p3-uni-stark", + "p3-util 0.1.0", + "rayon", + "rustc-hash", + "serde", + "thiserror 1.0.69", + "tracing", +] + [[package]] name = "openvm-stark-backend" version = "1.1.1" @@ -5383,13 +4484,49 @@ dependencies = [ "p3-uni-stark", "p3-util 0.1.0", "rayon", - "rustc-hash 2.1.1", + "rustc-hash", "serde", "thiserror 1.0.69", "tikv-jemallocator", "tracing", ] +[[package]] +name = "openvm-stark-sdk" +version = "1.1.1" +source = "git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1#0879de162658b797b8dd6b6ee4429cbb8dd78ba1" +dependencies = [ + "derivative", + "derive_more 0.99.20", + "ff 0.13.1", + "itertools 0.14.0", + "metrics", + "metrics-tracing-context", + "metrics-util", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1)", + "p3-baby-bear 0.1.0", + "p3-blake3", + "p3-bn254-fr", + "p3-dft 0.1.0", + "p3-fri", + "p3-goldilocks", + "p3-keccak", + "p3-koala-bear", + "p3-merkle-tree", + "p3-poseidon", + "p3-poseidon2 0.1.0", + "p3-symmetric 0.1.0", + "rand 0.8.5", + "serde", + "serde_json", + "static_assertions", + "toml", + "tracing", + "tracing-forest", + "tracing-subscriber 0.3.19", + "zkhash", +] + [[package]] name = "openvm-stark-sdk" version = "1.1.1" @@ -5402,7 +4539,7 @@ dependencies = [ "metrics", "metrics-tracing-context", "metrics-util", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "p3-baby-bear 0.1.0", "p3-blake3", "p3-bn254-fr", @@ -5419,7 +4556,7 @@ dependencies = [ "serde", "serde_json", "static_assertions", - "toml 0.8.23", + "toml", "tracing", "tracing-forest", "tracing-subscriber 0.3.19", @@ -5446,35 +4583,29 @@ dependencies = [ "openvm-pairing-transpiler", "openvm-rv32im-transpiler", "openvm-sdk", - "openvm-stark-sdk", + "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1)", "openvm-transpiler", "rand 0.8.5", - "revm-primitives 19.1.0", + "revm-primitives", "secp256k1", "sha2 0.10.8", - "toml 0.8.23", + "toml", ] [[package]] name = "openvm-transpiler" version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1#152b6b6c85eda34b367ec261f2f65b0457b9b2d9" +source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" dependencies = [ "elf", "eyre", "openvm-instructions", "openvm-platform", - "openvm-stark-backend", + "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", "rrs-lib", "thiserror 1.0.69", ] -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - [[package]] name = "ordered-float" version = "4.6.0" @@ -6024,17 +5155,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "pasta_curves" version = "0.4.1" @@ -6071,47 +5191,6 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest 0.10.7", - "hmac", - "password-hash", - "sha2 0.10.8", -] - -[[package]] -name = "pear" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" -dependencies = [ - "inlinable_string", - "pear_codegen", - "yansi 1.0.1", -] - -[[package]] -name = "pear_codegen" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" -dependencies = [ - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.100", -] - [[package]] name = "percent-encoding" version = "2.3.1" @@ -6129,16 +5208,6 @@ dependencies = [ "ucd-trie", ] -[[package]] -name = "petgraph" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" -dependencies = [ - "fixedbitset", - "indexmap 2.9.0", -] - [[package]] name = "phf" version = "0.11.3" @@ -6273,21 +5342,6 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" -[[package]] -name = "poseidon-primitives" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e4aaeda7a092e21165cc5f0cbc738e72a46f31c03c3cbd87b71ceae9d2d93bc" -dependencies = [ - "bitvec", - "ff 0.13.1", - "lazy_static", - "log", - "rand 0.8.5", - "rand_xorshift", - "thiserror 1.0.69", -] - [[package]] name = "powerfmt" version = "0.2.0" @@ -6303,12 +5357,6 @@ dependencies = [ "zerocopy 0.8.24", ] -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - [[package]] name = "prettyplease" version = "0.2.33" @@ -6336,9 +5384,6 @@ checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", "uint", ] @@ -6348,7 +5393,7 @@ version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" dependencies = [ - "toml_edit 0.22.27", + "toml_edit", ] [[package]] @@ -6382,28 +5427,15 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", - "version_check", - "yansi 1.0.1", -] - [[package]] name = "proptest" version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ - "bit-set 0.8.0", - "bit-vec 0.8.0", - "bitflags 2.9.0", + "bit-set", + "bit-vec", + "bitflags", "lazy_static", "num-traits", "rand 0.8.5", @@ -6555,7 +5587,7 @@ version = "11.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" dependencies = [ - "bitflags 2.9.0", + "bitflags", ] [[package]] @@ -6584,18 +5616,7 @@ version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" dependencies = [ - "bitflags 2.9.0", -] - -[[package]] -name = "redox_users" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" -dependencies = [ - "getrandom 0.2.15", - "libredox", - "thiserror 1.0.69", + "bitflags", ] [[package]] @@ -6648,61 +5669,20 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" -[[package]] -name = "reqwest" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" -dependencies = [ - "base64 0.21.7", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.32", - "hyper-rustls", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls", - "rustls-pemfile 1.0.4", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 0.1.2", - "system-configuration", - "tokio", - "tokio-rustls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots", - "winreg", -] - [[package]] name = "reqwest" version = "0.12.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" dependencies = [ - "base64 0.22.1", + "base64", "bytes", "futures-core", "futures-util", - "http 1.3.1", - "http-body 1.0.1", + "http", + "http-body", "http-body-util", - "hyper 1.6.0", + "hyper", "hyper-tls", "hyper-util", "ipnet", @@ -6713,56 +5693,37 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls-pemfile 2.2.0", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.2", + "sync_wrapper", "tokio", "tokio-native-tls", "tower", "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "windows-registry", -] - -[[package]] -name = "revm" -version = "24.0.1" -dependencies = [ - "revm-bytecode 4.0.1", - "revm-context 5.0.1", - "revm-context-interface 5.0.0", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-handler 5.0.1", - "revm-inspector 5.0.1", - "revm-interpreter 20.0.0", - "revm-precompile 21.0.0", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows-registry", ] [[package]] name = "revm" version = "24.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d277408ff8d6f747665ad9e52150ab4caf8d5eaf0d787614cf84633c8337b4" dependencies = [ - "revm-bytecode 4.1.0", - "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-handler 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-inspector 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-precompile 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", ] [[package]] @@ -6773,20 +5734,7 @@ dependencies = [ "once_cell", "paste", "phf", - "revm-primitives 19.1.0", - "serde", -] - -[[package]] -name = "revm-bytecode" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942fe4724cf552fd28db6b0a2ca5b79e884d40dd8288a4027ed1e9090e0c6f49" -dependencies = [ - "bitvec", - "once_cell", - "phf", - "revm-primitives 19.2.0", + "revm-primitives", "serde", ] @@ -6796,58 +5744,26 @@ version = "5.0.1" dependencies = [ "cfg-if", "derive-where", - "revm-bytecode 4.0.1", - "revm-context-interface 5.0.0", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-primitives 19.1.0", - "revm-state 4.0.1", - "serde", -] - -[[package]] -name = "revm-context" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b01aad49e1233f94cebda48a4e5cef022f7c7ed29b4edf0d202b081af23435ef" -dependencies = [ - "cfg-if", - "derive-where", - "revm-bytecode 4.1.0", - "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - -[[package]] -name = "revm-context-interface" -version = "5.0.0" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "auto_impl", - "either", - "revm-database-interface 4.0.1", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "revm-bytecode", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-primitives", + "revm-state", "serde", ] [[package]] name = "revm-context-interface" version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b844f48a411e62c7dde0f757bf5cce49c85b86d6fc1d3b2722c07f2bec4c3ce" dependencies = [ "alloy-eip2930", "alloy-eip7702", "auto_impl", "either", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-database-interface", + "revm-primitives", + "revm-state", "serde", ] @@ -6859,55 +5775,29 @@ dependencies = [ "alloy-provider", "alloy-transport", "anyhow", - "revm-bytecode 4.0.1", - "revm-database-interface 4.0.1", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", "rstest", "serde", "serde_json", "tokio", ] -[[package]] -name = "revm-database" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad3fbe34f6bb00a9c3155723b3718b9cb9f17066ba38f9eb101b678cd3626775" -dependencies = [ - "alloy-eips", - "revm-bytecode 4.1.0", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - [[package]] name = "revm-database-interface" version = "4.0.1" dependencies = [ "anyhow", "auto_impl", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "revm-primitives", + "revm-state", "rstest", "serde", "tokio", ] -[[package]] -name = "revm-database-interface" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b8acd36784a6d95d5b9e1b7be3ce014f1e759abb59df1fa08396b30f71adc2a" -dependencies = [ - "auto_impl", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - [[package]] name = "revm-handler" version = "5.0.1" @@ -6917,65 +5807,30 @@ dependencies = [ "alloy-signer", "alloy-signer-local", "auto_impl", - "revm-bytecode 4.0.1", - "revm-context 5.0.1", - "revm-context-interface 5.0.0", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-interpreter 20.0.0", - "revm-precompile 21.0.0", - "revm-primitives 19.1.0", - "revm-state 4.0.1", - "serde", -] - -[[package]] -name = "revm-handler" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "481e8c3290ff4fa1c066592fdfeb2b172edfd14d12e6cade6f6f5588cad9359a" -dependencies = [ - "auto_impl", - "revm-bytecode 4.1.0", - "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-precompile 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", -] - -[[package]] -name = "revm-inspector" -version = "5.0.1" -dependencies = [ - "auto_impl", - "revm-context 5.0.1", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-handler 5.0.1", - "revm-interpreter 20.0.0", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", "serde", - "serde_json", ] [[package]] name = "revm-inspector" version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc1167ef8937d8867888e63581d8ece729a72073d322119ef4627d813d99ecb" dependencies = [ "auto_impl", - "revm-context 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-database-interface 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-handler 5.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-interpreter 20.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", - "revm-state 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-context", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-interpreter", + "revm-primitives", + "revm-state", "serde", "serde_json", ] @@ -6985,21 +5840,9 @@ name = "revm-interpreter" version = "20.0.0" dependencies = [ "bincode", - "revm-bytecode 4.0.1", - "revm-context-interface 5.0.0", - "revm-primitives 19.1.0", - "serde", -] - -[[package]] -name = "revm-interpreter" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5ee65e57375c6639b0f50555e92a4f1b2434349dd32f52e2176f5c711171697" -dependencies = [ - "revm-bytecode 4.1.0", - "revm-context-interface 5.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "revm-primitives 19.2.0", + "revm-bytecode", + "revm-context-interface", + "revm-primitives", "serde", ] @@ -7018,7 +5861,7 @@ dependencies = [ "cfg-if", "codspeed-criterion-compat", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.2.1-rc.1)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7)", "kzg-rs", "libsecp256k1", "once_cell", @@ -7030,7 +5873,7 @@ dependencies = [ "openvm-sha2", "p256", "rand 0.8.5", - "revm-primitives 19.1.0", + "revm-primitives", "ripemd", "rstest", "secp256k1", @@ -7038,63 +5881,11 @@ dependencies = [ "substrate-bn", ] -[[package]] -name = "revm-precompile" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f9311e735123d8d53a02af2aa81877bba185be7c141be7f931bb3d2f3af449c" -dependencies = [ - "ark-bls12-381", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "aurora-engine-modexp", - "blst", - "c-kzg", - "cfg-if", - "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "libsecp256k1", - "once_cell", - "p256", - "revm-primitives 19.2.0", - "ripemd", - "secp256k1", - "sha2 0.10.8", -] - -[[package]] -name = "revm-primitives" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51187b852d9e458816a2e19c81f1dd6c924077e1a8fccd16e4f044f865f299d7" -dependencies = [ - "alloy-primitives 0.4.2", - "alloy-rlp", - "auto_impl", - "bitflags 2.9.0", - "bitvec", - "enumn", - "hashbrown 0.14.5", - "hex", -] - [[package]] name = "revm-primitives" version = "19.1.0" dependencies = [ - "alloy-primitives 1.1.2", - "num_enum", - "serde", -] - -[[package]] -name = "revm-primitives" -version = "19.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c1588093530ec4442461163be49c433c07a3235d1ca6f6799fef338dacc50d3" -dependencies = [ - "alloy-primitives 1.1.2", + "alloy-primitives", "num_enum", "serde", ] @@ -7103,21 +5894,9 @@ dependencies = [ name = "revm-state" version = "4.0.1" dependencies = [ - "bitflags 2.9.0", - "revm-bytecode 4.0.1", - "revm-primitives 19.1.0", - "serde", -] - -[[package]] -name = "revm-state" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0040c61c30319254b34507383ba33d85f92949933adf6525a2cede05d165e1fa" -dependencies = [ - "bitflags 2.9.0", - "revm-bytecode 4.1.0", - "revm-primitives 19.2.0", + "bitflags", + "revm-bytecode", + "revm-primitives", "serde", ] @@ -7125,7 +5904,7 @@ dependencies = [ name = "revm-statetest-types" version = "6.0.0" dependencies = [ - "revm 24.0.1", + "revm", "serde", "serde_json", ] @@ -7135,22 +5914,22 @@ name = "revme" version = "5.1.1" dependencies = [ "alloy-rlp", - "alloy-sol-types 1.1.2", + "alloy-sol-types", "clap", "codspeed-criterion-compat", "hash-db", "indicatif", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "plain_hasher", - "revm 24.0.1", - "revm-bytecode 4.0.1", - "revm-context 5.0.1", - "revm-context-interface 5.0.0", - "revm-database 4.0.1", - "revm-database-interface 4.0.1", - "revm-inspector 5.0.1", - "revm-primitives 19.1.0", - "revm-state 4.0.1", + "revm", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-inspector", + "revm-primitives", + "revm-state", "revm-statetest-types", "serde", "serde_json", @@ -7169,20 +5948,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ring" -version = "0.17.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" -dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.15", - "libc", - "untrusted", - "windows-sys 0.52.0", -] - [[package]] name = "ripemd" version = "0.1.3" @@ -7199,21 +5964,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" dependencies = [ "bytes", - "rlp-derive", "rustc-hex", ] -[[package]] -name = "rlp-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "rrs-lib" version = "0.1.0" @@ -7294,12 +6047,6 @@ version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - [[package]] name = "rustc-hash" version = "2.1.1" @@ -7339,32 +6086,11 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" dependencies = [ - "bitflags 2.9.0", + "bitflags", "errno", "libc", "linux-raw-sys", - "windows-sys 0.59.0", -] - -[[package]] -name = "rustls" -version = "0.21.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" -dependencies = [ - "log", - "ring", - "rustls-webpki", - "sct", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64 0.21.7", + "windows-sys 0.52.0", ] [[package]] @@ -7382,16 +6108,6 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "rustversion" version = "1.0.20" @@ -7425,30 +6141,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "scale-info" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" -dependencies = [ - "cfg-if", - "derive_more 1.0.0", - "parity-scale-codec", - "scale-info-derive", -] - -[[package]] -name = "scale-info-derive" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.100", -] - [[package]] name = "schannel" version = "0.1.27" @@ -7464,16 +6156,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "sec1" version = "0.7.3" @@ -7516,7 +6198,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.0", + "bitflags", "core-foundation", "core-foundation-sys", "libc", @@ -7620,16 +6302,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_regex" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf" -dependencies = [ - "regex", - "serde", -] - [[package]] name = "serde_spanned" version = "0.6.9" @@ -7657,7 +6329,7 @@ version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ - "base64 0.22.1", + "base64", "chrono", "hex", "indexmap 1.9.3", @@ -7691,17 +6363,6 @@ dependencies = [ "serde", ] -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - [[package]] name = "sha2" version = "0.9.9" @@ -7761,15 +6422,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" -[[package]] -name = "signal-hook-registry" -version = "1.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" -dependencies = [ - "libc", -] - [[package]] name = "signature" version = "2.2.0" @@ -7792,67 +6444,22 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85636c14b73d81f541e525f585c0a2109e6744e1565b5c1668e31c70c10ed65c" -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" -dependencies = [ - "serde", -] - -[[package]] -name = "snark-verifier" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9203c416ff9de0762667270b21573ba5e6edaeda08743b3ca37dc8a5e0a4480" -dependencies = [ - "halo2-base", - "halo2-ecc", - "hex", - "itertools 0.11.0", - "lazy_static", - "num-bigint 0.4.6", - "num-integer", - "num-traits", - "pairing 0.23.0", - "rand 0.8.5", - "revm 24.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "ruint", - "serde", - "sha3", +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", ] [[package]] -name = "snark-verifier-sdk" -version = "0.2.2" +name = "smallvec" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290ae6e750d9d5fdf05393bbcae6bf7a63e3408eab023abf7d466156a234ac85" +checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" dependencies = [ - "bincode", - "ethereum-types", - "getset", - "halo2-base", - "hex", - "itertools 0.11.0", - "lazy_static", - "num-bigint 0.4.6", - "num-integer", - "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", "serde", - "serde_json", - "snark-verifier", ] [[package]] @@ -7865,20 +6472,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "solang-parser" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cb9fa2fa2fa6837be8a2495486ff92e3ffe68a99b6eeba288e139efdd842457" -dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror 1.0.69", - "unicode-xid", -] - [[package]] name = "sp1-lib" version = "4.2.0" @@ -7965,18 +6558,6 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fe895eb47f22e2ddd4dabc02bce419d2e643c8e3b585c78158b349195bc24d82" -[[package]] -name = "string_cache" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared", - "precomputed-hash", -] - [[package]] name = "strsim" version = "0.11.1" @@ -8046,39 +6627,6 @@ version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" -[[package]] -name = "svm-rs" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs", - "fs2", - "hex", - "once_cell", - "reqwest 0.11.27", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.8", - "thiserror 1.0.69", - "url", - "zip", -] - -[[package]] -name = "svm-rs-builds" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa64b5e8eecd3a8af7cfc311e29db31a268a62d5953233d3e8243ec77a71c4e3" -dependencies = [ - "build_const", - "hex", - "semver 1.0.26", - "serde_json", - "svm-rs", -] - [[package]] name = "syn" version = "1.0.109" @@ -8101,18 +6649,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "syn-solidity" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.100", -] - [[package]] name = "syn-solidity" version = "1.1.2" @@ -8125,12 +6661,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - [[package]] name = "sync_wrapper" version = "1.0.2" @@ -8151,27 +6681,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "tap" version = "1.0.1" @@ -8188,51 +6697,7 @@ dependencies = [ "getrandom 0.3.2", "once_cell", "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "term" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" -dependencies = [ - "dirs-next", - "rustversion", - "winapi", -] - -[[package]] -name = "test-case" -version = "3.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb2550dd13afcd286853192af8601920d959b14c401fcece38071d53bf0768a8" -dependencies = [ - "test-case-macros", -] - -[[package]] -name = "test-case-core" -version = "3.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adcb7fd841cd518e279be3d5a3eb0636409487998a4aff22f3de87b81e88384f" -dependencies = [ - "cfg-if", - "proc-macro2", - "quote", - "syn 2.0.100", -] - -[[package]] -name = "test-case-macros" -version = "3.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", - "test-case-core", + "windows-sys 0.52.0", ] [[package]] @@ -8385,7 +6850,6 @@ dependencies = [ "libc", "mio", "pin-project-lite", - "signal-hook-registry", "socket2", "tokio-macros", "windows-sys 0.52.0", @@ -8412,16 +6876,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls", - "tokio", -] - [[package]] name = "tokio-stream" version = "0.1.17" @@ -8447,19 +6901,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" -dependencies = [ - "indexmap 2.9.0", - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.19.15", -] - [[package]] name = "toml" version = "0.8.23" @@ -8469,7 +6910,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.27", + "toml_edit", ] [[package]] @@ -8481,19 +6922,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.9.0", - "serde", - "serde_spanned", - "toml_datetime", - "winnow 0.5.40", -] - [[package]] name = "toml_edit" version = "0.22.27" @@ -8505,7 +6933,7 @@ dependencies = [ "serde_spanned", "toml_datetime", "toml_write", - "winnow 0.7.10", + "winnow", ] [[package]] @@ -8523,7 +6951,7 @@ dependencies = [ "futures-core", "futures-util", "pin-project-lite", - "sync_wrapper 1.0.2", + "sync_wrapper", "tokio", "tower-layer", "tower-service", @@ -8692,27 +7120,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "uncased" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" -dependencies = [ - "version_check", -] - [[package]] name = "unicode-ident" version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - [[package]] name = "unicode-width" version = "0.2.0" @@ -8735,12 +7148,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - [[package]] name = "url" version = "2.5.4" @@ -8945,12 +7352,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki-roots" -version = "0.25.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" - [[package]] name = "winapi" version = "0.3.9" @@ -8973,7 +7374,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -9061,15 +7462,6 @@ dependencies = [ "windows-link", ] -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - [[package]] name = "windows-sys" version = "0.52.0" @@ -9088,21 +7480,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - [[package]] name = "windows-targets" version = "0.52.6" @@ -9135,12 +7512,6 @@ dependencies = [ "windows_x86_64_msvc 0.53.0", ] -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - [[package]] name = "windows_aarch64_gnullvm" version = "0.52.6" @@ -9153,12 +7524,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - [[package]] name = "windows_aarch64_msvc" version = "0.52.6" @@ -9171,12 +7536,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - [[package]] name = "windows_i686_gnu" version = "0.52.6" @@ -9201,12 +7560,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - [[package]] name = "windows_i686_msvc" version = "0.52.6" @@ -9219,12 +7572,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - [[package]] name = "windows_x86_64_gnu" version = "0.52.6" @@ -9237,12 +7584,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" @@ -9255,12 +7596,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - [[package]] name = "windows_x86_64_msvc" version = "0.52.6" @@ -9273,15 +7608,6 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - [[package]] name = "winnow" version = "0.7.10" @@ -9291,23 +7617,13 @@ dependencies = [ "memchr", ] -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - [[package]] name = "wit-bindgen-rt" version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags 2.9.0", + "bitflags", ] [[package]] @@ -9331,18 +7647,6 @@ dependencies = [ "tap", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - [[package]] name = "yoke" version = "0.7.5" @@ -9470,26 +7774,6 @@ dependencies = [ "syn 2.0.100", ] -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "aes", - "byteorder", - "bzip2", - "constant_time_eq 0.1.5", - "crc32fast", - "crossbeam-utils", - "flate2", - "hmac", - "pbkdf2", - "sha1", - "time", - "zstd", -] - [[package]] name = "zkhash" version = "0.2.0" @@ -9515,32 +7799,3 @@ dependencies = [ "sha3", "subtle", ] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.15+zstd.1.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" -dependencies = [ - "cc", - "pkg-config", -] diff --git a/Cargo.toml b/Cargo.toml index 84e034c85..16690914c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -113,30 +113,30 @@ tokio = "1.44" either = { version = "1.15.0", default-features = false } # openvm stark-backend -openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", rev = "f48090c9febd021f8ee0349bc929a775fb1fa3ad" } +openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", rev = "0879de162658b797b8dd6b6ee4429cbb8dd78ba1" } # openvm -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-build = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-build = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } # openvm extensions -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } # openvm guest libs -openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1", package = "k256", default-features = false } -openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "a07b1983012e97ee21ebf0eef0d4da954d9cc2e5", default-features = false } +openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7", package = "k256", default-features = false } +openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "56751b25b4f18ba9988355faa288918db0ab3fde", default-features = false } # dev-dependencies anyhow = "1.0.89" diff --git a/crates/precompile/src/bn128/openvm.rs b/crates/precompile/src/bn128/openvm.rs index f3eeec0d3..1928261e8 100644 --- a/crates/precompile/src/bn128/openvm.rs +++ b/crates/precompile/src/bn128/openvm.rs @@ -20,12 +20,7 @@ fn read_fq(input: &[u8]) -> Result { if input.len() < FQ_LEN { Err(PrecompileError::Bn128FieldPointNotAMember) } else { - let fp = Fp::from_be_bytes(&input[..32]); - if fp.is_reduced() { - Ok(fp) - } else { - Err(PrecompileError::Bn128FieldPointNotAMember) - } + Fp::from_be_bytes(&input[..32]).ok_or(PrecompileError::Bn128FieldPointNotAMember) } } @@ -118,7 +113,7 @@ pub(super) fn read_scalar(input: &[u8]) -> Scalar { "unexpected scalar length. got {}, expected {SCALAR_LEN}", input.len() ); - Scalar::from_be_bytes(input) + Scalar::from_be_bytes_unchecked(input) } /// Performs point addition on two G1 points. diff --git a/tests/openvm/Cargo.toml b/tests/openvm/Cargo.toml index a896d5a88..a83d70e3b 100644 --- a/tests/openvm/Cargo.toml +++ b/tests/openvm/Cargo.toml @@ -31,4 +31,9 @@ toml = "0.8.23" [dev-dependencies] rand.workspace = true -secp256k1.workspace = true +secp256k1 = { workspace = true, features = [ + "alloc", + "recovery", + "rand", + "global-context", +] } diff --git a/tests/openvm/programs/ec_add/Cargo.toml b/tests/openvm/programs/ec_add/Cargo.toml index cd9a89b5f..5c7b3838b 100644 --- a/tests/openvm/programs/ec_add/Cargo.toml +++ b/tests/openvm/programs/ec_add/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ec_mul/Cargo.toml b/tests/openvm/programs/ec_mul/Cargo.toml index 2041b7881..5b5ada150 100644 --- a/tests/openvm/programs/ec_mul/Cargo.toml +++ b/tests/openvm/programs/ec_mul/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ecrecover/Cargo.toml b/tests/openvm/programs/ecrecover/Cargo.toml index 58240cb5e..77136c485 100644 --- a/tests/openvm/programs/ecrecover/Cargo.toml +++ b/tests/openvm/programs/ecrecover/Cargo.toml @@ -5,14 +5,14 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-k256", ] } revm-primitives = { path = "../../../../crates/primitives", default-features = false } -k256 = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } [features] default = [] diff --git a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml index 56fa33c49..6ff5a7acc 100644 --- a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml +++ b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1", features = [ +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7", features = [ "bls12_381", ] } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ diff --git a/tests/openvm/programs/pairing/Cargo.toml b/tests/openvm/programs/pairing/Cargo.toml index b8ff1cbfa..7e21325ad 100644 --- a/tests/openvm/programs/pairing/Cargo.toml +++ b/tests/openvm/programs/pairing/Cargo.toml @@ -5,8 +5,8 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/sha256/Cargo.toml b/tests/openvm/programs/sha256/Cargo.toml index f19ed4fb9..9b4a6e828 100644 --- a/tests/openvm/programs/sha256/Cargo.toml +++ b/tests/openvm/programs/sha256/Cargo.toml @@ -5,7 +5,7 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", tag = "v1.2.1-rc.1" } +openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-sha2", ] } From 9e07e3eabd6bb53e3de707af225dd44a88b8b2c5 Mon Sep 17 00:00:00 2001 From: Jonathan Wang <31040440+jonathanpwang@users.noreply.github.com> Date: Tue, 19 Aug 2025 16:17:21 -0700 Subject: [PATCH 6/6] chore: use openvm `main` branch v1.4.0-rc (#81) * chore: switch openvm branch * chore: use openvm main * chore: pin stark-backend to version used in openvm * fix: increase stack size to 4mb for test * fix: increase stack size to 8mb --------- Co-authored-by: Ayush Shukla --- Cargo.lock | 405 ++++++++---------- Cargo.toml | 42 +- rust-toolchain.toml | 2 +- tests/openvm/Cargo.toml | 1 + tests/openvm/programs/ec_add/Cargo.toml | 8 +- tests/openvm/programs/ec_add/openvm_init.rs | 2 +- tests/openvm/programs/ec_mul/Cargo.toml | 8 +- tests/openvm/programs/ec_mul/openvm_init.rs | 2 +- tests/openvm/programs/ecrecover/Cargo.toml | 8 +- .../openvm/programs/ecrecover/openvm_init.rs | 2 +- .../programs/kzg_point_evaluation/Cargo.toml | 8 +- .../kzg_point_evaluation/openvm_init.rs | 4 +- tests/openvm/programs/pairing/Cargo.toml | 4 +- tests/openvm/programs/pairing/openvm_init.rs | 2 +- tests/openvm/programs/sha256/Cargo.toml | 2 +- tests/openvm/src/ec_precompile.rs | 65 +-- tests/openvm/src/ecrecover.rs | 87 ++-- tests/openvm/src/kzg_precompile.rs | 41 +- tests/openvm/src/sha256_precompile.rs | 23 +- 19 files changed, 315 insertions(+), 401 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b8fa6a73c..23d586608 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1693,6 +1693,7 @@ dependencies = [ "lock_api", "once_cell", "parking_lot_core", + "rayon", ] [[package]] @@ -3029,7 +3030,7 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "ecdsa", "elliptic-curve", @@ -3088,9 +3089,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.172" +version = "0.2.175" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" [[package]] name = "libm" @@ -3222,6 +3223,15 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "memmap2" +version = "0.9.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "483758ad303d734cec05e5c12b41d7e93e6a6390c5e9dae6bdeb7c1259012d28" +dependencies = [ + "libc", +] + [[package]] name = "memuse" version = "0.2.2" @@ -3606,10 +3616,11 @@ dependencies = [ [[package]] name = "openvm" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "bytemuck", + "getrandom 0.2.15", "getrandom 0.3.2", "num-bigint 0.4.6", "openvm-custom-insn", @@ -3620,13 +3631,13 @@ dependencies = [ [[package]] name = "openvm-algebra-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", "eyre", - "itertools 0.14.0", + "halo2curves-axiom", "num-bigint 0.4.6", "num-traits", "openvm-algebra-transpiler", @@ -3638,19 +3649,18 @@ dependencies = [ "openvm-mod-circuit-builder", "openvm-rv32-adapters", "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", - "serde-big-array", "serde_with", "strum 0.26.3", ] [[package]] name = "openvm-algebra-complex-macros" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-macros-common", "quote", @@ -3659,8 +3669,8 @@ dependencies = [ [[package]] name = "openvm-algebra-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "halo2curves-axiom", "num-bigint 0.4.6", @@ -3675,8 +3685,8 @@ dependencies = [ [[package]] name = "openvm-algebra-moduli-macros" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "num-bigint 0.4.6", "num-prime", @@ -3687,13 +3697,13 @@ dependencies = [ [[package]] name = "openvm-algebra-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-algebra-guest", "openvm-instructions", "openvm-instructions-derive", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -3701,8 +3711,8 @@ dependencies = [ [[package]] name = "openvm-bigint-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -3715,16 +3725,16 @@ dependencies = [ "openvm-rv32-adapters", "openvm-rv32im-circuit", "openvm-rv32im-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", ] [[package]] name = "openvm-bigint-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-platform", "strum_macros 0.26.4", @@ -3732,14 +3742,14 @@ dependencies = [ [[package]] name = "openvm-bigint-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-bigint-guest", "openvm-instructions", "openvm-instructions-derive", "openvm-rv32im-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -3747,8 +3757,8 @@ dependencies = [ [[package]] name = "openvm-build" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "cargo_metadata", "eyre", @@ -3759,11 +3769,11 @@ dependencies = [ [[package]] name = "openvm-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "backtrace", - "cfg-if", + "dashmap", "derivative", "derive-new 0.6.0", "derive_more 1.0.0", @@ -3771,13 +3781,15 @@ dependencies = [ "eyre", "getset", "itertools 0.14.0", + "libc", + "memmap2", "openvm-circuit-derive", "openvm-circuit-primitives", "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-poseidon2-air", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "p3-baby-bear 0.1.0", "rand 0.8.5", "rustc-hash", @@ -3790,33 +3802,34 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "itertools 0.14.0", + "proc-macro2", "quote", "syn 2.0.100", ] [[package]] name = "openvm-circuit-primitives" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", "num-bigint 0.4.6", "num-traits", "openvm-circuit-primitives-derive", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "rand 0.8.5", "tracing", ] [[package]] name = "openvm-circuit-primitives-derive" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "itertools 0.14.0", "quote", @@ -3825,15 +3838,15 @@ dependencies = [ [[package]] name = "openvm-continuations" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derivative", "openvm-circuit", "openvm-native-compiler", "openvm-native-recursion", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "serde", "static_assertions", ] @@ -3841,7 +3854,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "proc-macro2", "quote", @@ -3850,11 +3863,12 @@ dependencies = [ [[package]] name = "openvm-ecc-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", + "halo2curves-axiom", "hex-literal 0.4.1", "lazy_static", "num-bigint 0.4.6", @@ -3864,13 +3878,12 @@ dependencies = [ "openvm-circuit", "openvm-circuit-derive", "openvm-circuit-primitives", - "openvm-circuit-primitives-derive", "openvm-ecc-transpiler", "openvm-instructions", "openvm-mod-circuit-builder", "openvm-rv32-adapters", - "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "rand 0.8.5", "serde", "serde_with", "strum 0.26.3", @@ -3878,8 +3891,8 @@ dependencies = [ [[package]] name = "openvm-ecc-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "ecdsa", "elliptic-curve", @@ -3897,8 +3910,8 @@ dependencies = [ [[package]] name = "openvm-ecc-sw-macros" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-macros-common", "quote", @@ -3907,13 +3920,13 @@ dependencies = [ [[package]] name = "openvm-ecc-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-ecc-guest", "openvm-instructions", "openvm-instructions-derive", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -3921,8 +3934,8 @@ dependencies = [ [[package]] name = "openvm-instructions" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -3930,7 +3943,7 @@ dependencies = [ "num-bigint 0.4.6", "num-traits", "openvm-instructions-derive", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "serde", "strum 0.26.3", "strum_macros 0.26.4", @@ -3938,8 +3951,8 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "quote", "syn 2.0.100", @@ -3947,8 +3960,8 @@ dependencies = [ [[package]] name = "openvm-keccak256" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-keccak256-guest", "tiny-keccak", @@ -3956,8 +3969,8 @@ dependencies = [ [[package]] name = "openvm-keccak256-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -3969,34 +3982,32 @@ dependencies = [ "openvm-instructions", "openvm-keccak256-transpiler", "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "p3-keccak-air", "rand 0.8.5", "serde", - "serde-big-array", "strum 0.26.3", "tiny-keccak", - "tracing", ] [[package]] name = "openvm-keccak256-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-platform", ] [[package]] name = "openvm-keccak256-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-keccak256-guest", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4005,7 +4016,7 @@ dependencies = [ [[package]] name = "openvm-kzg" version = "0.1.0-alpha" -source = "git+https://github.com/axiom-crypto/openvm-kzg.git?rev=56751b25b4f18ba9988355faa288918db0ab3fde#56751b25b4f18ba9988355faa288918db0ab3fde" +source = "git+https://github.com/axiom-crypto/openvm-kzg.git?branch=openvm-main#a0e8432906aeba2992f41365a8e1c7e2414f0e7c" dependencies = [ "bls12_381 0.8.0", "hex", @@ -4020,16 +4031,16 @@ dependencies = [ [[package]] name = "openvm-macros-common" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "syn 2.0.100", ] [[package]] name = "openvm-mod-circuit-builder" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "itertools 0.14.0", "num-bigint 0.4.6", @@ -4037,18 +4048,16 @@ dependencies = [ "openvm-circuit", "openvm-circuit-primitives", "openvm-instructions", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", - "serde", - "serde_with", "tracing", ] [[package]] name = "openvm-native-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4062,20 +4071,19 @@ dependencies = [ "openvm-native-compiler", "openvm-poseidon2-air", "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", - "serde-big-array", "static_assertions", "strum 0.26.3", - "tracing", ] [[package]] name = "openvm-native-compiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "backtrace", "itertools 0.14.0", @@ -4086,8 +4094,8 @@ dependencies = [ "openvm-instructions-derive", "openvm-native-compiler-derive", "openvm-rv32im-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "serde", "strum 0.26.3", "strum_macros 0.26.4", @@ -4096,8 +4104,8 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "quote", "syn 2.0.100", @@ -4105,8 +4113,8 @@ dependencies = [ [[package]] name = "openvm-native-recursion" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -4115,8 +4123,8 @@ dependencies = [ "openvm-native-circuit", "openvm-native-compiler", "openvm-native-compiler-derive", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "p3-dft 0.1.0", "p3-fri", "p3-merkle-tree", @@ -4129,8 +4137,8 @@ dependencies = [ [[package]] name = "openvm-native-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-instructions", "openvm-transpiler", @@ -4139,8 +4147,8 @@ dependencies = [ [[package]] name = "openvm-pairing" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "group 0.13.0", "hex-literal 0.4.1", @@ -4163,30 +4171,27 @@ dependencies = [ [[package]] name = "openvm-pairing-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", "eyre", "halo2curves-axiom", - "itertools 0.14.0", "num-bigint 0.4.6", "num-traits", "openvm-algebra-circuit", "openvm-circuit", "openvm-circuit-derive", "openvm-circuit-primitives", - "openvm-circuit-primitives-derive", "openvm-ecc-circuit", "openvm-ecc-guest", "openvm-instructions", "openvm-mod-circuit-builder", "openvm-pairing-guest", "openvm-pairing-transpiler", - "openvm-rv32-adapters", "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "rand 0.8.5", "serde", "strum 0.26.3", @@ -4194,8 +4199,8 @@ dependencies = [ [[package]] name = "openvm-pairing-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "halo2curves-axiom", "hex-literal 0.4.1", @@ -4215,13 +4220,12 @@ dependencies = [ [[package]] name = "openvm-pairing-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-instructions", - "openvm-instructions-derive", "openvm-pairing-guest", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4229,8 +4233,8 @@ dependencies = [ [[package]] name = "openvm-platform" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "libm", "openvm-custom-insn", @@ -4239,13 +4243,13 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derivative", "lazy_static", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "p3-monty-31", "p3-poseidon2 0.1.0", "p3-poseidon2-air", @@ -4256,8 +4260,8 @@ dependencies = [ [[package]] name = "openvm-rv32-adapters" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -4266,18 +4270,15 @@ dependencies = [ "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-rv32im-circuit", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", - "serde", - "serde-big-array", - "serde_with", ] [[package]] name = "openvm-rv32im-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -4290,17 +4291,16 @@ dependencies = [ "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-rv32im-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "rand 0.8.5", "serde", - "serde-big-array", "strum 0.26.3", ] [[package]] name = "openvm-rv32im-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-custom-insn", "p3-field 0.1.0", @@ -4309,13 +4309,13 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-rv32im-guest", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "serde", @@ -4325,10 +4325,9 @@ dependencies = [ [[package]] name = "openvm-sdk" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ - "async-trait", "bitcode", "bon", "clap", @@ -4362,23 +4361,25 @@ dependencies = [ "openvm-rv32im-transpiler", "openvm-sha256-circuit", "openvm-sha256-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "openvm-transpiler", "p3-fri", + "rand 0.8.5", "rrs-lib", "serde", "serde_json", "serde_with", "tempfile", "thiserror 1.0.69", + "toml", "tracing", ] [[package]] name = "openvm-sha2" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-sha256-guest", "sha2 0.10.8", @@ -4386,32 +4387,31 @@ dependencies = [ [[package]] name = "openvm-sha256-air" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-circuit-primitives", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "rand 0.8.5", "sha2 0.10.8", ] [[package]] name = "openvm-sha256-circuit" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", "openvm-circuit", "openvm-circuit-derive", "openvm-circuit-primitives", - "openvm-circuit-primitives-derive", "openvm-instructions", "openvm-rv32im-circuit", "openvm-sha256-air", "openvm-sha256-transpiler", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", + "openvm-stark-sdk", "rand 0.8.5", "serde", "sha2 0.10.8", @@ -4420,21 +4420,21 @@ dependencies = [ [[package]] name = "openvm-sha256-guest" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-platform", ] [[package]] name = "openvm-sha256-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "openvm-instructions", "openvm-instructions-derive", "openvm-sha256-guest", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "openvm-transpiler", "rrs-lib", "strum 0.26.3", @@ -4442,33 +4442,8 @@ dependencies = [ [[package]] name = "openvm-stark-backend" -version = "1.1.1" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1#0879de162658b797b8dd6b6ee4429cbb8dd78ba1" -dependencies = [ - "bitcode", - "cfg-if", - "derivative", - "derive-new 0.7.0", - "itertools 0.14.0", - "p3-air", - "p3-challenger", - "p3-commit", - "p3-field 0.1.0", - "p3-matrix 0.1.0", - "p3-maybe-rayon 0.1.0", - "p3-uni-stark", - "p3-util 0.1.0", - "rayon", - "rustc-hash", - "serde", - "thiserror 1.0.69", - "tracing", -] - -[[package]] -name = "openvm-stark-backend" -version = "1.1.1" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad#f48090c9febd021f8ee0349bc929a775fb1fa3ad" +version = "1.2.0-rc.0" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0-rc.2#c8eb4dde511b068b6b23dc48d7b0695897d5a00a" dependencies = [ "bitcode", "cfg-if", @@ -4493,45 +4468,10 @@ dependencies = [ [[package]] name = "openvm-stark-sdk" -version = "1.1.1" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1#0879de162658b797b8dd6b6ee4429cbb8dd78ba1" -dependencies = [ - "derivative", - "derive_more 0.99.20", - "ff 0.13.1", - "itertools 0.14.0", - "metrics", - "metrics-tracing-context", - "metrics-util", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1)", - "p3-baby-bear 0.1.0", - "p3-blake3", - "p3-bn254-fr", - "p3-dft 0.1.0", - "p3-fri", - "p3-goldilocks", - "p3-keccak", - "p3-koala-bear", - "p3-merkle-tree", - "p3-poseidon", - "p3-poseidon2 0.1.0", - "p3-symmetric 0.1.0", - "rand 0.8.5", - "serde", - "serde_json", - "static_assertions", - "toml", - "tracing", - "tracing-forest", - "tracing-subscriber 0.3.19", - "zkhash", -] - -[[package]] -name = "openvm-stark-sdk" -version = "1.1.1" -source = "git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad#f48090c9febd021f8ee0349bc929a775fb1fa3ad" +version = "1.2.0-rc.0" +source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.2.0-rc.2#c8eb4dde511b068b6b23dc48d7b0695897d5a00a" dependencies = [ + "dashmap", "derivative", "derive_more 0.99.20", "ff 0.13.1", @@ -4539,7 +4479,7 @@ dependencies = [ "metrics", "metrics-tracing-context", "metrics-util", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "p3-baby-bear 0.1.0", "p3-blake3", "p3-bn254-fr", @@ -4567,6 +4507,7 @@ dependencies = [ name = "openvm-tests" version = "0.1.0" dependencies = [ + "eyre", "num-bigint 0.4.6", "num-traits", "openvm", @@ -4583,7 +4524,7 @@ dependencies = [ "openvm-pairing-transpiler", "openvm-rv32im-transpiler", "openvm-sdk", - "openvm-stark-sdk 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=0879de162658b797b8dd6b6ee4429cbb8dd78ba1)", + "openvm-stark-sdk", "openvm-transpiler", "rand 0.8.5", "revm-primitives", @@ -4594,14 +4535,14 @@ dependencies = [ [[package]] name = "openvm-transpiler" -version = "1.2.1-rc.0" -source = "git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7#9ef822c947f14eb436e293971c969cfcb688dbe7" +version = "1.4.0-rc.4" +source = "git+https://github.com/openvm-org/openvm.git?branch=main#51d0aa69694fd33def3c433e48228a5675e4fd97" dependencies = [ "elf", "eyre", "openvm-instructions", "openvm-platform", - "openvm-stark-backend 1.1.1 (git+https://github.com/openvm-org/stark-backend.git?rev=f48090c9febd021f8ee0349bc929a775fb1fa3ad)", + "openvm-stark-backend", "rrs-lib", "thiserror 1.0.69", ] @@ -5861,7 +5802,7 @@ dependencies = [ "cfg-if", "codspeed-criterion-compat", "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", - "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?rev=9ef822c947f14eb436e293971c969cfcb688dbe7)", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?branch=main)", "kzg-rs", "libsecp256k1", "once_cell", diff --git a/Cargo.toml b/Cargo.toml index 16690914c..001aceb6c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -113,30 +113,30 @@ tokio = "1.44" either = { version = "1.15.0", default-features = false } # openvm stark-backend -openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", rev = "0879de162658b797b8dd6b6ee4429cbb8dd78ba1" } +openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.2.0-rc.2" } # openvm -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-build = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-circuit = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-transpiler = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-build = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-sdk = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } # openvm extensions -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-keccak256-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-sha256-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing-transpiler = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-rv32im-transpiler = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-circuit = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-transpiler = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-circuit = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-transpiler = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing-circuit = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } # openvm guest libs -openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7", package = "k256", default-features = false } -openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", rev = "56751b25b4f18ba9988355faa288918db0ab3fde", default-features = false } +openvm-keccak256 = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-sha2 = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-k256 = { git = "https://github.com/openvm-org/openvm.git", branch = "main", package = "k256", default-features = false } +openvm-kzg = { git = "https://github.com/axiom-crypto/openvm-kzg.git", branch = "openvm-main", default-features = false } # dev-dependencies anyhow = "1.0.89" diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 35e9b966e..882510206 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.85.1" +channel = "1.86.0" components = ["clippy", "rustfmt"] diff --git a/tests/openvm/Cargo.toml b/tests/openvm/Cargo.toml index a83d70e3b..692ff81df 100644 --- a/tests/openvm/Cargo.toml +++ b/tests/openvm/Cargo.toml @@ -28,6 +28,7 @@ primitives = { workspace = true } sha2 = { version = "0.10", default-features = false } toml = "0.8.23" +eyre.workspace = true [dev-dependencies] rand.workspace = true diff --git a/tests/openvm/programs/ec_add/Cargo.toml b/tests/openvm/programs/ec_add/Cargo.toml index 5c7b3838b..4837f7b84 100644 --- a/tests/openvm/programs/ec_add/Cargo.toml +++ b/tests/openvm/programs/ec_add/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ec_add/openvm_init.rs b/tests/openvm/programs/ec_add/openvm_init.rs index 64de28e83..e8911a04a 100644 --- a/tests/openvm/programs/ec_add/openvm_init.rs +++ b/tests/openvm/programs/ec_add/openvm_init.rs @@ -1,3 +1,3 @@ // This file is automatically generated by cargo openvm. Do not rename or edit. openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } -openvm_ecc_guest::sw_macros::sw_init! { Bn254G1Affine } +openvm_ecc_guest::sw_macros::sw_init! { "Bn254G1Affine" } diff --git a/tests/openvm/programs/ec_mul/Cargo.toml b/tests/openvm/programs/ec_mul/Cargo.toml index 5b5ada150..df4fca55f 100644 --- a/tests/openvm/programs/ec_mul/Cargo.toml +++ b/tests/openvm/programs/ec_mul/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/ec_mul/openvm_init.rs b/tests/openvm/programs/ec_mul/openvm_init.rs index 64de28e83..e8911a04a 100644 --- a/tests/openvm/programs/ec_mul/openvm_init.rs +++ b/tests/openvm/programs/ec_mul/openvm_init.rs @@ -1,3 +1,3 @@ // This file is automatically generated by cargo openvm. Do not rename or edit. openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } -openvm_ecc_guest::sw_macros::sw_init! { Bn254G1Affine } +openvm_ecc_guest::sw_macros::sw_init! { "Bn254G1Affine" } diff --git a/tests/openvm/programs/ecrecover/Cargo.toml b/tests/openvm/programs/ecrecover/Cargo.toml index 77136c485..d8dc07f6e 100644 --- a/tests/openvm/programs/ecrecover/Cargo.toml +++ b/tests/openvm/programs/ecrecover/Cargo.toml @@ -5,14 +5,14 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-k256", ] } revm-primitives = { path = "../../../../crates/primitives", default-features = false } -k256 = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +k256 = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } [features] default = [] diff --git a/tests/openvm/programs/ecrecover/openvm_init.rs b/tests/openvm/programs/ecrecover/openvm_init.rs index bec9f527e..dc6d4917d 100644 --- a/tests/openvm/programs/ecrecover/openvm_init.rs +++ b/tests/openvm/programs/ecrecover/openvm_init.rs @@ -1,3 +1,3 @@ // This file is automatically generated by cargo openvm. Do not rename or edit. openvm_algebra_guest::moduli_macros::moduli_init! { "115792089237316195423570985008687907853269984665640564039457584007908834671663", "115792089237316195423570985008687907852837564279074904382605163141518161494337" } -openvm_ecc_guest::sw_macros::sw_init! { Secp256k1Point } +openvm_ecc_guest::sw_macros::sw_init! { "Secp256k1Point" } diff --git a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml index 6ff5a7acc..3c8c293b4 100644 --- a/tests/openvm/programs/kzg_point_evaluation/Cargo.toml +++ b/tests/openvm/programs/kzg_point_evaluation/Cargo.toml @@ -5,10 +5,10 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7", features = [ +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-ecc-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-pairing = { git = "https://github.com/openvm-org/openvm.git", branch = "main", features = [ "bls12_381", ] } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ diff --git a/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs b/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs index 384af6f4f..490827510 100644 --- a/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs +++ b/tests/openvm/programs/kzg_point_evaluation/openvm_init.rs @@ -1,4 +1,4 @@ // This file is automatically generated by cargo openvm. Do not rename or edit. openvm_algebra_guest::moduli_macros::moduli_init! { "4002409555221667393417789825735904156556882819939007885332058136124031650490837864442687629129015664037894272559787" } -openvm_algebra_guest::complex_macros::complex_init! { Bls12_381Fp2 { mod_idx = 0 } } -openvm_ecc_guest::sw_macros::sw_init! { Bls12_381G1Affine } +openvm_algebra_guest::complex_macros::complex_init! { "Bls12_381Fp2" { mod_idx = 0 } } +openvm_ecc_guest::sw_macros::sw_init! { "Bls12_381G1Affine" } diff --git a/tests/openvm/programs/pairing/Cargo.toml b/tests/openvm/programs/pairing/Cargo.toml index 7e21325ad..cdae58ea4 100644 --- a/tests/openvm/programs/pairing/Cargo.toml +++ b/tests/openvm/programs/pairing/Cargo.toml @@ -5,8 +5,8 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } -openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } +openvm-algebra-guest = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-bn", ] } diff --git a/tests/openvm/programs/pairing/openvm_init.rs b/tests/openvm/programs/pairing/openvm_init.rs index 31e3d8938..e712b2a85 100644 --- a/tests/openvm/programs/pairing/openvm_init.rs +++ b/tests/openvm/programs/pairing/openvm_init.rs @@ -1,3 +1,3 @@ // This file is automatically generated by cargo openvm. Do not rename or edit. openvm_algebra_guest::moduli_macros::moduli_init! { "21888242871839275222246405745257275088696311157297823662689037894645226208583", "21888242871839275222246405745257275088548364400416034343698204186575808495617" } -openvm_algebra_guest::complex_macros::complex_init! { Bn254Fp2 { mod_idx = 0 } } +openvm_algebra_guest::complex_macros::complex_init! { "Bn254Fp2" { mod_idx = 0 } } diff --git a/tests/openvm/programs/sha256/Cargo.toml b/tests/openvm/programs/sha256/Cargo.toml index 9b4a6e828..26de28f3e 100644 --- a/tests/openvm/programs/sha256/Cargo.toml +++ b/tests/openvm/programs/sha256/Cargo.toml @@ -5,7 +5,7 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/openvm-org/openvm.git", rev = "9ef822c947f14eb436e293971c969cfcb688dbe7" } +openvm = { git = "https://github.com/openvm-org/openvm.git", branch = "main" } revm-precompile = { path = "../../../../crates/precompile", default-features = false, features = [ "openvm-sha2", ] } diff --git a/tests/openvm/src/ec_precompile.rs b/tests/openvm/src/ec_precompile.rs index 4d8ba66a2..7e3037537 100644 --- a/tests/openvm/src/ec_precompile.rs +++ b/tests/openvm/src/ec_precompile.rs @@ -1,7 +1,6 @@ use std::path::PathBuf; use openvm_build::GuestOptions; -use openvm_circuit::utils::air_test_with_min_segments; use openvm_sdk::config::AppConfig; use openvm_sdk::{config::SdkVmConfig, Sdk}; use openvm_stark_sdk::openvm_stark_backend::p3_field::FieldAlgebra; @@ -14,20 +13,14 @@ type F = BabyBear; // RUST_MIN_STACK=8388608 #[test] -fn test_ec_pairing_precompile() { - let sdk = Sdk::new(); +fn test_ec_pairing_precompile() -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/pairing/openvm.toml")).unwrap(); + let sdk = Sdk::new(app_config)?; let guest_opts = GuestOptions::default(); let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); pkg_dir.push("programs/pairing"); - let app_config: AppConfig = - toml::from_str(include_str!("../programs/pairing/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let ec_precompile = sdk - .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) - .unwrap(); - let exe = sdk - .transpile(ec_precompile, vm_config.transpiler()) - .unwrap(); + let elf = sdk.build(guest_opts.clone(), &pkg_dir, &None, None)?; let input = hex::decode( "\ @@ -52,25 +45,20 @@ fn test_ec_pairing_precompile() { .into_iter() .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) .collect::>(); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io.into())?; + Ok(()) } #[test] -fn test_ec_add_precompile() { - let sdk = Sdk::new(); +fn test_ec_add_precompile() -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ec_add/openvm.toml")).unwrap(); + let sdk = Sdk::new(app_config)?; let guest_opts = GuestOptions::default(); let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); pkg_dir.push("programs/ec_add"); - let app_config: AppConfig = - toml::from_str(include_str!("../programs/ec_add/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let ec_precompile = sdk - .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) - .unwrap(); - let exe = sdk - .transpile(ec_precompile, vm_config.transpiler()) - .unwrap(); + let elf = sdk.build(guest_opts.clone(), &pkg_dir, &None, None)?; let input = hex::decode( "\ @@ -78,38 +66,30 @@ fn test_ec_add_precompile() { 063c909c4720840cb5134cb9f59fa749755796819658d32efc0d288198f37266\ 07c2b7f58a84bd6145f00c9c2bc0bb1a187f20ff2c92963a88019e7c6a014eed\ 06614e20c147e940f2d70da3f74c9a17df361706a4485c742bd6788478fa17d7", - ) - .unwrap(); + )?; let expected = hex::decode( "\ 2243525c5efd4b9c3d3c45ac0ca3fe4dd85e830a4ce6b65fa1eeaee202839703\ 301d1d33be6da8e509df21cc35964723180eed7532537db9ae5e7d48f195c915", - ) - .unwrap(); + )?; let io = [input, expected] .into_iter() .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) .collect::>(); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io.into())?; + Ok(()) } #[test] -fn test_ec_mul_precompile() { - let sdk = Sdk::new(); +fn test_ec_mul_precompile() -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ec_mul/openvm.toml")).unwrap(); + let sdk = Sdk::new(app_config)?; let guest_opts = GuestOptions::default(); let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); pkg_dir.push("programs/ec_mul"); - let app_config: AppConfig = - toml::from_str(include_str!("../programs/ec_mul/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let ec_precompile = sdk - .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) - .unwrap(); - - let exe = sdk - .transpile(ec_precompile, vm_config.transpiler()) - .unwrap(); + let elf = sdk.build(guest_opts.clone(), &pkg_dir, &None, None)?; let input = hex::decode( "\ @@ -129,5 +109,6 @@ fn test_ec_mul_precompile() { .into_iter() .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) .collect::>(); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io.into())?; + Ok(()) } diff --git a/tests/openvm/src/ecrecover.rs b/tests/openvm/src/ecrecover.rs index 72f6f8d84..59aca65f5 100644 --- a/tests/openvm/src/ecrecover.rs +++ b/tests/openvm/src/ecrecover.rs @@ -1,7 +1,6 @@ -use std::path::PathBuf; +use std::{path::PathBuf, thread::Builder}; use openvm_build::GuestOptions; -use openvm_circuit::utils::air_test_with_min_segments; use openvm_sdk::config::AppConfig; use openvm_sdk::StdIn; use openvm_sdk::{config::SdkVmConfig, Sdk}; @@ -9,44 +8,48 @@ use primitives::{hex, keccak256, Bytes, U256}; use secp256k1::{Message, SecretKey, SECP256K1}; #[test] -fn test_ecrecover_precompile() { - let sdk = Sdk::new(); - let guest_opts = GuestOptions::default(); - let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); - pkg_dir.push("programs/ecrecover"); - - let app_config: AppConfig = - toml::from_str(include_str!("../programs/ecrecover/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let elf = sdk - .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) - .unwrap(); - let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); - - // Generate secp256k1 signature - let data = hex::decode("1337133713371337").unwrap(); - let hash = keccak256(data); - let secret_key = SecretKey::new(&mut rand::thread_rng()); - - let message = Message::from_digest_slice(&hash[..]).unwrap(); - let s = SECP256K1.sign_ecdsa_recoverable(&message, &secret_key); - let (rec_id, data) = s.serialize_compact(); - let rec_id = i32::from(rec_id) as u8 + 27; - - let mut message_and_signature = [0u8; 128]; - message_and_signature[0..32].copy_from_slice(&hash[..]); - - // Fit signature into format the precompile expects - let rec_id = U256::from(rec_id as u64); - message_and_signature[32..64].copy_from_slice(&rec_id.to_be_bytes::<32>()); - message_and_signature[64..128].copy_from_slice(&data); - - let message_and_signature = Bytes::from(message_and_signature); - let public = SECP256K1.recover_ecdsa(&message, &s).unwrap(); - let mut expected = keccak256(&public.serialize_uncompressed()[1..]); - expected[..12].fill(0); - let mut stdin = StdIn::default(); - stdin.write_bytes(expected.as_slice()); - stdin.write_bytes(&message_and_signature); - air_test_with_min_segments(vm_config, exe, stdin, 1); +fn test_ecrecover_precompile() -> eyre::Result<()> { + // Spawn thread with increased stack size + let handle = Builder::new() + .stack_size(8 * 1024 * 1024) // 8MB stack + .spawn(|| -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/ecrecover/openvm.toml")).unwrap(); + let sdk = Sdk::new(app_config)?; + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/ecrecover"); + + let elf = sdk.build(guest_opts.clone(), &pkg_dir, &None, None)?; + + // Generate secp256k1 signature + let data = hex::decode("1337133713371337").unwrap(); + let hash = keccak256(data); + let secret_key = SecretKey::new(&mut rand::thread_rng()); + + let message = Message::from_digest_slice(&hash[..]).unwrap(); + let s = SECP256K1.sign_ecdsa_recoverable(&message, &secret_key); + let (rec_id, data) = s.serialize_compact(); + let rec_id = i32::from(rec_id) as u8 + 27; + + let mut message_and_signature = [0u8; 128]; + message_and_signature[0..32].copy_from_slice(&hash[..]); + + // Fit signature into format the precompile expects + let rec_id = U256::from(rec_id as u64); + message_and_signature[32..64].copy_from_slice(&rec_id.to_be_bytes::<32>()); + message_and_signature[64..128].copy_from_slice(&data); + + let message_and_signature = Bytes::from(message_and_signature); + let public = SECP256K1.recover_ecdsa(&message, &s).unwrap(); + let mut expected = keccak256(&public.serialize_uncompressed()[1..]); + expected[..12].fill(0); + let mut stdin = StdIn::default(); + stdin.write_bytes(expected.as_slice()); + stdin.write_bytes(&message_and_signature); + sdk.app_prover(elf)?.prove(stdin)?; + Ok(()) + })?; + + handle.join().unwrap() } diff --git a/tests/openvm/src/kzg_precompile.rs b/tests/openvm/src/kzg_precompile.rs index e423c2835..b3815a212 100644 --- a/tests/openvm/src/kzg_precompile.rs +++ b/tests/openvm/src/kzg_precompile.rs @@ -1,7 +1,7 @@ use std::path::PathBuf; use openvm_build::GuestOptions; -use openvm_circuit::utils::air_test_with_min_segments; +use openvm_circuit::openvm_stark_sdk::config::FriParameters; use openvm_sdk::config::AppConfig; use openvm_sdk::StdIn; use openvm_sdk::{config::SdkVmConfig, Sdk}; @@ -12,19 +12,15 @@ use sha2::{Digest, Sha256}; // These tests should be run with --profile=fast or --profile=ethtests for more compiler optimization #[test] -fn test_kzg_precompile_with_intrinsics() { - let sdk = Sdk::new(); +fn test_kzg_precompile_with_intrinsics() -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/kzg_point_evaluation/openvm.toml")).unwrap(); + let sdk = Sdk::new(app_config)?; let guest_opts = GuestOptions::default().with_features(["use-intrinsics"]); let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); pkg_dir.push("programs/kzg_point_evaluation"); - let app_config: AppConfig = - toml::from_str(include_str!("../programs/kzg_point_evaluation/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let elf = sdk - .build(guest_opts, &vm_config, &pkg_dir, &None, None) - .unwrap(); - let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); + let elf = sdk.build(guest_opts, &pkg_dir, &None, None)?; // test data from: https://github.com/ethereum/c-kzg-4844/blob/main/tests/verify_kzg_proof/kzg-mainnet/verify_kzg_proof_case_correct_proof_31ebd010e6098750/data.yaml @@ -42,28 +38,26 @@ fn test_kzg_precompile_with_intrinsics() { let mut io = StdIn::default(); io.write_bytes(&input); io.write_bytes(&expected_output); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io)?; + Ok(()) } #[test] #[ignore] -fn test_kzg_precompile_without_intrinsics() { - let sdk = Sdk::new(); - let guest_opts = GuestOptions::default(); - let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); - pkg_dir.push("programs/kzg_point_evaluation"); +fn test_kzg_precompile_without_intrinsics() -> eyre::Result<()> { let vm_config = SdkVmConfig::builder() .system(Default::default()) .rv32i(Default::default()) .rv32m(Default::default()) .io(Default::default()) .keccak(Default::default()) - .build(); - let elf = sdk - .build(guest_opts, &vm_config, &pkg_dir, &None, None) - .unwrap(); - - let exe = sdk.transpile(elf, vm_config.transpiler()).unwrap(); + .build() + .optimize(); + let sdk = Sdk::new(AppConfig::new(FriParameters::new_for_testing(1), vm_config))?; + let guest_opts = GuestOptions::default(); + let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); + pkg_dir.push("programs/kzg_point_evaluation"); + let elf = sdk.build(guest_opts, &pkg_dir, &None, None)?; // test data from: https://github.com/ethereum/c-kzg-4844/blob/main/tests/verify_kzg_proof/kzg-mainnet/verify_kzg_proof_case_correct_proof_31ebd010e6098750/data.yaml let commitment = hex!("8f59a8d2a1a625a17f3fea0fe5eb8c896db3764f3185481bc22f91b4aaffcca25f26936857bc3a7c2539ea8ec3a952b7").to_vec(); @@ -80,5 +74,6 @@ fn test_kzg_precompile_without_intrinsics() { let mut io = StdIn::default(); io.write_bytes(&input); io.write_bytes(&expected_output); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io)?; + Ok(()) } diff --git a/tests/openvm/src/sha256_precompile.rs b/tests/openvm/src/sha256_precompile.rs index 2a6c2b66a..7478bbee8 100644 --- a/tests/openvm/src/sha256_precompile.rs +++ b/tests/openvm/src/sha256_precompile.rs @@ -1,7 +1,6 @@ use std::path::PathBuf; use openvm_build::GuestOptions; -use openvm_circuit::utils::air_test_with_min_segments; use openvm_sdk::{ config::{AppConfig, SdkVmConfig}, Sdk, @@ -13,20 +12,14 @@ use primitives::hex; type F = BabyBear; #[test] -fn test_sha256_precompile() { - let sdk = Sdk::new(); +fn test_sha256_precompile() -> eyre::Result<()> { + let app_config: AppConfig = + toml::from_str(include_str!("../programs/sha256/openvm.toml"))?; + let sdk = Sdk::new(app_config)?; let guest_opts = GuestOptions::default(); let mut pkg_dir = PathBuf::from(env!("CARGO_MANIFEST_DIR")).to_path_buf(); pkg_dir.push("programs/sha256"); - let app_config: AppConfig = - toml::from_str(include_str!("../programs/sha256/openvm.toml")).unwrap(); - let vm_config = app_config.app_vm_config; - let sha256_precompile = sdk - .build(guest_opts.clone(), &vm_config, &pkg_dir, &None, None) - .unwrap(); - let exe = sdk - .transpile(sha256_precompile, vm_config.transpiler()) - .unwrap(); + let elf = sdk.build(guest_opts.clone(), &pkg_dir, &None, None)?; let input = hex::decode( "\ @@ -44,12 +37,12 @@ fn test_sha256_precompile() { 12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa", ) .unwrap(); - let expected = - hex::decode("5f4e768d9faaf07a8c7264b937d60ff0b2fd52458e60a235f79c54bea68979dc").unwrap(); + let expected = hex::decode("5f4e768d9faaf07a8c7264b937d60ff0b2fd52458e60a235f79c54bea68979dc")?; let io = [input, expected] .into_iter() .map(|w| w.into_iter().map(F::from_canonical_u8).collect::>()) .collect::>(); - air_test_with_min_segments(vm_config, exe, io, 1); + sdk.app_prover(elf)?.prove(io.into())?; + Ok(()) }