Skip to content

Commit 25b6b10

Browse files
authored
chore: bump SP1 to v6.0.1
* chore: bump SP1 dependencies from v5.1.0 to v6.0.0-beta.1 - Updated all SP1 crates (sp1-sdk, sp1-build, sp1-prover, sp1-core-executor) to v6.0.0-beta.1 - Updated cryptographic precompile patches to sp1-6.0.0-beta.1 versions - Pinned sp1up to v6.0.0-beta.1 in CI workflows - Adapted to SP1 v6 API changes: non-generic Prover trait, async constructors, private ExecutionReport.gas - Removed SyscallCode usage (no longer exported in v6) - Added MaybeProveWithCycles implementation for EnvProver - Preserved SP1_PROVER environment variable support * fix: add protoc installation and fix code formatting SP1 v6's sp1-prover-types crate requires Protocol Buffers compiler. Also fixes rustfmt formatting issues in executor code. * refactor: use EnvProver::new() directly instead of ProverClient::from_env() More explicit and clearer API usage. * fix: restore per-syscall tracking for SP1 v6 The SP1 v6 upgrade changed the import path for SyscallCode from sp1_core_executor::syscalls::SyscallCode to sp1_core_executor::SyscallCode. This restores the per-syscall cycle tracking in the execution report by: - Adding sp1-core-executor and strum dependencies to bin/host - Updating the import path for SyscallCode - Restoring per-syscall headers and record values in CSV output * fix: enable profiling feature for per-phase cycle tracking in SP1 v6 In SP1 v6, cycle_tracker infrastructure is feature-gated behind `profiling`. Without this feature, the ExecutionReport's cycle_tracker HashMap remains empty, causing all per-phase metrics (Inputs deserialization, Initialize Witness DB, Recover Senders, etc.) to return 0. Enable the `profiling` feature on sp1-sdk which propagates to: - sp1-prover/profiling - sp1-core-executor/profiling - sp1-jit/profiling * chore: bump SP1 from v6.0.0-beta.1 to v6.0.0-rc.1 Update all SP1 crate versions, sp1-patches tags, kzg-rs branch, and CI sp1up toolchain version to 6.0.0-rc.1. Note: cargo update pending resolution of substrate-bn package rename in sp1-patches/bn rc.1 tag. * chore: switch SP1 deps from crates.io to git tags SP1 6.0.0-rc.1 crates are not yet published to crates.io. Switch all SP1 workspace deps and client zkvm deps to git tag source. Also fix substrate-bn package rename to substrate-bn-succinct-rs. * chore: revert SP1 deps from git tags back to crates.io version specs * chore: bump SP1 v6.0.0-rc.1 → v6.0.0 * fix: update bn patch package name to substrate-bn-succinct-rs The sp1-patches/bn repo renamed the package from `substrate-bn` to `substrate-bn-succinct-rs` starting from the rc.1 tag. The workspace root Cargo.toml was updated but the sub-crate (bin/client, bin/client-op) patch entries were missed, causing all CI checks to fail with patch resolution errors. * fix: update kzg-rs patch to use master instead of merged branch * chore: use kzg-rs 0.2.8 from crates.io * chore: bump SP1 v6.0.0 → v6.0.1 * fix: use is_multiple_of for Rust 1.91 clippy lint * fix: remove dead ExecutionReportData struct (clippy dead_code) * fix: cargo fmt (extra blank line) * fix: remove unused serde dependency from rsp binary * fix: move serde to dev-dependencies, regenerate lock files
1 parent af7c7e7 commit 25b6b10

File tree

19 files changed

+3801
-2609
lines changed

19 files changed

+3801
-2609
lines changed

.github/workflows/cycle-tracking.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,12 @@ jobs:
1616
- name: "Checkout sources"
1717
uses: "actions/checkout@v4"
1818
with:
19-
fetch-depth: 0
19+
fetch-depth: 0
20+
21+
- name: "Install protoc"
22+
run: |
23+
sudo apt-get update
24+
sudo apt-get install -y protobuf-compiler
2025
2126
- name: "Install sp1up"
2227
run: |
@@ -25,7 +30,7 @@ jobs:
2530
2631
- name: "Install SP1 toolchain"
2732
run: |
28-
sp1up
33+
sp1up -v v6.0.0
2934
3035
- name: "Set up test fixture"
3136
run: |

.github/workflows/pr.yml

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,19 @@ jobs:
4040
- name: "Checkout sources"
4141
uses: "actions/checkout@v4"
4242

43+
- name: "Install protoc"
44+
run: |
45+
sudo apt-get update
46+
sudo apt-get install -y protobuf-compiler
47+
4348
- name: "Install sp1up"
4449
run: |
4550
curl -L https://sp1.succinct.xyz | bash
4651
echo "$HOME/.sp1/bin" >> $GITHUB_PATH
4752
4853
- name: "Install SP1 toolchain"
4954
run: |
50-
sp1up
55+
sp1up -v v6.0.0
5156
5257
- name: "Remove lock files"
5358
run: |
@@ -83,14 +88,19 @@ jobs:
8388
- name: "Checkout sources"
8489
uses: "actions/checkout@v4"
8590

91+
- name: "Install protoc"
92+
run: |
93+
sudo apt-get update
94+
sudo apt-get install -y protobuf-compiler
95+
8696
- name: "Install sp1up"
8797
run: |
8898
curl -L https://sp1.succinct.xyz | bash
8999
echo "$HOME/.sp1/bin" >> $GITHUB_PATH
90100
91101
- name: "Install SP1 toolchain"
92102
run: |
93-
sp1up
103+
sp1up -v v6.0.0
94104
95105
# This step is necessary to generate the ELF files.
96106
- name: "Build"
@@ -109,7 +119,12 @@ jobs:
109119
- name: "Checkout sources"
110120
uses: "actions/checkout@v4"
111121
with:
112-
fetch-depth: 0
122+
fetch-depth: 0
123+
124+
- name: "Install protoc"
125+
run: |
126+
sudo apt-get update
127+
sudo apt-get install -y protobuf-compiler
113128
114129
- name: "Install sp1up"
115130
run: |
@@ -118,7 +133,7 @@ jobs:
118133
119134
- name: "Install SP1 toolchain"
120135
run: |
121-
sp1up
136+
sp1up -v v6.0.0
122137
123138
- name: "Set up test fixture"
124139
run: |

0 commit comments

Comments
 (0)