Skip to content

Releases: noir-lang/noir

nightly-2023-09-19

19 Sep 02:23
5a3fb60
Compare
Choose a tag to compare
nightly-2023-09-19 Pre-release
Pre-release
chore: noirjs integration testing (#2744)

nightly-2023-09-18: chore: Make new daily nightly releases be pre-releases and non latest…

18 Sep 02:15
13cc23b
Compare
Choose a tag to compare

nightly-2023-09-17: chore: disabling display location section (#2118)

17 Sep 02:15
5101875
Compare
Choose a tag to compare
Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
Co-authored-by: jfecher <jfecher11@gmail.com>
Co-authored-by: kevaundray <kevtheappdev@gmail.com>

v0.12.0

15 Sep 18:42
0cfd483
Compare
Choose a tag to compare
v0.12.0 Pre-release
Pre-release

0.12.0 (2023-09-15)

⚠ BREAKING CHANGES

  • Change noir-lang/noir-source-resolver to noir-lang/source-resolver (#2718)
  • use american spelling of "serialize" in stdlib (#2675)
  • Restrict packages to contain at most a single contract (#2668)
  • use two limbs for scalar mul (#2602)

Features

  • Add initial version of noir.js (#2681) (e1687c9)
  • Allow methods defined in a contract to be non-entry points (#2687) (2103b2f)
  • Compile circuits and query circuit sizes in parallel for nargo info (#2665) (f173c05)
  • Compile workspace packages in parallel (#2612) (16e5e4d)
  • Handle should_fail_with case (#2541) (291d002)
  • lsp: Add nargo capabilities for test metadata (#2532) (b4ee23e)
  • nargo: Allow installing custom backends from the CLI (#2632) (c0c462c)
  • parser: Allow multiple attributes (#2537) (7cdff2e)
  • traits: Add default and override of methods (#2585) (98c3ba9)

Bug Fixes

Miscellaneous Chores

  • Change noir-lang/noir-source-resolver to noir-lang/source-resolver (#2718) (31e489e)
  • Restrict packages to contain at most a single contract (#2668) (dc3358b)
  • Use american spelling of "serialize" in stdlib (#2675) (56c96d0)

v0.11.1-aztec.0

14 Sep 14:11
2103b2f
Compare
Choose a tag to compare
v0.11.1-aztec.0 Pre-release
Pre-release
Aztec release for 0.11.1

v0.11.1

07 Sep 17:37
70e35b9
Compare
Choose a tag to compare
v0.11.1 Pre-release
Pre-release

0.11.1 (2023-09-07)

Features

Bug Fixes

v0.11.0

07 Sep 13:14
7563845
Compare
Choose a tag to compare
v0.11.0 Pre-release
Pre-release

0.11.0 (2023-09-07)

⚠ BREAKING CHANGES

  • stdlib: Rename fixed_base_scalar_mul to be more descriptive (#2488)
  • ACVM 0.24 (#2504)
  • Update to acvm-backend-barretenberg v0.12.0 (#2377)
  • abi: Replace struct name with fully qualified struct path (#2374)
  • Remove keys from preprocessed artifacts (#2283)

Features

  • Add nargo backend ls and nargo backend use command to switch between backends (#2552) (7471147)
  • Add noirc_abi_wasm crate for ABI encoding in JS (#1945) (669e0da)
  • Add support for brillig call stacks in runtime errors (#2549) (a077391)
  • Apply optimizations to unconstrained code (#2348) (8e0f6c4)
  • aztec_noir: Abstract kernel return types (#2521) (2668ac2)
  • nargo: Add commands to install and uninstall custom backends. (#2575) (28a413c)
  • nargo: Add hidden option to produce JSON output from nargo info (#2542) (14d31a5)
  • Pull Language and Opcode support from backend (#2563) (2d0a5e4)
  • ssa: Replace values which have previously been constrained with simplified value (#2483) (9be750a)
  • stdlib: Grumpkin scalar multiplication API (#2586) (dc34bc4)
  • Support for optional assertion messages (#2491) (5f78772)

Bug Fixes

  • Allow usage of decimal string encoding for fields larger than a i128 (#2547) (d73f30e)
  • aztec_noir: Fix compilation of aztec_library.rs (#2567) (a8d0328)
  • aztec_noir: Generalise loop to not always inject a hasher instance (#2529) (9fe4cfd)
  • Black box func slice handling (#2562) (c67cd7d)
  • Initialize structs during def collection, not name resolution (#2528) (f170529)
  • Make def collector ordering more deterministic (#2515) (d49e0af)
  • Modulo with divisor of zero should fail constraints (#2578) (fe6e2e6)

Miscellaneous Chores

  • abi: Replace struct name with fully qualified struct path (#2374) (0920dd0)
  • ACVM 0.24 (#2504) (f06fbdb)
  • Remove keys from preprocessed artifacts (#2283) (4554287)
  • stdlib: Rename fixed_base_scalar_mul to be more descriptive (#2488) (6efc007)
  • Update to acvm-backend-barretenberg v0.12.0 (#2377) (1467275)

v0.10.5

30 Aug 19:19
91efe44
Compare
Choose a tag to compare

0.10.5 (2023-08-30)

Features

Bug Fixes

  • Implement constant folding during the mem2reg pass (#2464) (5361ebd)
  • ssa: Handle right shift with constants (#2481) (13a8c87)

v0.10.4

29 Aug 20:02
b55f399
Compare
Choose a tag to compare
v0.10.4 Pre-release
Pre-release

0.10.4 (2023-08-29)

Features

  • Add assert_eq keyword (#2137) (b467a2d)
  • Add test(should_fail) attribute for tests that are meant to fail (#2418) (74af99d)
  • Add syntax for specifying function type environments (#2357) (495a479)
  • Add trait definition representation in DefCollector and HIR (#2338) (406a595)
  • attributes: Enable custom attributes (#2395) (179611b)
  • brillig: Added locations for brillig artifacts (#2415) (3771e52)
  • Create equivalence relationships for intermediate witnesses from multiplication (#2414) (cc2a2d8)
  • frontend: Aztec syntactic sugar (feature flagged) (#2403) (a894a6e)
  • nargo: Support optional directory in git dependencies (#2436) (84fdc55)
  • Perform more checks for compile-time arithmetic (#2380) (1be2b1e)
  • Report compilation warnings before errors (#2398) (a1d1267)
  • ssa: Merge slices in if statements with witness conditions (#2347) (76f7e43)
  • ssa: Reuse existing results for duplicated instructions with no side-effects (#2460) (93726c4)
  • Standard library functions can now be called with closure args (#2471) (feb8d0e)
  • Syntax for environment types now works with generics (#2383) (4609c1a)
  • Update to acvm 0.22.0 (#2363) (e050fab)
  • Use equivalence information from equality assertions to simplify circuit (#2378) (ec5b021)

Bug Fixes

  • acir_gen: Pass accurate contents to slice inputs for bb func calls (#2435) (054642b)
  • acir: Attach locations to MemoryOps in ACIR (#2389) (d7d7f22)
  • Closure lvalue capture bugfix (#2457) (632006a)
  • Correct off-by-one errors in lexer spans (#2393) (bbda9b0)
  • Divide by zero should fail to satisfy constraints for Field and ints (#2475) (1b85816)
  • Implement handling of array aliasing in the mem2reg optimization pass (#2463) (7123fa9)
  • Implement new mem2reg pass (#2420) (7714cd0)
  • lsp: Remove duplicated creation of lenses (#2433) (41b568d)
  • parser: Fixes for the parsing of 'where' clauses (#2430) (fa31015)
  • Remove duplicate T in expected T, found T error on tuple assignment (#2360) (c964ee8)
  • Run wasm nodejs tests with no fails (#2387) (67b6710)
  • Show types in error message in same order as in source code (#2353) (feebee4)
  • ssa: Codegen missing check for unary minus (#2413) (1435a86)
  • ssa: Do not optimize for allocates in constant folding (#2466) (9e272f3)
  • ssa: Remove padding from ToRadix call with constant inputs (#2479) (37bb781)

v0.10.3

16 Aug 21:41
2db759f
Compare
Choose a tag to compare
v0.10.3 Pre-release
Pre-release

0.10.3 (2023-08-16)

Features

  • Allow calling higher-order functions with closures (#2335) (75fd3e0)
  • lsp: Add Compile code lens for main function and contracts (#2309) (5fe69c6)
  • lsp: Add Execute code lens for main functions (#2330) (5aa59e0)

Bug Fixes

  • Display warning if last expression of block is unused (#2314) (8110136)