Skip to content

Releases: Zokrates/ZoKrates

0.8.8

10 Nov 14:52
157a824
Compare
Choose a tag to compare

This release contains the following changes:

  • Improved safety in range checks
  • Removed experimental branch isolation feature

For a full list of the changes, check out the changelog.

0.8.7

22 Apr 00:18
c537a80
Compare
Choose a tag to compare

This release contains the following features:

  • Experimental support for the Nova proving scheme
  • Reduced memory usage during compilation

For a full list of the changes, check out the changelog.

0.8.6

17 Apr 22:02
e1bf115
Compare
Choose a tag to compare

This release contains the following main features:

  • Faster backend integrations ⚡
  • Sourcemaps and a basic profiler, try it out by running zokrates profile!
  • File size reduction for programs which use assembly blocks

For a full list of the changes, check out the changelog.

0.8.5

28 Mar 21:35
5d67cdb
Compare
Choose a tag to compare

The main feature of this release is a reduction in the memory footprint and computing time of the compiler.

For a full list of the changes, check out the changelog.

0.8.4

31 Jan 14:58
b5f2263
Compare
Choose a tag to compare

This new release of ZoKrates introduces experimental assembly blocks.

For a full list of the changes, check out the changelog.

0.8.3

11 Oct 14:07
d9006cb
Compare
Choose a tag to compare

This release fixes one regression introduced by assert error messages which led to some duplicate contraints not being deduplicated.

For a full list of the changes, check out the changelog.

0.8.2

06 Sep 21:26
f592a4a
Compare
Choose a tag to compare

This new release of ZoKrates introduces some new language features:

  • Shadowing is now allowed ✅
field a = 42;
bool a = true;
  • Functions implicitly return (). For example, the following is now allowed without a return statement:
def main() {
}
  • Casting between types is now easier by importing cast from utils/casts function
u64 a = 42;
u16[4] b = cast(42);
  • A bug in the circom integration was fixed

For a full list of the changes, check out the changelog.

0.8.1

23 Aug 12:59
Compare
Choose a tag to compare

For a full list of the changes, check out the changelog.

0.8.0

07 Jul 15:13
Compare
Choose a tag to compare

This version includes a breaking change in the specification of the ZoKrates domain-specific language:

  • Due to common feedback, the new ZoKrates syntax uses curly braces and semi-colons:
// 0.7
def main():
   return 1

// 0.8
def main() {
   return 1;
}
  • Variables are now Immutable by default. Mutable variables require usage of the new mut keyword.
  • Multi returns are not supported anymore. Tuples can be used instead.
  • A new statement named log enables printing values at run time:
def main(field x) {
   log("x is {}", x);
   return
}

Other notable changes:

  • The libsnark backend and the PGHR13 scheme are no longer supported
  • ZoKrates can now export snarkjs-compatible artifacts

For a full list of the changes, check out the changelog.

0.7.14

31 May 14:46
c09045a
Compare
Choose a tag to compare

The main feature in this new release is the inclusion of the curve and the proving scheme in the proof and verification key. This removes the need to pass these parameters when creating a solidity verifier, printing the proof, and verifying it.

In addition, this release features a range of small bug fixes.

For a full list of the changes, check out the changelog.