Releases: succinctlabs/sp1
Releases · succinctlabs/sp1
v3.0.1-alpha-b976ea6e
📦 Uncategorized
- docs: change docs for updated function call
- PR: #1732
- feat: new precompile secp256r1
- PR: #1612
- fix: lock file
- PR: #1756
- feat: plonk verification with
.bytes()
- PR: #1753
- feat: add issue template
- PR: #1748
- ci: check lock files in ci
- PR: #1761
- chore: lockfile cleanup
- PR: #1763
- chore: add MSRV of 1.79
- PR: #1736
- docs: verifier crate docs
- PR: #1764
- chore: crates substrate_bn version
- PR: #1769
- feat: v3 audit report
- PR: #1770
- feat: more docs about v3
- PR: #1772
- docs: ci optimizations
- PR: #1754
- fix(recursion): avoid double counting children in (cycle tracker) spans
- PR: #1773
- docs: version nits
- PR: #1774
v3.0.0
We're excited to release SP1 v3.0.0! SP1 v3.0.0 comes with two major performance upgrades:
- Optimized phase 1 proving
- Recursion circuit to improve recursion performance
It's available on crates.io with the version tag v3.0.0
.
Changes
- fix: gnark-ffi memory handling
- PR: #1650
- feat: allow run in dev mode
- PR: #1651
- fix: debug constraints
- PR: #1656
- fix: shape for deferred program
- PR: #1654
- feat: deferred support in perf
- PR: #1657
- fix: clippy issues in perf
- PR: #1658
- docs: update onchain usage
- PR: #1652
- fix: add support for tls connections in network-v2 rpc client
- PR: #1655
- fix: remove mention of
sp1
dir in examples' relative paths- PR: #1660
- fix: typo in the solidity section of the book
- PR: #1664
- fix: connect deferred vk root
- PR: #1649
- chore: update docs
- PR: #1671
- feat: update docs for v3 pt 2
- PR: #1672
- feat: update cargo version tag
- PR: #1673
- feat: v3.0.0
- PR: #1670
v3.0.0-rc4
📦 Uncategorized
- feat: v2.0.0
- PR: #1509
- feat: new
include_elf!
macro for importing ELF- PR: #1620
- fix: build errors on custom bin target names
- PR: #1623
- feat(cli): improve
cargo prove new
- PR: #1615
- fix(cuda-prover): dont discard stderr
- PR: #1518
- chore(deps): bump bindgen from 0.69.4 to 0.70.1
- PR: #1404
- chore(deps): bump stacker from 0.1.15 to 0.1.17
- PR: #1464
- fix(sp1-build, workflows): docker tag
- PR: #1636
- feat: phase 1 opts + recursion circuit
- PR: #1638
- feat: update to 3.0.0-rc4
- PR: #1646
- fix: fix docs
- PR: #1632
- refactor: improve cargo build reproducibility
- PR: #1647
- feat: add compiler flags to
BuildArgs
- PR: #1637
- fix: remove cargo environment vars from local build
- PR: #1630
- fix: compatibility with mock verifier contract
- PR: #1297
- fix(sdk): better error handling
- PR: #1643
- chore: fix all typos
- PR: #1626
- feat: v3.0.0-rc4
- PR: #1645
v3.0.0-rc3
📦 Uncategorized
- perf: posedion2 trace opt
- PR: #1365
- feat: make challenger fixed shape
- PR: #1395
- feat: fixed size shrink and wrap for recursion v2
- PR: #1394
- feat: small prog opts
- PR: #1388
- fix everything
- PR: #1406
- feat: merkle tree-based vector commitments
- PR: #1415
- perf: GROTH16 improvements
- PR: #1417
- feat: recursion circuit integration
- PR: #1361
- feat: infrastructure for proof shape merkle proofs
- PR: #1428
- feat: new arithmetic
- PR: #1418
- chore: merge dev
- PR: #1439
- chore: merge dev
- PR: #1442
- chore: merge dev
- PR: #1443
- Revert "chore: merge dev"
- PR: #1448
- chore: merge dev
- PR: #1449
- feat: integration constraints
- PR: #1455
- chore: merge dev
- PR: #1458
- feat: enable fixed shape in recursion circuit
- PR: #1462
- chore: allow optional proof shape in core record and program
- PR: #1460
- chore: merge dev
- PR: #1467
- chore: merge dev
- PR: #1471
- feat: fixed shapes in precompiles
- PR: #1476
- feat: better reduce api
- PR: #1486
- feat: dummy fri proofs
- PR: #1497
- feat: fixed proof shapes
- PR: #1478
- feat: added cuda action
- PR: #1492
- fix: rsp ci test
- PR: #1475
- revert: fix: rsp ci test
- PR: #1515
- perf: local bus
- PR: #1293
- feat: fixed heights for new chips
- PR: #1523
- fix: low memory shards
- PR: #1524
- feat(sdk): send cpu cycles in network
- PR: #1521
- feat: dummy shard proof
- PR: #1527
- refactor: removed use of sudo + docker from cuda crate
- PR: #1517
- fix:
copy_elf_from_output_dir
binary name- PR: #1526
- feat: Add
cycle-tracking
example with multiple binaries- PR: #1529
- feat: vk maps
- PR: #1528
- fix: local cumulative sum check in recursion
- PR: #1531
- fix: rust 1.81 toolchain build issue
- PR: #1534
- fix: uninitialized_memory hashmap issue
- PR: #1536
- ci: test toolchain installation
- PR: #1539
- docs: substrate bn
- PR: #1540
- refactor: move
SP1PublicValues
tosp1-primitives
- PR: #1546
- perf: remove unnecessary materializations of matrix views
- PR: #1547
- chore: implement raw() for groth16 proof
- PR: #1543
- chore: replace
raw()
withbytes()
in fibonacci example- PR: #1549
- feat: public value validity assertions
- PR: #1532
- feat: merge upstream changes
- PR: #1550
- feat: fixed vks in root
- PR: #1551
- feat: root and deferred
- PR: #1552
- fix: check with
is_first
instead ofis_last
in exp reverse bits chip- PR: #1482
- feat: felts to var optimization
- PR: #1553
- fix: gnark ffi fixes
- PR: #1554
- fix: conversions and bits
- PR: #1555
- fix: proof flow for v3
- PR: #1556
- chore: upgrade Rust toolchain to 1.81.0
- PR: #1559
- feat: remove exp reverse bits in wrap
- PR: #1558
- docs: why-use-sp1.md
- PR: #1557
- fix: gnark-ffi Dockerfile caching
- PR: #1564
- chore: merge dev
- PR: #1570
- chore: cleanup
- PR: #1569
- fix: shapes fixing
- PR: #1574
- fix: multi field rate and serialization
- PR: #1575
- fix: execution shard initialization
- PR: #1576
- fix: exit code
- PR: #1577
- fix: vk root in deferred
- PR: #1578
- fix: more shard options
- PR: #1586
- fix:
sp1-recursion-gnark-ffi
rebuilds unnecessarily- PR: #1583
- fix: syscall chip in shards
- PR: #1582
- chore: merge dev
- PR: #1591
- Revert "chore: merge dev"
- PR: #1592
- feat: BabyBear Optimization in GNARK
- PR: #1587
- chore: remove individual example workspaces
- PR: #1566
- chore: cleanup
- PR: #1593
- chore: clippy without
debug_assertions
- PR: #1598
- chore: remove non-existent feature
- PR: #1590
- chore: remove individual test workspaces
- PR: #1597
- fix:
multi_scalar_multiplication
- PR: #1542
- docs: update
- PR: #1585
- chore(sdk): update prost and twirp to 0.13
- PR: #1601
- feat: precompile shapes
- PR: #1600
- feat: runtime opts
- PR: #1579
- feat: trusted setup support
- PR: #1538
- chore: merge dev
- PR: #1603
- chore: Fix typos in documentation
- PR: #1512
- fix:
weierstrass_add
test- PR: #1605
- fix(docs): branch on patched bls12_381
- PR: #1596
- feat: sp1 testing suite
- PR: #1563
- feat: only call entrypoint in zkvm
- PR: #1611
- feat: artifacts
- PR: #1614
- feat: g16/plonk for network
- PR: #1617
- small tweaks
- PR: #1618
- chore: tweaks
- PR: #1619
- feat(sdk): network-v2
- PR: #1607
- chore: cargo machete
- PR: #1606
- feat: shape artifacts in s3
- PR: #1621
v3.0.0-rc1
What's Changed
- feat: v1.2.0-rc1 by @mattstam in #1389
- fix: add nonce constraint to fp by @jtguibas in #1423
- feat: compile sdk to wasm-unknown-unknown by @yuwen01 in #1429
- feat: performance test + add to CI by @mattstam in #1426
- feat: infrastructure for proof shape merkle proofs by @erabinov in #1428
- feat: LookupId struct instead of u128 by @shakedregev in #1427
- fix: memory not added to checkpoint in unconstrained mode by @ctian1 in #1436
- ci: only post perfomance to slack on dev merge by @mattstam in #1431
- feat: new arithmetic by @tamirhemo in #1418
- chore: v1.2.0-rc.2 by @ctian1 in #1438
- chore: bump sp1-gpu version by @ctian1 in #1440
- chore: merge dev by @tamirhemo in #1439
- chore: merge dev by @tamirhemo in #1442
- revert: "fix: add nonce constraint to fp" by @mattstam in #1444
- fix: check branch CI by @ctian1 in #1445
- chore: merge dev by @tamirhemo in #1443
- Revert "chore: merge dev" by @tamirhemo in #1448
- chore: merge dev by @tamirhemo in #1449
- fix: v1.2.0-rc2 by @ctian1 in #1446
- revert: "revert: fix: add nonce constraint to fp" by @mattstam in #1447
- chore: minor eval changes by @mattstam in #1452
- fix(log): add instrument for prover::compress by @lispc in #1457
- fix: oom fixes for rsp by @jtguibas in #1456
- feat: integration constraints by @tamirhemo in #1455
- chore: merge dev by @tamirhemo in #1458
- chore(build): friendly error msg when Cargo.toml is not found by @4rgon4ut in #1459
- feat: enable fixed shape in recursion circuit by @tamirhemo in #1462
- chore: allow optional proof shape in core record and program by @erabinov in #1460
- chore: added rsp example by @yuwen01 in #1454
- feat: v1.2.0 fixes by @jtguibas in #1466
- chore: merge dev by @tamirhemo in #1467
- chore: added json by @puma314 in #1470
- fix: typo in rsp example ci test by @yuwen01 in #1465
- chore: fix crate version by @jtguibas in #1472
- chore: disable lowmem ci test by @yuwen01 in #1474
- chore: merge dev by @tamirhemo in #1471
- feat: autoscale shard / batch size by @yuwen01 in #1435
- fix: example style by @yuwen01 in #1477
- feat: fixed shapes in precompiles by @tamirhemo in #1476
- perf: use
vec_map
paging mmu for executor memory by @tqn in #1461 - docs: Fixed broken link by @lsquaredleland in #1479
- feat: specify version in network client by @mattstam in #1481
- docs:
SP1VerifierGateway
by @ratankaliani in #1483 - fix: segfault on m3 by @yuwen01 in #1484
- perf: optimize
ExecutionReport
andcreate_alu_lookup_id
iff mode is trace by @tqn in #1480 - feat: better reduce api by @tamirhemo in #1486
New Contributors
- @shakedregev made their first contribution in #1427
- @4rgon4ut made their first contribution in #1459
- @lsquaredleland made their first contribution in #1479
Full Changelog: v1.3.0-rc1...release/v3.0.0-rc1
v2.0.0
📦 Uncategorized
- feat: v1.2.0-rc1
- PR: #1389
- fix: add nonce constraint to fp
- PR: #1423
- feat: compile sdk to wasm-unknown-unknown
- PR: #1429
- feat: performance test + add to CI
- PR: #1426
- feat: LookupId struct instead of u128
- PR: #1427
- fix: memory not added to checkpoint in unconstrained mode
- PR: #1436
- ci: only post perfomance to slack on dev merge
- PR: #1431
- chore: v1.2.0-rc.2
- PR: #1438
- chore: bump sp1-gpu version
- PR: #1440
- revert: "fix: add nonce constraint to fp"
- PR: #1444
- fix: check branch CI
- PR: #1445
- fix: v1.2.0-rc2
- PR: #1446
- revert: "revert: fix: add nonce constraint to fp"
- PR: #1447
- chore: minor eval changes
- PR: #1452
- fix(log): add instrument for prover::compress
- PR: #1457
- fix: oom fixes for rsp
- PR: #1456
- chore(build): friendly error msg when Cargo.toml is not found
- PR: #1459
- chore: added rsp example
- PR: #1454
- feat: v1.2.0 fixes
- PR: #1466
- chore: added json
- PR: #1470
- fix: typo in rsp example ci test
- PR: #1465
- chore: fix crate version
- PR: #1472
- feat: v1.2.0 official release
- PR: #1473
- chore: disable lowmem ci test
- PR: #1474
- feat: autoscale shard / batch size
- PR: #1435
- fix: example style
- PR: #1477
- perf: use
vec_map
paging mmu for executor memory- PR: #1461
- docs: Fixed broken link
- PR: #1479
- feat: specify version in network client
- PR: #1481
- docs:
SP1VerifierGateway
- PR: #1483
- fix: segfault on m3
- PR: #1484
- perf: optimize
ExecutionReport
andcreate_alu_lookup_id
iff mode is trace- PR: #1480
- fix: uncomment p2 wide constraint
- PR: #1489
- docs: add optimism chains
- PR: #1491
- fix: eval compress calculation
- PR: #1493
- feat: added RSA example and updated it to use the sha2 patch
- PR: #1494
- fix: core compress pv in sdk
- PR: #1501
- feat: automatic solidity verifier adjustments
- PR: #1496
- docs: use v2 / v3
- PR: #1490
- docs: add groth16
- PR: #1503
- chore: bump version
- PR: #1504
- chore: merge main
- PR: #1508
- docs: fix book link
- PR: #1510
- docs: fix supported versions link
- PR: #1511
- feat: v2.0.0
- PR: #1509
v1.2.0
v1.2.0-rc2
📦 Uncategorized
- fix: make v2 compiler deterministic
- PR: #1420
- fix: add rint and rintf
- PR: #1422
- perf: basic constant propagation for
Imm
instructions in v2 compiler- PR: #1421
- fix: zkvm readme paths
- PR: #1416
- fix: avoid duplicate logic in
read_const
- PR: #1424
- fix: add nonce constraint to fp
- PR: #1423
- feat: compile sdk to wasm-unknown-unknown
- PR: #1429
- feat: performance test + add to CI
- PR: #1426
- feat: LookupId struct instead of u128
- PR: #1427
- fix: memory not added to checkpoint in unconstrained mode
- PR: #1436
- ci: only post perfomance to slack on dev merge
- PR: #1431
- chore: v1.2.0-rc.2
- PR: #1438
- chore: bump sp1-gpu version
- PR: #1440
- revert: "fix: add nonce constraint to fp"
- PR: #1444
- fix: check branch CI
- PR: #1445
- fix: v1.2.0-rc2
- PR: #1446
v1.3.0-rc1
📦 Uncategorized
- perf: posedion2 trace opt
- PR: #1365
- feat: make challenger fixed shape
- PR: #1395
- feat: fixed size shrink and wrap for recursion v2
- PR: #1394
- feat: small prog opts
- PR: #1388
- fix everything
- PR: #1406
- feat: merkle tree-based vector commitments
- PR: #1415
- perf: GROTH16 improvements
- PR: #1417
- feat: recursion circuit integration
- PR: #1361
- fix: make v2 compiler deterministic
- PR: #1420
- fix: add rint and rintf
- PR: #1422
- perf: basic constant propagation for
Imm
instructions in v2 compiler- PR: #1421
- fix: zkvm readme paths
- PR: #1416
- fix: avoid duplicate logic in
read_const
- PR: #1424
v1.2.0-rc1
📦 Uncategorized
- feat: runtime, instructions, and preprocessing
- PR: #1036
- feat: basic re-factor for recursion circuit, Poseidon2-wide table
- PR: #1062
- feat: basic ir circuit compiler
- PR: #1072
- feat: exp_reverse_bits_precompile in core_v2
- PR: #1079
- feat: support poseidon2 permute core-v2 instruction in ir
- PR: #1084
- fix: placeholder branch for
ExpReverseBitsLen
in newAsmCompiler
- PR: #1087
- fix: more complete preprocessed trace generation for poseidon2
- PR: #1094
- feat: circuit-based fri-fold precompile
- PR: #1090
- feat: exp reverse bits in ir
- PR: #1093
- test: exp reverse bits, repeat test for poseidon and hint bits
- PR: #1097
- Merge branch 'dev' into experimental
- PR: #1098
- feat: poseidon2 wide in circuit language
- PR: #1096
- feat: fri fold in ir
- PR: #1108
- Merge branch 'dev' into experimental
- PR: #1148
- feat: support for poseidon2 in the ir
- PR: #1111
- test: rough bench of
compress
with dummy circuit- PR: #1141
- fix: resolve conflicting poseidon2 variants in ir
- PR: #1150
- feat: print instructions in ir and runtime
- PR: #1162
- feat: verifier program challenger
- PR: #1166
- perf: Remove results columns in alu_base table
- PR: #1167
- feat: poseidon hash and compress in ir builder trait
- PR: #1171
- feat: plonk profiling test for recursion circuit
- PR: #1110
- feat: ext2felts instruction
- PR: #1172
- feat: recursion circuit fri fold air constraints
- PR: #1169
- feat: recursion circuit exp reverse bits constraints
- PR: #1173
- chore: created chips directory in recursion core-v2
- PR: #1181
- feat: tracing and runtime errors
- PR: #1187
- feat: verifier circuit
verify_challenges
andverify_two_adic_pcs
- PR: #1174
- feat: cycle tracker spans for
build_wrap_circuit
and v2 circuit- PR: #1206
- feat: recursion circuit p2 wide constraints
- PR: #1205
- Merge branch 'dev' into experimental
- PR: #1161
- perf: remove
read_mult
column, instead use negativewrite_mult
- PR: #1244
- chore: main to dev
- PR: #1266
- chore: update dependencies to v1.1.1
- PR: #1267
- feat: smaller checkpoints
- PR: #1254
- feat: constant memory init table
- PR: #1251
- feat: witness input for v2 recursion
- PR: #1255
- fix: Copy
sp1-helper
binary build- PR: #1279
- feat: add cycle tracker report
- PR: #1275
- feat: recursion circuit public values chip
- PR: #1183
- feat: fptower and tests
- PR: #1239
- feat: acknowledgments in README
- PR: #1285
- chore: dev to exprimental
- PR: #1287
- feat: recursion circuit p2 skinny air constraints
- PR: #1192
- docs: common issues for
syscall_verify_sp1_proof
andignore-rust-version
- PR: #1291
- chore: plonk version
- PR: #1295
- feat:
verify_shard
in v2 verify circuit- PR: #1281
- fix: add bn254 fp to record
- PR: #1304
- feat: couple of traits to genericize verify circuit
- PR: #1305
- chore:
verify_sp1_proof
naming- PR: #1288
- docs: prover network semver
- PR: #1309
- feat: circuit types for the constant proof shape case
- PR: #1311
- fix: memory checkpoints with syscalls
- PR: #1284
- chore: dev to experimental
- PR: #1312
- feat: verify shard in recursion circuit
- PR: #1316
- chore: fix
fp
tests, record- PR: #1315
- feat:
decompress pubkey
- PR: #1318
- fix: allow hint slice syscall code in unconstrained mode
- PR: #1319
- feat: core recursion in circuit
- PR: #1322
- feat: add groth16
- PR: #1313
- feat: Ensure
sp1-sdk
is built inrelease
mode- PR: #1334
- chore: merge experimental into dev
- PR: #1340
- chore: merge dev into experimental pt 2
- PR: #1341
- chore: docs tweaks
- PR: #1302
- fix: reduce field elements before printing in GNARK circuit
- PR: #1332
- feat: default strict align CFLAGS
- PR: #1272
- chore: make state pub
- PR: #1345
- fix: examples ci
- PR: #1347
- fix: tokio block on
- PR: #1346
- perf: runtime optimizations
- PR: #1344
- chore: load tendermint blocks locally
- PR: #1348
- perf: two useful reductions, direct felt2var
- PR: #1277
- perf: felt multiplication in recompute_quotient
- PR: #1337
- refactor: deprecate sp1-helper
- PR: #1268
- feat(cli): vkey command to output program vkey hash
- PR: #1274
- docs:
bn254
Affine Point- PR: #1310
- chore(prover::tests): handle error instead of
unwrap
in e2e test- PR: #1314
- chore: update version to 1.2.0-rc1
- PR: #1351
- fix: don't use range checker in g16
- PR: #1350
- feat: 1.2.0-rc1 cuda prover
- PR: #1353
- fix: public value multiplicities
- PR: #1356
- chore: fixing install guide
- PR: #1357
- feat: gas
- PR: #1354
- feat: add groth16 to Prove
- PR: #1359
- perf: use crate
vec_map
, box largeInstruction
variants- PR: #1360
- chore: rename g16 plonk verifiers
- PR: #1363
- perf: move cycle tracker to
Err
incompile_one
, criterion benchmarks- PR: #1369
- perf:
Box
severalDslIr
variants to bring it under 64 bytes- PR: #1371
- feat: plonk in new circuit
- PR: #1364
- docs:
bls12_381
andbn254
- PR: #1368
- feat: bench
bls12-381
andbn254
tower operations and pairing check- PR: #1370
- feat: unify inner and outer witnesses in recursion circuit
- PR: #1374
- perf: unify variable counters
- PR: #1372
- docs: bench w/ 10 blobs for verify batched kzg proof
- PR: #1377
- docs: precompile guide
- PR: #1375
- chore: Add
BuildArgs
re-export tosp1-helper
- PR: #1367
- fix: bug in exp_reverse_bits memory multiplicity
- PR: #1378
- fix: pass github token into install-toolchain
- PR: #1386
- chore: prepare 1.2.0-rc1
- PR: #1387
- chore: merge main into dev
- PR: #1390
- fix: ci test examples
- PR: #1391
- perf: recursion v2 tracegen
- PR: #1376
- feat: optimize runtime speed on fast
- PR: #1373
- perf: remove 15 cols from poseidon2 wide
- PR: #1397
- fix: ci reference to crates
- PR: #1398
- fix: duplicate crate warning
- PR: #1405
- fix: crate readme paths
- PR: #1407
- fix: docker gnark ffi crate path
- PR: #1408
- fix: put back re-export of
HookEnv
insp1-sdk
- PR: #1410
- fix: docker gnark
- PR: #1411
- fix: handle load mem instructions that write to reg x0
- PR: #1409
- feat: v1.2.0-rc1
- PR: #1389