Releases: risc0/risc0
v0.20.0-rc.1
Full Changelog: v0.19.0...v0.20.0-rc.1
v0.19.1
What's Changed
- Update benchmarks Cargo.lock by @flaub in #1066
- docs(website): Add dev-mode instructions by @Cardosaum in #1033
- Backporting commits for upcoming 0.19.1 by @flaub in #1099
- Backport commits to release-0.19 by @flaub in #1122
- Release v0.19.1-rc.1 by @flaub in #1126
- Workaround for git lfs issue by @flaub in #1063
- Release v0.19.1 by @flaub in #1134
Full Changelog: v0.19.0...v0.19.1
v0.19.1-rc.1
What's Changed
- Update benchmarks Cargo.lock by @flaub in #1066
- docs(website): Add dev-mode instructions by @Cardosaum in #1033
- Backporting commits for upcoming 0.19.1 by @flaub in #1099
- Backport commits to release-0.19 by @flaub in #1122
- Release v0.19.1-rc.1 by @flaub in #1126
Full Changelog: v0.19.0...v0.19.1-rc.1
v0.19.0
What's Changed
- adding directory structure to template readme by @pdg744 in #851
- load_elf: ensure that vaddr is word-aligned and substitute 4 -> WORD_SIZE by @SchmErik in #879
- clarifying image vs imageid by @pdg744 in #875
- Fix broken link by @tzerrell in #876
- Fix broken Waldo links by @tzerrell in #849
- Ethereum-Relay: fix empty journal on dev-mode by @capossele in #883
- load_elf: change maximum memory address to SYSTEM.start() by @SchmErik in #878
- Combine HAL kernels by @flaub in #889
- Executor: bail for very large cycle counts by @SchmErik in #886
- Update refernce to accelerated cryto forks by @nategraf in #884
- Fault proof part 1 by @SchmErik in #824
- Revert "Fault proof part 1 (#824)" by @flaub in #902
- cleaning up
docs
directory by @pdg744 in #881 - chore(crates-validator): Use std when compiling tfhe by @Cardosaum in #859
- zkvm: move tempfile dependency as a dev-dependency by @SchmErik in #901
- Update RISC0 datasheet by @capossele in #897
- Added additional Bonsai docs to default_prover by @mothran in #904
- Added get_version to zkvm / bonsai version check by @mothran in #899
- Add experimental cargo-risczero test command and support for building rust-runtime.a by @nategraf in #646
- zkVM tests: add feature flag to build multi-test with docker environment by @SchmErik in #912
- Add smartcore based ZKML example by @Roee-87 in #914
- Revive Fault Proof Part 1 by @SchmErik in #920
- Add minimal Substrate WASM runtime for compatibility check by @justinfrevert in #911
- adding dev mode feature flag to README by @3lkn in #909
- Fix names of voting functions by @nategraf in #917
- Prepare for client-only zkvm usage by @flaub in #908
- Fix to allow risc0-zkvm to be published by @flaub in #936
- executor: add address checks for ecalls by @SchmErik in #949
- Remove unnecessary clone by @capossele in #956
- Accept JSON as payload for relay 's /v1/callbacks by @DefiCake in #948
- fix(relay): Retry upon TCP connection error by @Cardosaum in #954
- Bundle r0vm with cargo-risczero by @flaub in #959
- adding directory readmes by @pdg744 in #915
- Add release workflow by @flaub in #960
- Update bootstrap control_id target directory by @tzerrell in #961
- Add support for merge queue by @flaub in #962
- guest memory: place stack below text/code by @SchmErik in #950
- Use cargo-machete to identify and drop unused crates by @flaub in #964
- Restore voting-machine example by @flaub in #965
- Migrate website to risc0 repository by @flaub in #971
- Add doc-test for website by @flaub in #973
- SmartCore SVM test and updating Jupyter notebook to include install guide by @Roee-87 in #933
- adding info for upcoming study club sessions by @pdg744 in #974
- Some corrections / clarifications for hello-world example by @tbro in #976
- Setup github pages preview by @flaub in #978
- Add retries to risczero install downloads by @flaub in #972
- Begin Poseidon2 implementation by @jbruestle in #977
- Use PBKDF2 in the password checker example by @nategraf in #910
- Recursion is here! by @flaub in #984
- Enable full stack trace on profiler by @capossele in #890
- Cleanup of template README by @flaub in #994
- Run extended formatting rules by @nategraf in #993
- Benchmarks by @capossele in #893
- refactor(crates-validator): Use external config file for crates by @Cardosaum in #903
- Fix datasheet CI cycle counter by @capossele in #1004
- Replace add_input with write and write_slice by @flaub in #1002
- Use poseidon as default by @capossele in #1003
- fix typos by @xiaolou86 in #1001
- fix(ci-nightly): Fix path for crates validator config file by @Cardosaum in #1009
- Move cycle counter to examples by @capossele in #1007
- chore(crates-validator): Fix compatibility version error by @Cardosaum in #1011
- Server/Client: connect lift, join, and identityP254 to zkvm by @SchmErik in #1015
- Use ecsda_verify instead of benchmark guest in ecdsa profiling example by @nategraf in #1019
- Default Executor with FileSegmentRef by @capossele in #1014
- Release v0.19.0-rc.1 by @flaub in #1020
- Fix warning about using features in patch for smartcore by @nategraf in #1017
- study club update by @pdg744 in #1031
- cargo-risczero new: add --guest-name option by @SchmErik in #1032
- Improve devex for Journal decoding by @flaub in #1036
- Add session ID to the Relay API response by @capossele in #1010
- Prepare for 0.19.0-rc.2 by @flaub in #1039
- Bump version and update install instructions by @flaub in #1042
- template: add input to guest and write to journal from guest by @SchmErik in #1044
- Release 0.19.0-rc.3 by @flaub in #1045
- Docs: Add examples page into zkVM section by @it09 in #1037
- Fix missing LFS issue by @flaub in #1049
- Release v0.19.0-rc.4 by @flaub in #1057
- Release v0.19.0 by @flaub in #1064
New Contributors
- @Roee-87 made their first contribution in #914
- @DefiCake made their first contribution in #948
- @tbro made their first contribution in #976
- @xiaolou86 made their first contribution in #1001
- @it09 made their first contribution in #1037
Full Changelog: v0.18.0...v0.19.0
v0.19.0-rc.4
v0.19.0-rc.3
What's Changed
- template: add input to guest and write to journal from guest by @SchmErik in #1044
- Release 0.19.0-rc.3 by @flaub in #1045
Full Changelog: v0.19.0-rc.2...v0.19.0-rc.3
v0.19.0-rc.2
What's Changed
- Fix warning about using features in patch for smartcore by @nategraf in #1017
- study club update by @pdg744 in #1031
- cargo-risczero new: add --guest-name option by @SchmErik in #1032
- Improve devex for Journal decoding by @flaub in #1036
- Add session ID to the Relay API response by @capossele in #1010
- Prepare for 0.19.0-rc.2 by @flaub in #1039
- Bump version and update install instructions by @flaub in #1042
Full Changelog: v0.19.0-rc.1...v0.19.0-rc.2
v0.19.0-rc.1
What's Changed
- Update bootstrap control_id target directory by @tzerrell in #961
- Add support for merge queue by @flaub in #962
- guest memory: place stack below text/code by @SchmErik in #950
- Use cargo-machete to identify and drop unused crates by @flaub in #964
- Restore voting-machine example by @flaub in #965
- Migrate website to risc0 repository by @flaub in #971
- Add doc-test for website by @flaub in #973
- SmartCore SVM test and updating Jupyter notebook to include install guide by @Roee-87 in #933
- adding info for upcoming study club sessions by @pdg744 in #974
- Some corrections / clarifications for hello-world example by @tbro in #976
- Setup github pages preview by @flaub in #978
- Add retries to risczero install downloads by @flaub in #972
- Begin Poseidon2 implementation by @jbruestle in #977
- Use PBKDF2 in the password checker example by @nategraf in #910
- Recursion is here! by @flaub in #984
- Enable full stack trace on profiler by @capossele in #890
- Cleanup of template README by @flaub in #994
- Run extended formatting rules by @nategraf in #993
- Benchmarks by @capossele in #893
- refactor(crates-validator): Use external config file for crates by @Cardosaum in #903
- Fix datasheet CI cycle counter by @capossele in #1004
- Replace add_input with write and write_slice by @flaub in #1002
- Use poseidon as default by @capossele in #1003
- fix typos by @xiaolou86 in #1001
- fix(ci-nightly): Fix path for crates validator config file by @Cardosaum in #1009
- Move cycle counter to examples by @capossele in #1007
- chore(crates-validator): Fix compatibility version error by @Cardosaum in #1011
- Server/Client: connect lift, join, and identityP254 to zkvm by @SchmErik in #1015
- Use ecsda_verify instead of benchmark guest in ecdsa profiling example by @nategraf in #1019
- Default Executor with FileSegmentRef by @capossele in #1014
- Release v0.19.0-rc.1 by @flaub in #1020
New Contributors
- @tbro made their first contribution in #976
- @xiaolou86 made their first contribution in #1001
Full Changelog: v0.19.0-alpha.1...v0.19.0-rc.1
v0.19.0-alpha.1
What's Changed
- adding directory structure to template readme by @pdg744 in #851
- load_elf: ensure that vaddr is word-aligned and substitute 4 -> WORD_SIZE by @SchmErik in #879
- clarifying image vs imageid by @pdg744 in #875
- Fix broken link by @tzerrell in #876
- Fix broken Waldo links by @tzerrell in #849
- Ethereum-Relay: fix empty journal on dev-mode by @capossele in #883
- load_elf: change maximum memory address to SYSTEM.start() by @SchmErik in #878
- Combine HAL kernels by @flaub in #889
- Executor: bail for very large cycle counts by @SchmErik in #886
- Update refernce to accelerated cryto forks by @nategraf in #884
- Fault proof part 1 by @SchmErik in #824
- Revert "Fault proof part 1 (#824)" by @flaub in #902
- cleaning up
docs
directory by @pdg744 in #881 - chore(crates-validator): Use std when compiling tfhe by @Cardosaum in #859
- zkvm: move tempfile dependency as a dev-dependency by @SchmErik in #901
- Update RISC0 datasheet by @capossele in #897
- Added additional Bonsai docs to default_prover by @mothran in #904
- Added get_version to zkvm / bonsai version check by @mothran in #899
- Add experimental cargo-risczero test command and support for building rust-runtime.a by @nategraf in #646
- zkVM tests: add feature flag to build multi-test with docker environment by @SchmErik in #912
- Add smartcore based ZKML example by @Roee-87 in #914
- Revive Fault Proof Part 1 by @SchmErik in #920
- Add minimal Substrate WASM runtime for compatibility check by @justinfrevert in #911
- adding dev mode feature flag to README by @3lkn in #909
- Fix names of voting functions by @nategraf in #917
- Prepare for client-only zkvm usage by @flaub in #908
- Fix to allow risc0-zkvm to be published by @flaub in #936
- executor: add address checks for ecalls by @SchmErik in #949
- Remove unnecessary clone by @capossele in #956
- Accept JSON as payload for relay 's /v1/callbacks by @DefiCake in #948
- fix(relay): Retry upon TCP connection error by @Cardosaum in #954
- Bundle r0vm with cargo-risczero by @flaub in #959
- adding directory readmes by @pdg744 in #915
- Add release workflow by @flaub in #960
New Contributors
Full Changelog: v0.18.0...v0.19.0-alpha.1
v0.18.0
Our 0.18 release upgrades the Bonsai SDK with Groth16 SNARK seals for better on-chain verification, better error handling, and more. In the zkVM, this release separates host and guest build toolchains and also supports reproducibly building the same ImageID for the same zkVM code by using a consistent Docker environment.
Thank you to community members @austinabell and @winor30 for their contributions to this release!
Important and Breaking Changes
- Separate host and guest build toolchains, allowing the use of different versions of
rustc
for host and guest code. This has allowed us to move the default host toolchain to thestable
channel. The guest toolchain remains on a nightly release of 1.69. - Add
cargo risczero build
command to build zkVM guest programs using a Docker container, which enables ImageIDs to remain consistent across builds. See #799 for details. - Bonsai Ethereum contracts now use Forge as a subprocess, so building Bonsai code will now require installing Foundry tools.
- Bonsai SDK:
upload_img
andupload_img_file
no longer returnImageIdExists
errors. Instead they return a boolean,true
if the image exists on the server. - Bonsai SDK: Bonsai now returns Groth16 SNARK seals as well as the journal and
post_state_digest
for easy on-chain verification. - Expand Prover support to better work with remote provers like Bonsai.
- Fix bug #820, correcting iterative calls to SHA2
- Add 128 bits of entropy to the memory state, addressing a potential privacy issue where the
SystemState
root in theReceiptMetadata
was not guaranteed to be a hiding commitment.
What's Changed
- Update factors README to match 0.17 by @pdg744 in #787
- aligning quick start by @pdg744 in #789
- fixing references to host code by @pdg744 in #790
- update groth16 control ID to 0.17 by @capossele in #797
- Recover non processed blocks after websocket connection loss by @Cardosaum in #762
- Move bootstraps over to xtask by @flaub in #791
- Add start of ExternalProver by @flaub in #801
- Reproducible builds via Docker by @capossele in #799
- Fix #800 by @flaub in #803
- Include tools in build-toolchain by @flaub in #804
- Print VerificationError message instead of variant by @rlukata in #809
- Reorg to support client/server architecture by @flaub in #808
- Refactor Bonsai as workspace and use Foundry as external dependency by @nategraf in #810
- Support for stable host toolchain by @flaub in #817
- Support for devcontainers: Fix #815 by @flaub in #819
- Re-enable the Governance Example test with zkVM Integration by @nategraf in #823
- feat(crate-validator): Add domain-specific crates by @Cardosaum in #792
- zkp: HAL cleanups and perf bump by @flaub in #826
- crate validator: run cargo risczero install by @SchmErik in #830
- Make easier to update the RISC Zero verifier contract upon version bump by @capossele in #831
- zkvm: Protobuf based client/server IPC by @flaub in #814
- crate validator: harden cargo risczero install by @SchmErik in #838
- fix: multi-package guest-list generation by @hashcashier in #839
- Update prost requirement from 0.11 to 0.12 by @dependabot in #837
- Update prost-build requirement from 0.11 to 0.12 by @dependabot in #836
- Add entropy to memory state to protect privacy by @nategraf in #812
- Fix full segment bug by @capossele in #844
- fix: include debug error message for unspecified error by @austinabell in #846
- Exports needed for recursion by @flaub in #847
- Added state and error_msg to bonsai-sdk by @mothran in #843
- Remove Bonsai SDK ImageIdExists error by @mothran in #848
- Add no_std support for risc0-binfmt by @flaub in #857
- Make Control Id Parameters to Constructor by @jjtny1 in #813
- Add a description of Step 2 by @winor30 in #793
- Bonsai: Migrate SnarkProof types to match backend by @mothran in #853
- Expose
host::api::Connector
to users by @tzerrell in #864 - (Ready to land with v0.18.0) Re-naming
factors
-->hello-world
; moving tutorial out of readme by @pdg744 in #765 - Update docs for 0.18 by @tzerrell in #868
- risc0-binfmt: use no_std for anyhow and elf by @SchmErik in #869
- Added
--po2
flag toloop.rs
by @mothran in #858 - Rename DynProverImpl to ProverServer by @flaub in #871
- Additional documentation on reproducible builds by @heavypackets in #872
- Bump version to 0.18.0 by @flaub in #874
New Contributors
- @jjtny1 made their first contribution in #813
- @winor30 made their first contribution in #793
- @heavypackets made their first contribution in #872
Full Changelog: v0.17.0...v0.18.0