v0.10.0
What's Changed
We've made quite a few changes this time! This release includes improvements to the guest zkVM, progress towards a pure Rust implementation, work on the Receipt object, an API improvement, and expanded documentation.
Improvements have been made to the guest zkVM:
- Rust standard library is now supported in the guest by @shkoo in #161
- To allow users greater control over guest execution limits, the MethodID code size limit is now configurable by @flaub in #167
- The zkVM guest now has access to more resources by @shkoo in #176
- To improve I/O between the host and guest, A "SendRecv" GPIO call has been added by @shkoo in #173
We've also made progress towards a pure Rust zkVM implementation:
- We've begun implementing the prover in pure Rust (part 1) by @flaub in #139
- The r0vm is also reimplemented in Rust by @shkoo in #174
- While a Rust implementation is underway, we have two Receipt types; to support their conversion, the visibility of a Receipt's journal and seal was changed by @flaub in #162
The following improvements have been made to Receipts and verification:
- The Rust verifier now uses error handling instead of panics by @flaub in #169
- A constructor has been added for the Receipt by @intoverflow in #171
- The Receipt constructor was also added in C++ by @flaub in #172
Our API can now take in-memory buffers:
Lastly, we've improved our documentation:
- Documentation has been added for ntt.rs by @BoltonBailey in #160
- The interactive oracle proof has additional documentation by @pdg744 in #159
- Crates are now alphabetized using cargo-sort by @rlukata in #175
Full Changelog: v0.9.0...v0.10.0