v0.13.0
We have some breaking changes in v0.13. If you are migrating code from v0.12, please see the Breaking Changes section below for updates you will need to make to your code. We expect our APIs to continue to undergo substantial changes prior to the v1.0 release.
Thanks to community member @austinabell for their contributions to this release!
Breaking Changes
- Receipt verification now takes a Digest reference, not a Digest.
- Now use
receipt.verify(&IMAGE_ID)
where you would previously have usedreceipt.verify(IMAGE_ID)
. (Wherereceipt
is arisc0_zkvm::receipt::Receipt
.)
- Now use
- We have updated our SHA accelerator interface
- Now use
risc0_zkvm::sha::Impl
instead ofrisc0_zkvm::sha::sha
. For example, where you would previously have calledrisc0_zkvm::sha::sha().hash_bytes(&bytes)
in v0.12, now you instead callrisc0_zkvm::sha::Impl::hash_bytes(&bytes)
in v0.13. - There are various other SHA changes, please see our reference documentation for the
risc0_zkvm::sha
andrisc0_zkvm::guest::sha
modules for details.
- Now use
Changelog
- Decrease use of hardcoded set of buffers (accum, code, data), part 1 by @shkoo in #354
- risc0-sys crate / HAL refactor by @mothran in #348
- Add riscv-tests and fix divide extern by @flaub in #359
- Fix bug in decoding memory instructions by @flaub in #361
- Improvements to SHA-256 API by @nategraf in #330
- [NFC] Refactor code in advance of adding support for alternate hashes by @jbruestle in #367
- Fix metal support by @jbruestle in #369
- Reword & re-link zkvm README by @tzerrell in #370
- Update circuit to make it small enough that Metal works. by @jbruestle in #372
- Add GPU to CI by @flaub in #378
- Add support for the Poseidon hash and its use by the CPU + Metal Hals for proving and verifying by @jbruestle in #379
- Add tracing instrumentation to prover to restore granularity by @shkoo in #382
- Migrate factors & sha examples with shared methods by @tzerrell in #374
- Add example tests & GPU support by @tzerrell in #386
- Add SyncSlice for safe(r) multithreading use of slices by @shkoo in #387
- Fix for #381 by @flaub in #391
- Add risc0-build-kernel helper crate by @flaub in #392
- fix: remove unnecessary unsafe sync impls from Elem by @austinabell in #383
New Contributors
- @austinabell made their first contribution in #383
Full Changelog: v0.12.0...v0.13.0