Skip to content

Commit

Permalink
chore: Release Noir(0.29.0) (#4905)
Browse files Browse the repository at this point in the history
🤖 I have created a release *beep* *boop*
---


<details><summary>0.29.0</summary>

## [0.29.0](v0.28.0...v0.29.0)
(2024-05-03)


### ⚠ BREAKING CHANGES

* use `distinct` return value witnesses by default
([#4951](#4951))
* Bit shift is restricted to u8 right operand
([#4907](#4907))

### Features

* Add `#[inline(tag)]` attribute and codegen
([#4913](#4913))
([1ec9cdc](1ec9cdc))
* Add de-sugaring for `impl Trait` in function parameters
([#4919](#4919))
([8aad2e4](8aad2e4))
* Add variable size sha256
([#4920](#4920))
([dbfca58](dbfca58))
* Bit shift is restricted to u8 right operand
([#4907](#4907))
([c4b0369](c4b0369))
* Complex outputs from acir call
([#4952](#4952))
([2e085b9](2e085b9))
* **experimental:** `comptime` globals
([#4918](#4918))
([8a3c7f1](8a3c7f1))
* Handle `BrilligCall` opcodes in the debugger
([#4897](#4897))
([b380dc4](b380dc4))
* Handle `no_predicates` attribute
([#4942](#4942))
([0ce04d3](0ce04d3))
* Handle empty response foreign calls without an external resolver
([#4959](#4959))
([0154bde](0154bde))
* Optimize array sets in if conditions (alternate version)
([#4716](#4716))
([a87c655](a87c655))
* Use `distinct` return value witnesses by default
([#4951](#4951))
([5f1b584](5f1b584))


### Bug Fixes

* Ban self-referential structs
([#4883](#4883))
([800f670](800f670))
* Discard ref counts during unrolling
([#4923](#4923))
([91062db](91062db))
* Ensure where clauses propagated to trait default definitions
([#4894](#4894))
([aaac0f6](aaac0f6))
* Move remove_if_else pass after second inlining
([#4976](#4976))
([96fb3e9](96fb3e9))
* Nested array equality
([#4903](#4903))
([0cf2e2a](0cf2e2a))
* Require for all foldable functions to use distinct return
([#4949](#4949))
([d4c6806](d4c6806))
* Use annotated type when checking declaration
([#4966](#4966))
([f7fa696](f7fa696))
</details>

<details><summary>0.45.0</summary>

## [0.45.0](v0.44.0...v0.45.0)
(2024-05-03)


### ⚠ BREAKING CHANGES

* Bit shift is restricted to u8 right operand
([#4907](#4907))
* contract interfaces and better function calls
(AztecProtocol/aztec-packages#5687)
* change backend width to 4
(AztecProtocol/aztec-packages#5374)
* Use fixed size arrays in black box functions where sizes are known
(AztecProtocol/aztec-packages#5620)
* trap with revert data
(AztecProtocol/aztec-packages#5732)
* **acir:** BrilligCall opcode
(AztecProtocol/aztec-packages#5709)
* remove fixed-length keccak256
(AztecProtocol/aztec-packages#5617)
* storage_layout and `#[aztec(storage)]`
(AztecProtocol/aztec-packages#5387)
* **acir:** Add predicate to call opcode
(AztecProtocol/aztec-packages#5616)
* contract_abi-exports
(AztecProtocol/aztec-packages#5386)
* Brillig typed memory
(AztecProtocol/aztec-packages#5395)
* **acir:** Program and witness stack structure
(AztecProtocol/aztec-packages#5149)
* automatic NoteInterface and NoteGetterOptions auto select
(AztecProtocol/aztec-packages#4508)
* Acir call opcode
(AztecProtocol/aztec-packages#4773)
* Support contracts with no constructor
(AztecProtocol/aztec-packages#5175)
* Internal as a macro
(AztecProtocol/aztec-packages#4898)
* move noir out of yarn-project
(AztecProtocol/aztec-packages#4479)
* note type ids
(AztecProtocol/aztec-packages#4500)
* rename bigint_neg into bigint_sub
(AztecProtocol/aztec-packages#4420)
* Add expression width into acir
(AztecProtocol/aztec-packages#4014)
* init storage macro
(AztecProtocol/aztec-packages#4200)
* **acir:** Move `is_recursive` flag to be part of the circuit
definition (AztecProtocol/aztec-packages#4221)
* Sync commits from `aztec-packages`
([#4144](#4144))
* Breaking changes from aztec-packages
([#3955](#3955))

### Features

* Acir call opcode
(AztecProtocol/aztec-packages#4773)
([c3c9e19](c3c9e19))
* **acir_gen:** Brillig stdlib
([#4848](#4848))
([0c8175c](0c8175c))
* **acir_gen:** Fold attribute at compile-time and initial non inlined
ACIR (AztecProtocol/aztec-packages#5341)
([a0f7474](a0f7474))
* **acir:** Add predicate to call opcode
(AztecProtocol/aztec-packages#5616)
([2bd006a](2bd006a))
* **acir:** BrilligCall opcode
(AztecProtocol/aztec-packages#5709)
([0f9ae0a](0f9ae0a))
* **acir:** Program and witness stack structure
(AztecProtocol/aztec-packages#5149)
([13eb71b](13eb71b))
* **acvm_js:** Execute program
([#4694](#4694))
([386f6d0](386f6d0))
* **acvm:** Execute multiple circuits
(AztecProtocol/aztec-packages#5380)
([a0f7474](a0f7474))
* Add bit size to const opcode
(AztecProtocol/aztec-packages#4385)
([158c8ce](158c8ce))
* Add CMOV instruction to brillig and brillig gen
(AztecProtocol/aztec-packages#5308)
([13eb71b](13eb71b))
* Add expression width into acir
(AztecProtocol/aztec-packages#4014)
([158c8ce](158c8ce))
* Add instrumentation for tracking variables in debugging
([#4122](#4122))
([c58d691](c58d691))
* Add poseidon2 opcode implementation for acvm/brillig, and Noir
([#4398](#4398))
([10e8292](10e8292))
* Add return values to aztec fns
(AztecProtocol/aztec-packages#5389)
([2bd006a](2bd006a))
* Add support for overriding expression width
([#4117](#4117))
([c8026d5](c8026d5))
* Added cast opcode and cast calldata
(AztecProtocol/aztec-packages#4423)
([78ef013](78ef013))
* Allow brillig to read arrays directly from memory
(AztecProtocol/aztec-packages#4460)
([158c8ce](158c8ce))
* Allow nested arrays and vectors in Brillig foreign calls
(AztecProtocol/aztec-packages#4478)
([158c8ce](158c8ce))
* Allow variables and stack trace inspection in the debugger
([#4184](#4184))
([bf263fc](bf263fc))
* Automatic NoteInterface and NoteGetterOptions auto select
(AztecProtocol/aztec-packages#4508)
([13eb71b](13eb71b))
* **avm:** Back in avm context with macro - refactor context
(AztecProtocol/aztec-packages#4438)
([158c8ce](158c8ce))
* **avm:** Brillig CONST of size &gt; u128
(AztecProtocol/aztec-packages#5217)
([c3c9e19](c3c9e19))
* **avm:** Integrate AVM with initializers
(AztecProtocol/aztec-packages#5469)
([2bd006a](2bd006a))
* **aztec-nr:** Initial work for aztec public vm macro
(AztecProtocol/aztec-packages#4400)
([158c8ce](158c8ce))
* Backpropagate constants in ACIR during optimization
([#3926](#3926))
([aad0da0](aad0da0))
* Bit shift is restricted to u8 right operand
([#4907](#4907))
([c4b0369](c4b0369))
* Breaking changes from aztec-packages
([#3955](#3955))
([5be049e](5be049e))
* Brillig heterogeneous memory cells
(AztecProtocol/aztec-packages#5608)
([305bcdc](305bcdc))
* Brillig IR refactor
(AztecProtocol/aztec-packages#5233)
([c3c9e19](c3c9e19))
* Brillig pointer codegen and execution
(AztecProtocol/aztec-packages#5737)
([0f9ae0a](0f9ae0a))
* Brillig typed memory
(AztecProtocol/aztec-packages#5395)
([0bc18c4](0bc18c4))
* Change backend width to 4
(AztecProtocol/aztec-packages#5374)
([0f9ae0a](0f9ae0a))
* Check initializer msg.sender matches deployer from address preimage
(AztecProtocol/aztec-packages#5222)
([c3c9e19](c3c9e19))
* Contract interfaces and better function calls
(AztecProtocol/aztec-packages#5687)
([0f9ae0a](0f9ae0a))
* Contract_abi-exports
(AztecProtocol/aztec-packages#5386)
([2bd006a](2bd006a))
* Evaluation of dynamic assert messages
([#4101](#4101))
([c284e01](c284e01))
* Handle `BrilligCall` opcodes in the debugger
([#4897](#4897))
([b380dc4](b380dc4))
* Impl of missing functionality in new key store
(AztecProtocol/aztec-packages#5750)
([0f9ae0a](0f9ae0a))
* Init storage macro
(AztecProtocol/aztec-packages#4200)
([158c8ce](158c8ce))
* Initial Earthly CI
(AztecProtocol/aztec-packages#5069)
([c3c9e19](c3c9e19))
* Internal as a macro
(AztecProtocol/aztec-packages#4898)
([5f57ebb](5f57ebb))
* **nargo:** Handle call stacks for multiple Acir calls
([#4711](#4711))
([5b23171](5b23171))
* New brillig field operations and refactor of binary operations
(AztecProtocol/aztec-packages#5208)
([c3c9e19](c3c9e19))
* Note type ids
(AztecProtocol/aztec-packages#4500)
([78ef013](78ef013))
* Remove replacement of boolean range opcodes with `AssertZero` opcodes
([#4107](#4107))
([dac0e87](dac0e87))
* Restore hashing args via slice for performance
(AztecProtocol/aztec-packages#5539)
([2bd006a](2bd006a))
* Signed integer division and modulus in brillig gen
(AztecProtocol/aztec-packages#5279)
([c3c9e19](c3c9e19))
* **simulator:** Fetch return values at circuit execution
(AztecProtocol/aztec-packages#5642)
([305bcdc](305bcdc))
* Storage_layout and `#[aztec(storage)]`
(AztecProtocol/aztec-packages#5387)
([2bd006a](2bd006a))
* Support contracts with no constructor
(AztecProtocol/aztec-packages#5175)
([c3c9e19](c3c9e19))
* Sync `aztec-packages`
([#4011](#4011))
([fee2452](fee2452))
* Sync commits from `aztec-packages`
([#4068](#4068))
([7a8f3a3](7a8f3a3))
* Sync commits from `aztec-packages`
([#4144](#4144))
([0205d3b](0205d3b))
* Sync from aztec-packages
([#4483](#4483))
([fe8f277](fe8f277))
* Sync from noir
(AztecProtocol/aztec-packages#5234)
([c3c9e19](c3c9e19))
* Sync from noir
(AztecProtocol/aztec-packages#5286)
([c3c9e19](c3c9e19))
* Sync from noir
(AztecProtocol/aztec-packages#5572)
([2bd006a](2bd006a))
* Sync from noir
(AztecProtocol/aztec-packages#5619)
([2bd006a](2bd006a))
* Sync from noir
(AztecProtocol/aztec-packages#5697)
([305bcdc](305bcdc))
* Sync from noir
(AztecProtocol/aztec-packages#5794)
([0f9ae0a](0f9ae0a))
* Sync from noir
(AztecProtocol/aztec-packages#5814)
([0f9ae0a](0f9ae0a))
* Sync from noir
(AztecProtocol/aztec-packages#5935)
([1b867b1](1b867b1))
* Sync from noir
(AztecProtocol/aztec-packages#5955)
([1b867b1](1b867b1))
* Sync from noir
(AztecProtocol/aztec-packages#5999)
([1b867b1](1b867b1))
* Trap with revert data
(AztecProtocol/aztec-packages#5732)
([0f9ae0a](0f9ae0a))
* Use fixed size arrays in black box functions where sizes are known
(AztecProtocol/aztec-packages#5620)
([0f9ae0a](0f9ae0a))
* Variable length returns
(AztecProtocol/aztec-packages#5633)
([305bcdc](305bcdc))


### Bug Fixes

* **acvm:** Mark outputs of Opcode::Call solvable
([#4708](#4708))
([8fea405](8fea405))
* Avoid huge unrolling in hash_args
(AztecProtocol/aztec-packages#5703)
([305bcdc](305bcdc))
* Catch panics from EC point creation (e.g. the point is at infinity)
([#4790](#4790))
([645dba1](645dba1))
* Don't reuse brillig with slice arguments
(AztecProtocol/aztec-packages#5800)
([0f9ae0a](0f9ae0a))
* Issue 4682 and add solver for unconstrained bigintegers
([#4729](#4729))
([e4d33c1](e4d33c1))
* Noir test incorrect reporting
(AztecProtocol/aztec-packages#4925)
([5f57ebb](5f57ebb))
* Proper field inversion for bigints
([#4802](#4802))
([b46d0e3](b46d0e3))
* Remove panic from `init_log_level` in `acvm_js`
([#4195](#4195))
([2e26530](2e26530))
* Return error rather instead of panicking on invalid circuit
([#3976](#3976))
([67201bf](67201bf))


### Miscellaneous Chores

* **acir:** Move `is_recursive` flag to be part of the circuit
definition (AztecProtocol/aztec-packages#4221)
([158c8ce](158c8ce))
* Move noir out of yarn-project
(AztecProtocol/aztec-packages#4479)
([78ef013](78ef013))
* Remove fixed-length keccak256
(AztecProtocol/aztec-packages#5617)
([305bcdc](305bcdc))
* Rename bigint_neg into bigint_sub
(AztecProtocol/aztec-packages#4420)
([158c8ce](158c8ce))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
  • Loading branch information
kevaundray committed May 6, 2024
1 parent 96fb3e9 commit 2da2899
Show file tree
Hide file tree
Showing 134 changed files with 10,252 additions and 52 deletions.
4 changes: 2 additions & 2 deletions .release-please-manifest.json
@@ -1,4 +1,4 @@
{
".": "0.28.0",
"acvm-repo": "0.44.0"
".": "0.29.0",
"acvm-repo": "0.45.0"
}
33 changes: 33 additions & 0 deletions CHANGELOG.md
@@ -1,5 +1,38 @@
# Changelog

## [0.29.0](https://github.com/noir-lang/noir/compare/v0.28.0...v0.29.0) (2024-05-03)


### ⚠ BREAKING CHANGES

* use `distinct` return value witnesses by default ([#4951](https://github.com/noir-lang/noir/issues/4951))
* Bit shift is restricted to u8 right operand ([#4907](https://github.com/noir-lang/noir/issues/4907))

### Features

* Add `#[inline(tag)]` attribute and codegen ([#4913](https://github.com/noir-lang/noir/issues/4913)) ([1ec9cdc](https://github.com/noir-lang/noir/commit/1ec9cdc7013e867db3672d27e3a6104e4b7e7eef))
* Add de-sugaring for `impl Trait` in function parameters ([#4919](https://github.com/noir-lang/noir/issues/4919)) ([8aad2e4](https://github.com/noir-lang/noir/commit/8aad2e45acbe08afc3902db95a83324f822c35eb))
* Add variable size sha256 ([#4920](https://github.com/noir-lang/noir/issues/4920)) ([dbfca58](https://github.com/noir-lang/noir/commit/dbfca58a817ee1f1512e3e02138119f363c3d12b))
* Bit shift is restricted to u8 right operand ([#4907](https://github.com/noir-lang/noir/issues/4907)) ([c4b0369](https://github.com/noir-lang/noir/commit/c4b03691feca17ef268acab523292f3051f672ea))
* Complex outputs from acir call ([#4952](https://github.com/noir-lang/noir/issues/4952)) ([2e085b9](https://github.com/noir-lang/noir/commit/2e085b935b143c1305b70cd7ae86907b61a45fc0))
* **experimental:** `comptime` globals ([#4918](https://github.com/noir-lang/noir/issues/4918)) ([8a3c7f1](https://github.com/noir-lang/noir/commit/8a3c7f1c11666ed5140a63a5aa296ef417c97bfa))
* Handle `BrilligCall` opcodes in the debugger ([#4897](https://github.com/noir-lang/noir/issues/4897)) ([b380dc4](https://github.com/noir-lang/noir/commit/b380dc44de5c9f8de278ece3d531ebbc2c9238ba))
* Handle `no_predicates` attribute ([#4942](https://github.com/noir-lang/noir/issues/4942)) ([0ce04d3](https://github.com/noir-lang/noir/commit/0ce04d3ea8734b76d96f5dd0fb2a6cdd4081969e))
* Handle empty response foreign calls without an external resolver ([#4959](https://github.com/noir-lang/noir/issues/4959)) ([0154bde](https://github.com/noir-lang/noir/commit/0154bdef9f6dfe45497d77ecbf3904dcc138b8d7))
* Optimize array sets in if conditions (alternate version) ([#4716](https://github.com/noir-lang/noir/issues/4716)) ([a87c655](https://github.com/noir-lang/noir/commit/a87c655c6c8c077c71e3372cc9181b7870348a3d))
* Use `distinct` return value witnesses by default ([#4951](https://github.com/noir-lang/noir/issues/4951)) ([5f1b584](https://github.com/noir-lang/noir/commit/5f1b58470779e977293323d10ab9a8f0857ea29e))


### Bug Fixes

* Ban self-referential structs ([#4883](https://github.com/noir-lang/noir/issues/4883)) ([800f670](https://github.com/noir-lang/noir/commit/800f670b63a5a2ae08f09a86dae767089f7f67af))
* Discard ref counts during unrolling ([#4923](https://github.com/noir-lang/noir/issues/4923)) ([91062db](https://github.com/noir-lang/noir/commit/91062db84a749bf191eae9ce487a2315cc74bfb2))
* Ensure where clauses propagated to trait default definitions ([#4894](https://github.com/noir-lang/noir/issues/4894)) ([aaac0f6](https://github.com/noir-lang/noir/commit/aaac0f6bffbe11eb090145354f1b82919bb93cb7))
* Move remove_if_else pass after second inlining ([#4976](https://github.com/noir-lang/noir/issues/4976)) ([96fb3e9](https://github.com/noir-lang/noir/commit/96fb3e94b3a2f7b586d17ea9445f44267f5d9c6d))
* Nested array equality ([#4903](https://github.com/noir-lang/noir/issues/4903)) ([0cf2e2a](https://github.com/noir-lang/noir/commit/0cf2e2a1b8d247bed03ba5b7b1be5cd30f0d51b2))
* Require for all foldable functions to use distinct return ([#4949](https://github.com/noir-lang/noir/issues/4949)) ([d4c6806](https://github.com/noir-lang/noir/commit/d4c68066ab35ce1c52510cf0c038fb627a0677c3))
* Use annotated type when checking declaration ([#4966](https://github.com/noir-lang/noir/issues/4966)) ([f7fa696](https://github.com/noir-lang/noir/commit/f7fa69661006e1e10ddeecee1cdf8f024d6bc3e9))

## [0.28.0](https://github.com/noir-lang/noir/compare/v0.27.0...v0.28.0) (2024-04-24)


Expand Down
54 changes: 27 additions & 27 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 8 additions & 8 deletions Cargo.toml
Expand Up @@ -41,7 +41,7 @@ resolver = "2"

[workspace.package]
# x-release-please-start-version
version = "0.28.0"
version = "0.29.0"
# x-release-please-end
authors = ["The Noir Team <team@noir-lang.org>"]
edition = "2021"
Expand All @@ -52,13 +52,13 @@ repository = "https://github.com/noir-lang/noir/"
[workspace.dependencies]

# ACVM workspace dependencies
acir_field = { version = "0.44.0", path = "acvm-repo/acir_field", default-features = false }
acir = { version = "0.44.0", path = "acvm-repo/acir", default-features = false }
acvm = { version = "0.44.0", path = "acvm-repo/acvm" }
brillig = { version = "0.44.0", path = "acvm-repo/brillig", default-features = false }
brillig_vm = { version = "0.44.0", path = "acvm-repo/brillig_vm", default-features = false }
acvm_blackbox_solver = { version = "0.44.0", path = "acvm-repo/blackbox_solver", default-features = false }
bn254_blackbox_solver = { version = "0.44.0", path = "acvm-repo/bn254_blackbox_solver", default-features = false }
acir_field = { version = "0.45.0", path = "acvm-repo/acir_field", default-features = false }
acir = { version = "0.45.0", path = "acvm-repo/acir", default-features = false }
acvm = { version = "0.45.0", path = "acvm-repo/acvm" }
brillig = { version = "0.45.0", path = "acvm-repo/brillig", default-features = false }
brillig_vm = { version = "0.45.0", path = "acvm-repo/brillig_vm", default-features = false }
acvm_blackbox_solver = { version = "0.45.0", path = "acvm-repo/blackbox_solver", default-features = false }
bn254_blackbox_solver = { version = "0.45.0", path = "acvm-repo/bn254_blackbox_solver", default-features = false }

# Noir compiler workspace dependencies
fm = { path = "compiler/fm" }
Expand Down

0 comments on commit 2da2899

Please sign in to comment.