-
Notifications
You must be signed in to change notification settings - Fork 199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add set
and set_unchecked
methods to Vec
and BoundedVec
#5241
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you:
- Add set & set_unchecked to
Vec
as well? - Document each of these?
I've added |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Just waiting on the additions to the stdlib docs
Ah you mean the online docs, gotcha. |
🚀 Deployed on https://666b32998ce0787cffe92154--noir-docs.netlify.app |
set
and set_unchecked
methods to BoundedVec
set
and set_unchecked
methods to Vec
and BoundedVec
FYI @noir-lang/developerrelations on Noir doc changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
* master: (43 commits) feat(experimental): Implement macro calls & splicing into `Expr` values (#5203) feat: add BoundedVec::map (#5250) chore: add no predicate to poseidon2 (#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (#5241) fix: Disable `if` optimization (#5240) chore: redo typo PR by dropbigfish (#5234) chore: add property tests for ABI encoding (#5216) chore: thread generics through ACIR/brillig gen (#5120) chore: copy across typo PR script from aztec-packages (#5235) chore(docs): fixing trailing slash issue (#5233) fix: add support for nested arrays returned by oracles (#5132) chore: Parse macros (#5229) chore: Optimize the elaborator (#5230) fix(elaborator): Fix regression introduced by lazy-global changes (#5223) fix(elaborator): Fix duplicate methods error (#5225) chore: fixing all relative paths (#5220) chore: push code related to ABI gen into `noirc_driver` (#5218) chore: avoid `bn254_blackbox_solver` polluting feature flags (#5141) chore!: remove `distinct` keyword (#5219) feat: Sync from aztec-packages (#5222) ...
chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
🤖 I have created a release *beep* *boop* --- <details><summary>0.31.0</summary> ## [0.31.0](v0.30.0...v0.31.0) (2024-06-17) ### ⚠ BREAKING CHANGES * remove `dep::` prefix ([#4946](#4946)) * remove `distinct` keyword ([#5219](#5219)) * remove `param_witnesses` and `return_witnesses` from ABI ([#5154](#5154)) * add session id to foreign call RPC requests ([#5205](#5205)) * restrict noir word size to u32 ([#5180](#5180)) * separate proving from `noir_js` ([#5072](#5072)) * switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) * specify databus arrays for BB (AztecProtocol/aztec-packages#6239) * **stdlib:** eddsa function using turbofish ([#5050](#5050)) ### Features * `pxe.addNullifiedNote(...)` (AztecProtocol/aztec-packages#6948) ([7de19f5](7de19f5)) * Activate return_data in ACIR opcodes ([#5080](#5080)) ([c9fda3c](c9fda3c)) * Add `as_witness` builtin function in order to constrain a witness to be equal to a variable ([#4641](#4641)) ([faf5bd8](faf5bd8)) * Add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` ([#5241](#5241)) ([1849389](1849389)) * Add BoundedVec::map ([#5250](#5250)) ([da1549c](da1549c)) * Add intrinsic to get if running inside an unconstrained context ([#5098](#5098)) ([281ebf2](281ebf2)) * Add native rust implementation of schnorr signature verification ([#5053](#5053)) ([fab1c35](fab1c35)) * Add session id to foreign call RPC requests ([#5205](#5205)) ([14adafc](14adafc)) * Consider block parameters in variable liveness ([#5097](#5097)) ([e4eb5f5](e4eb5f5)) * **experimental:** Implement macro calls & splicing into `Expr` values ([#5203](#5203)) ([d9b4712](d9b4712)) * Implement println in the comptime interpreter ([#5197](#5197)) ([7f08343](7f08343)) * Implement turbofish operator ([#3542](#3542)) ([226724e](226724e)) * Make ACVM generic across fields ([#5114](#5114)) ([70f374c](70f374c)) * Move abi demonomorphizer to noir_codegen and use noir_codegen in protocol types (AztecProtocol/aztec-packages#6302) ([436bbda](436bbda)) * Move to_radix to a blackbox (AztecProtocol/aztec-packages#6294) ([436bbda](436bbda)) * **nargo:** Hidden option to show contract artifact paths written by `nargo compile` (AztecProtocol/aztec-packages#6131) ([ff67e14](ff67e14)) * Place return value witnesses directly after function arguments ([#5142](#5142)) ([1252b5f](1252b5f)) * Private Kernel Recursion (AztecProtocol/aztec-packages#6278) ([436bbda](436bbda)) * Proper padding in ts AES and constrained AES in body and header computations (AztecProtocol/aztec-packages#6269) ([436bbda](436bbda)) * Remove `dep::` prefix ([#4946](#4946)) ([d6d0ae2](d6d0ae2)) * Remove conditional compilation of `bn254_blackbox_solver` ([#5058](#5058)) ([9420d7c](9420d7c)) * Remove external blackbox solver from acir simulator (AztecProtocol/aztec-packages#6586) ([a40a9a5](a40a9a5)) * Replace stdlib poseidon implementation with optimized version ([#5122](#5122)) ([11e98f3](11e98f3)) * Restrict noir word size to u32 ([#5180](#5180)) ([bdb2bc6](bdb2bc6)) * Separate proving from `noir_js` ([#5072](#5072)) ([c93c738](c93c738)) * Separate runtimes of SSA functions before inlining ([#5121](#5121)) ([69eca9b](69eca9b)) * Specify databus arrays for BB (AztecProtocol/aztec-packages#6239) ([436bbda](436bbda)) * Standardize pedersen functions to return `EmbeddedCurvePoint` ([#5190](#5190)) ([3b85b36](3b85b36)) * **stdlib:** Eddsa function using turbofish ([#5050](#5050)) ([7936262](7936262)) * Support casting in globals ([#5164](#5164)) ([6d3e732](6d3e732)) * Switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6280) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6332) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6573) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6986) ([7de19f5](7de19f5)) * ToRadix BB + avm transpiler support (AztecProtocol/aztec-packages#6330) ([436bbda](436bbda)) ### Bug Fixes * Add support for nested arrays returned by oracles ([#5132](#5132)) ([f846879](f846879)) * Apply self type from generic trait constraint before instantiating identifiers ([#5087](#5087)) ([2b4755c](2b4755c)) * Auto dereference trait methods in the elaborator ([#5124](#5124)) ([56c1a85](56c1a85)) * Check for public args in aztec functions (AztecProtocol/aztec-packages#6355) ([436bbda](436bbda)) * Disable `if` optimization ([#5240](#5240)) ([a2816db](a2816db)) * **elaborator:** Fix duplicate methods error ([#5225](#5225)) ([87a1d8e](87a1d8e)) * **elaborator:** Fix regression introduced by lazy-global changes ([#5223](#5223)) ([fde432a](fde432a)) * **elaborator:** Invert unconstrained check ([#5176](#5176)) ([967c0fa](967c0fa)) * **elaborator:** Lazily elaborate globals ([#5191](#5191)) ([9c99a97](9c99a97)) * Error for allocate instructions in acir-gen ([#5200](#5200)) ([58c7532](58c7532)) * **experimental elaborator:** Avoid calling `add_generics` twice on trait methods ([#5108](#5108)) ([7d8c0a3](7d8c0a3)) * **experimental elaborator:** Clear generics after elaborating type aliases ([#5136](#5136)) ([b0a7d0b](b0a7d0b)) * **experimental elaborator:** Fix `impl Trait` when `--use-elaborator` is selected ([#5138](#5138)) ([7ea5962](7ea5962)) * **experimental elaborator:** Fix definition kind of globals and tuple patterns with `--use-elaborator` flag ([#5139](#5139)) ([a140dec](a140dec)) * **experimental elaborator:** Fix duplicate `resolve_type` on self type and don't leak a trait impl's generics ([#5102](#5102)) ([db561e2](db561e2)) * **experimental elaborator:** Fix frontend tests when `--use-elaborator` flag is specified ([#5145](#5145)) ([d6122eb](d6122eb)) * **experimental elaborator:** Fix global values used in the elaborator ([#5135](#5135)) ([e73cdbb](e73cdbb)) * **experimental elaborator:** Fix globals which use function calls ([#5172](#5172)) ([ab0b1a8](ab0b1a8)) * **experimental elaborator:** Fix panic in the elaborator ([#5082](#5082)) ([ffcb410](ffcb410)) * **experimental elaborator:** Only call `add_generics` once ([#5091](#5091)) ([f5d2946](f5d2946)) * Fix panic in `get_global_let_statement` ([#5177](#5177)) ([b769b01](b769b01)) * **frontend:** Call trait method with mut self from generic definition ([#5041](#5041)) ([89846cf](89846cf)) * **frontend:** Correctly monomorphize turbofish functions ([#5049](#5049)) ([fd772e7](fd772e7)) * **frontend:** Resolve object types from method calls a single time ([#5131](#5131)) ([3afe023](3afe023)) * Temporarily revert to_radix blackbox (AztecProtocol/aztec-packages#6304) ([436bbda](436bbda)) * Use plain integer addresses for opcodes in DAP disassembly view ([#4941](#4941)) ([d43ba1b](d43ba1b)) * Use predicate for curve operations ([#5076](#5076)) ([145b909](145b909)) * Wrapping in signed division ([#5134](#5134)) ([29baeb4](29baeb4)) ### Miscellaneous Chores * Remove `distinct` keyword ([#5219](#5219)) ([1d62c59](1d62c59)) * Remove `param_witnesses` and `return_witnesses` from ABI ([#5154](#5154)) ([21562ae](21562ae)) </details> <details><summary>0.47.0</summary> ## [0.47.0](v0.46.0...v0.47.0) (2024-06-17) ### ⚠ BREAKING CHANGES * add session id to foreign call RPC requests ([#5205](#5205)) * restrict noir word size to u32 ([#5180](#5180)) * switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) * specify databus arrays for BB (AztecProtocol/aztec-packages#6239) * remove `Opcode::Brillig` from ACIR (AztecProtocol/aztec-packages#5995) * AES blackbox (AztecProtocol/aztec-packages#6016) * 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) ### Features * `multi_scalar_mul` blackbox func (AztecProtocol/aztec-packages#6097) ([73a635e](73a635e)) * `variable_base_scalar_mul` blackbox func (AztecProtocol/aztec-packages#6039) ([73a635e](73a635e)) * 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)) * Activate return_data in ACIR opcodes ([#5080](#5080)) ([c9fda3c](c9fda3c)) * **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 native rust implementation of schnorr signature verification ([#5053](#5053)) ([fab1c35](fab1c35)) * Add native rust implementations of pedersen functions ([#4871](#4871)) ([fb039f7](fb039f7)) * 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 session id to foreign call RPC requests ([#5205](#5205)) ([14adafc](14adafc)) * Added cast opcode and cast calldata (AztecProtocol/aztec-packages#4423) ([78ef013](78ef013)) * AES blackbox (AztecProtocol/aztec-packages#6016) ([73a635e](73a635e)) * 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 > 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)) * 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)) * Dynamic assertion payloads v2 (AztecProtocol/aztec-packages#5949) ([73a635e](73a635e)) * 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)) * Increase default expression width to 4 ([#4995](#4995)) ([f01d309](f01d309)) * 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)) * Make ACVM generic across fields ([#5114](#5114)) ([70f374c](70f374c)) * Move abi demonomorphizer to noir_codegen and use noir_codegen in protocol types (AztecProtocol/aztec-packages#6302) ([436bbda](436bbda)) * Move to_radix to a blackbox (AztecProtocol/aztec-packages#6294) ([436bbda](436bbda)) * **nargo:** Handle call stacks for multiple Acir calls ([#4711](#4711)) ([5b23171](5b23171)) * **nargo:** Hidden option to show contract artifact paths written by `nargo compile` (AztecProtocol/aztec-packages#6131) ([ff67e14](ff67e14)) * New brillig field operations and refactor of binary operations (AztecProtocol/aztec-packages#5208) ([c3c9e19](c3c9e19)) * Note type ids (AztecProtocol/aztec-packages#4500) ([78ef013](78ef013)) * Parsing non-string assertion payloads in noir js (AztecProtocol/aztec-packages#6079) ([73a635e](73a635e)) * Private Kernel Recursion (AztecProtocol/aztec-packages#6278) ([436bbda](436bbda)) * Proper padding in ts AES and constrained AES in body and header computations (AztecProtocol/aztec-packages#6269) ([436bbda](436bbda)) * Remove conditional compilation of `bn254_blackbox_solver` ([#5058](#5058)) ([9420d7c](9420d7c)) * Remove external blackbox solver from acir simulator (AztecProtocol/aztec-packages#6586) ([a40a9a5](a40a9a5)) * Restore hashing args via slice for performance (AztecProtocol/aztec-packages#5539) ([2bd006a](2bd006a)) * Restrict noir word size to u32 ([#5180](#5180)) ([bdb2bc6](bdb2bc6)) * Separate runtimes of SSA functions before inlining ([#5121](#5121)) ([69eca9b](69eca9b)) * Set aztec private functions to be recursive (AztecProtocol/aztec-packages#6192) ([73a635e](73a635e)) * 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)) * Specify databus arrays for BB (AztecProtocol/aztec-packages#6239) ([436bbda](436bbda)) * Storage_layout and `#[aztec(storage)]` (AztecProtocol/aztec-packages#5387) ([2bd006a](2bd006a)) * Support contracts with no constructor (AztecProtocol/aztec-packages#5175) ([c3c9e19](c3c9e19)) * Switch `bb` over to read ACIR from nargo artifacts (AztecProtocol/aztec-packages#6283) ([436bbda](436bbda)) * 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)) * Sync from noir (AztecProtocol/aztec-packages#6280) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6332) ([436bbda](436bbda)) * Sync from noir (AztecProtocol/aztec-packages#6573) ([436bbda](436bbda)) * ToRadix BB + avm transpiler support (AztecProtocol/aztec-packages#6330) ([436bbda](436bbda)) * 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)) * Add support for nested arrays returned by oracles ([#5132](#5132)) ([f846879](f846879)) * 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)) * Check for public args in aztec functions (AztecProtocol/aztec-packages#6355) ([436bbda](436bbda)) * 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)) * Temporarily revert to_radix blackbox (AztecProtocol/aztec-packages#6304) ([436bbda](436bbda)) ### 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 `Opcode::Brillig` from ACIR (AztecProtocol/aztec-packages#5995) ([73a635e](73a635e)) * 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). --------- Co-authored-by: kevaundray <kevtheappdev@gmail.com>
chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…lues (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…lues (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…nctions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…etadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…t of a function (noir-lang/noir#5303) fix: update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…21) (noir-lang/noir#5318) fix: skip emission of brillig calls which will never be executed (noir-lang/noir#5314) feat: Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) chore: Bundle SSA Evaluator Options (noir-lang/noir#5317) fix: Replace panic in monomorphization with an error (noir-lang/noir#5305) fix(nargo_fmt): Account for spaces before the generic list of a function (noir-lang/noir#5303) fix: update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
…21) (noir-lang/noir#5318) fix: skip emission of brillig calls which will never be executed (noir-lang/noir#5314) feat: Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) chore: Bundle SSA Evaluator Options (noir-lang/noir#5317) fix: Replace panic in monomorphization with an error (noir-lang/noir#5305) fix(nargo_fmt): Account for spaces before the generic list of a function (noir-lang/noir#5303) fix: update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218)
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: add back Pedersen blackbox functions (revert PR 5221) (noir-lang/noir#5318) fix: skip emission of brillig calls which will never be executed (noir-lang/noir#5314) feat: Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) chore: Bundle SSA Evaluator Options (noir-lang/noir#5317) fix: Replace panic in monomorphization with an error (noir-lang/noir#5305) fix(nargo_fmt): Account for spaces before the generic list of a function (noir-lang/noir#5303) fix: update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218) END_COMMIT_OVERRIDE --------- Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com> Co-authored-by: TomAFrench <tom@tomfren.ch>
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: add back Pedersen blackbox functions (revert PR 5221) (noir-lang/noir#5318) fix: skip emission of brillig calls which will never be executed (noir-lang/noir#5314) feat: Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) chore: Bundle SSA Evaluator Options (noir-lang/noir#5317) fix: Replace panic in monomorphization with an error (noir-lang/noir#5305) fix(nargo_fmt): Account for spaces before the generic list of a function (noir-lang/noir#5303) fix: update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) fix: fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) chore: refactor test case generation in build.rs (noir-lang/noir#5280) fix: handle struct with nested arrays in oracle return values (noir-lang/noir#5244) feat: build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) fix: Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) chore: Pedersen commitment in Noir (noir-lang/noir#5221) chore: pedersen hash in Noir (noir-lang/noir#5217) fix: Don't lazily elaborate functions (noir-lang/noir#5282) fix: avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) fix: avoid duplicating constant arrays (noir-lang/noir#5287) feat: add fuzzer for Noir programs (noir-lang/noir#5251) feat: Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) feat: implement comptime support for `as_slice` builtin (noir-lang/noir#5276) chore: create separate crate just for noir artifacts (noir-lang/noir#5162) feat: add support for wildcard types (noir-lang/noir#5275) chore: replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) fix: use proper serialization in `AbiValue` (noir-lang/noir#5270) chore: simplify compilation flow to write to file immediately (noir-lang/noir#5265) feat: implement comptime support for `array_len` builtin (noir-lang/noir#5272) chore: Use the elaborator by default (noir-lang/noir#5246) chore: Release Noir(0.31.0) (noir-lang/noir#5166) feat!: remove `dep::` prefix (noir-lang/noir#4946) feat: Sync from aztec-packages (noir-lang/noir#5242) chore: replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) chore: add no-predicate to hash implementations (noir-lang/noir#5253) feat(experimental): Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) feat: add BoundedVec::map (noir-lang/noir#5250) chore: add no predicate to poseidon2 (noir-lang/noir#5252) feat: add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) fix: Disable `if` optimization (noir-lang/noir#5240) chore: redo typo PR by dropbigfish (noir-lang/noir#5234) chore: add property tests for ABI encoding (noir-lang/noir#5216) chore: thread generics through ACIR/brillig gen (noir-lang/noir#5120) chore: copy across typo PR script from aztec-packages (noir-lang/noir#5235) chore(docs): fixing trailing slash issue (noir-lang/noir#5233) fix: add support for nested arrays returned by oracles (noir-lang/noir#5132) chore: Parse macros (noir-lang/noir#5229) chore: Optimize the elaborator (noir-lang/noir#5230) fix(elaborator): Fix regression introduced by lazy-global changes (noir-lang/noir#5223) fix(elaborator): Fix duplicate methods error (noir-lang/noir#5225) chore: fixing all relative paths (noir-lang/noir#5220) chore: push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218) END_COMMIT_OVERRIDE --------- Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com> Co-authored-by: TomAFrench <tom@tomfren.ch>
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.45.0</summary> ## [0.45.0](aztec-package-v0.44.0...aztec-package-v0.45.0) (2024-07-02) ### Bug Fixes * Devnet deployment issues ([#7197](#7197)) ([9cf4904](9cf4904)) </details> <details><summary>barretenberg.js: 0.45.0</summary> ## [0.45.0](barretenberg.js-v0.44.0...barretenberg.js-v0.45.0) (2024-07-02) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.45.0</summary> ## [0.45.0](aztec-packages-v0.44.0...aztec-packages-v0.45.0) (2024-07-02) ### ⚠ BREAKING CHANGES * error on too large integer value (noir-lang/noir#5371) * rename struct-specific TypeDefinition -> StructDefinition (noir-lang/noir#5356) * extend storage read oracle to receive address and block number ([#7243](#7243)) * split storage access oracles ([#7237](#7237)) * remove `dep::` prefix (noir-lang/noir#4946) ### Features * `mod.nr` entrypoint (noir-lang/noir#5039) ([bb5cbab](bb5cbab)) * `static_assert` builtin (noir-lang/noir#5342) ([eb9e9f6](eb9e9f6)) * Add `map`, `fold`, `reduce`, `any`, and `all` for slices (noir-lang/noir#5331) ([f2abb4e](f2abb4e)) * Add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) ([ed815a3](ed815a3)) * Add BoundedVec::map (noir-lang/noir#5250) ([ed815a3](ed815a3)) * Add fuzzer for Noir programs (noir-lang/noir#5251) ([ed815a3](ed815a3)) * Add new lenses for encryted notes ([#7238](#7238)) ([c07cf2c](c07cf2c)) * Add outgoing keys support to getEvents ([#7239](#7239)) ([77c304e](77c304e)) * Add support for wildcard types (noir-lang/noir#5275) ([ed815a3](ed815a3)) * **avm:** Calldata gadget preliminaries ([#7227](#7227)) ([79e8588](79e8588)) * Build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) ([ed815a3](ed815a3)) * Constant Honk proof sizes ([#6954](#6954)) ([17c8d3a](17c8d3a)) * Disable nargo color output if stderr is tty (noir-lang/noir#5346) ([eb9e9f6](eb9e9f6)) * **docs:** Macros explainer ([#7172](#7172)) ([bb2ebfc](bb2ebfc)) * Error on too large integer value (noir-lang/noir#5371) ([bb5cbab](bb5cbab)) * Example of private token transfer event ([#7242](#7242)) ([99ce26f](99ce26f)) * **experimental:** Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) ([ed815a3](ed815a3)) * Extend storage read oracle to receive address and block number ([#7243](#7243)) ([153b201](153b201)) * **frontend:** Explicit numeric generics and type kinds (noir-lang/noir#5155) ([f2abb4e](f2abb4e)) * **frontend:** Where clause on impl (noir-lang/noir#5320) ([f2abb4e](f2abb4e)) * Function selector opcode in AVM ([#7244](#7244)) ([dde47e9](dde47e9)) * Implement comptime support for `array_len` builtin (noir-lang/noir#5272) ([ed815a3](ed815a3)) * Implement comptime support for `as_slice` builtin (noir-lang/noir#5276) ([ed815a3](ed815a3)) * Insert trait impls into the program from type annotations (noir-lang/noir#5327) ([f2abb4e](f2abb4e)) * Let `should_fail_with` check that the failure reason contains the expected message (noir-lang/noir#5319) ([f2abb4e](f2abb4e)) * Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) ([ed815a3](ed815a3)) * Private refunds ([#7226](#7226)) ([6fafff6](6fafff6)) * Remove `dep::` prefix (noir-lang/noir#4946) ([ed815a3](ed815a3)) * Remove event selector in logs from public context ([#7192](#7192)) ([646d45a](646d45a)) * Rename struct-specific TypeDefinition -> StructDefinition (noir-lang/noir#5356) ([bb5cbab](bb5cbab)) * Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) ([ed815a3](ed815a3)) * Split storage access oracles ([#7237](#7237)) ([51f7d65](51f7d65)) * **stdlib:** Update stdlib to use explicit numeric generics (noir-lang/noir#5306) ([f2abb4e](f2abb4e)) * Store shared mutable hash ([#7169](#7169)) ([868606e](868606e)) * Sync from aztec-packages (noir-lang/noir#5242) ([ed815a3](ed815a3)) * Sync from aztec-packages (noir-lang/noir#5340) ([f2abb4e](f2abb4e)) * Sync from aztec-packages (noir-lang/noir#5347) ([eb9e9f6](eb9e9f6)) * Sync from aztec-packages (noir-lang/noir#5377) ([bb5cbab](bb5cbab)) * Unconstrained variants for event emission ([#7251](#7251)) ([6d093e3](6d093e3)) * Unify unencrypted log emission and decoding ([#7232](#7232)) ([354dba2](354dba2)) * Update rebuild script ([#7225](#7225)) ([af59247](af59247)) * Use runtime loops for brillig array initialization (noir-lang/noir#5243) ([f2abb4e](f2abb4e)) * Wonky rollups ([#7189](#7189)) ([1de3746](1de3746)) ### Bug Fixes * Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) ([ed815a3](ed815a3)) * Add support for nested arrays returned by oracles (noir-lang/noir#5132) ([ed815a3](ed815a3)) * Address compiler warnings coming from stdlib (noir-lang/noir#5351) ([eb9e9f6](eb9e9f6)) * Avoid duplicating constant arrays (noir-lang/noir#5287) ([ed815a3](ed815a3)) * Avoid panic in type system (noir-lang/noir#5332) ([f2abb4e](f2abb4e)) * Avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) ([ed815a3](ed815a3)) * Benchmark prover e2e test with proving ([#7175](#7175)) ([431c14c](431c14c)) * Devnet deployment issues ([#7197](#7197)) ([9cf4904](9cf4904)) * Disable `if` optimization (noir-lang/noir#5240) ([ed815a3](ed815a3)) * **docs:** Historical reference library updates ([#7166](#7166)) ([b3409c4](b3409c4)) * Don't benchmark the "prove" command as it doesn't exist anymore (noir-lang/noir#5323) ([f2abb4e](f2abb4e)) * Don't lazily elaborate functions (noir-lang/noir#5282) ([ed815a3](ed815a3)) * **elaborator:** Fix duplicate methods error (noir-lang/noir#5225) ([ed815a3](ed815a3)) * **elaborator:** Fix regression introduced by lazy-global changes (noir-lang/noir#5223) ([ed815a3](ed815a3)) * Error when a local function is called in a comptime context (noir-lang/noir#5334) ([f2abb4e](f2abb4e)) * Fix authwit package ([#7204](#7204)) ([98ccd41](98ccd41)) * Fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) ([ed815a3](ed815a3)) * Fix tokenization of unquoted types in macros (noir-lang/noir#5326) ([f2abb4e](f2abb4e)) * Fix usage of `#[abi(tag)]` attribute with elaborator (noir-lang/noir#5298) ([f2abb4e](f2abb4e)) * Handle struct with nested arrays in oracle return values (noir-lang/noir#5244) ([ed815a3](ed815a3)) * Ignore calls to `Intrinsic::AsWitness` during brillig codegen (noir-lang/noir#5350) ([eb9e9f6](eb9e9f6)) * Implement generic functions in the interpreter (noir-lang/noir#5330) ([f2abb4e](f2abb4e)) * **nargo_fmt:** Account for spaces before the generic list of a function (noir-lang/noir#5303) ([ed815a3](ed815a3)) * Replace panic in monomorphization with an error (noir-lang/noir#5305) ([ed815a3](ed815a3)) * Reran pil->cpp codegen & encode_and_encrypt_event_with_randomness fix ([#7247](#7247)) ([fa15a45](fa15a45)) * Runtime brillig bigint id assignment (noir-lang/noir#5369) ([bb5cbab](bb5cbab)) * Skip emission of brillig calls which will never be executed (noir-lang/noir#5314) ([ed815a3](ed815a3)) * TS LSP being slow ([#7181](#7181)) ([e934e87](e934e87)) * Update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) ([ed815a3](ed815a3)) * Use proper serialization in `AbiValue` (noir-lang/noir#5270) ([ed815a3](ed815a3)) ### Miscellaneous * `static_assert` error message fix and split into is-dynamic and is-false (noir-lang/noir#5353) ([eb9e9f6](eb9e9f6)) * Add back Pedersen blackbox functions (revert PR 5221) (noir-lang/noir#5318) ([ed815a3](ed815a3)) * Add log_hash as input in log emission in private context ([#7249](#7249)) ([8b3dfe9](8b3dfe9)) * Add no predicate to poseidon2 (noir-lang/noir#5252) ([ed815a3](ed815a3)) * Add no-predicate to hash implementations (noir-lang/noir#5253) ([ed815a3](ed815a3)) * Add property tests for ABI encoding (noir-lang/noir#5216) ([ed815a3](ed815a3)) * Address TODO in `compat.nr` (noir-lang/noir#5339) ([f2abb4e](f2abb4e)) * **avm-transpiler:** Better error messages ([#7217](#7217)) ([27051ad](27051ad)) * **avm:** Remove trailing minus zero in codegen ([#7185](#7185)) ([f3c8166](f3c8166)) * Avoid building contracts when producing gates report ([#7136](#7136)) ([25507e6](25507e6)) * Bump `bb` to 0.43.0 (noir-lang/noir#5321) ([f2abb4e](f2abb4e)) * Bundle SSA Evaluator Options (noir-lang/noir#5317) ([ed815a3](ed815a3)) * **ci:** Trigger a noir sync every morning at 8am ([#7280](#7280)) ([412c016](412c016)) * Copy across typo PR script from aztec-packages (noir-lang/noir#5235) ([ed815a3](ed815a3)) * Create separate crate just for noir artifacts (noir-lang/noir#5162) ([ed815a3](ed815a3)) * **docs:** Fixing trailing slash issue (noir-lang/noir#5233) ([ed815a3](ed815a3)) * Fix examples (noir-lang/noir#5357) ([eb9e9f6](eb9e9f6)) * Fix migration notes ([#7279](#7279)) ([51d93eb](51d93eb)) * Fix negative tests in AVM circuit for context input lookups ([#7261](#7261)) ([ad2f654](ad2f654)) * Fixing all relative paths (noir-lang/noir#5220) ([ed815a3](ed815a3)) * Generate PIL constants from via constants gen ([#7258](#7258)) ([244ef7e](244ef7e)) * Gets rid of unencrypted emit in private_context ([#7236](#7236)) ([3e6d88e](3e6d88e)) * Improve authwit comments/docs ([#7180](#7180)) ([051ab9e](051ab9e)) * Misc cleanup in simulator ([#7203](#7203)) ([eb00830](eb00830)) * Optimize the elaborator (noir-lang/noir#5230) ([ed815a3](ed815a3)) * Parse macros (noir-lang/noir#5229) ([ed815a3](ed815a3)) * Pedersen commitment in Noir (noir-lang/noir#5221) ([ed815a3](ed815a3)) * Pedersen hash in Noir (noir-lang/noir#5217) ([ed815a3](ed815a3)) * Private tail circuits ([#7148](#7148)) ([9e67e7d](9e67e7d)) * Pull out change to expression splitting from sync PR ([#7215](#7215)) ([b4f50a5](b4f50a5)) * Pull out foreign call nested array changes ([#7216](#7216)) ([1faaaf5](1faaaf5)) * Pull out noir-lang/noir[#5120](#5120) ([#7205](#7205)) ([c5dc094](c5dc094)) * Pull out pedersen generator builtin from sync PR ([#7210](#7210)) ([412f02e](412f02e)) * Pull out SSA changes from sync PR ([#7209](#7209)) ([141e137](141e137)) * Push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218) ([ed815a3](ed815a3)) * Redo typo PR by dropbigfish (noir-lang/noir#5234) ([ed815a3](ed815a3)) * Refactor test case generation in build.rs (noir-lang/noir#5280) ([ed815a3](ed815a3)) * Release Noir(0.31.0) (noir-lang/noir#5166) ([ed815a3](ed815a3)) * Remove `is_unconstrained_fn` field from elaborator (noir-lang/noir#5335) ([f2abb4e](f2abb4e)) * Remove 4738 ref ([#7254](#7254)) ([97d997c](97d997c)) * Remove a log file ([#7201](#7201)) ([83bb218](83bb218)) * Remove commented code ([#7231](#7231)) ([2740d60](2740d60)) * Remove panic for unimplemented trait dispatch (noir-lang/noir#5329) ([f2abb4e](f2abb4e)) * Replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) ([ed815a3](ed815a3)) * Replace `regression_5202` with more manageably sized program (noir-lang/noir#5345) ([eb9e9f6](eb9e9f6)) * Replace cached `in_contract` with `in_contract()` method (noir-lang/noir#5324) ([f2abb4e](f2abb4e)) * Replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) ([ed815a3](ed815a3)) * Replace relative paths to noir-protocol-circuits ([e83b07b](e83b07b)) * Replace relative paths to noir-protocol-circuits ([eca8587](eca8587)) * Replace relative paths to noir-protocol-circuits ([b9ddf43](b9ddf43)) * Replace relative paths to noir-protocol-circuits ([6f817e8](6f817e8)) * Replace relative paths to noir-protocol-circuits ([f9bf0a4](f9bf0a4)) * Replicate noir-lang/noir[#4946](#4946) ([#7202](#7202)) ([b5c07d8](b5c07d8)) * Simplify compilation flow to write to file immediately (noir-lang/noir#5265) ([ed815a3](ed815a3)) * Split off fuzzer, abi changes and `noirc_artifacts` from sync ([#7208](#7208)) ([255d752](255d752)) * Thread generics through ACIR/brillig gen (noir-lang/noir#5120) ([ed815a3](ed815a3)) * Use `push_err` more in elaborator (noir-lang/noir#5336) ([f2abb4e](f2abb4e)) * Use options.limit as upper limit for note-getter loop ([#7253](#7253)) ([8ff669b](8ff669b)) * Use prefix op_ for every instruction in avm_trace.hpp ([#7214](#7214)) ([7ed7558](7ed7558)) * Use the elaborator by default (noir-lang/noir#5246) ([ed815a3](ed815a3)) </details> <details><summary>barretenberg: 0.45.0</summary> ## [0.45.0](barretenberg-v0.44.0...barretenberg-v0.45.0) (2024-07-02) ### Features * **avm:** Calldata gadget preliminaries ([#7227](#7227)) ([79e8588](79e8588)) * Constant Honk proof sizes ([#6954](#6954)) ([17c8d3a](17c8d3a)) * Function selector opcode in AVM ([#7244](#7244)) ([dde47e9](dde47e9)) * Update rebuild script ([#7225](#7225)) ([af59247](af59247)) ### Bug Fixes * Benchmark prover e2e test with proving ([#7175](#7175)) ([431c14c](431c14c)) * Reran pil->cpp codegen & encode_and_encrypt_event_with_randomness fix ([#7247](#7247)) ([fa15a45](fa15a45)) ### Miscellaneous * **avm:** Remove trailing minus zero in codegen ([#7185](#7185)) ([f3c8166](f3c8166)) * Fix negative tests in AVM circuit for context input lookups ([#7261](#7261)) ([ad2f654](ad2f654)) * Generate PIL constants from via constants gen ([#7258](#7258)) ([244ef7e](244ef7e)) * Use prefix op_ for every instruction in avm_trace.hpp ([#7214](#7214)) ([7ed7558](7ed7558)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.45.0</summary> ## [0.45.0](AztecProtocol/aztec-packages@aztec-package-v0.44.0...aztec-package-v0.45.0) (2024-07-02) ### Bug Fixes * Devnet deployment issues ([#7197](AztecProtocol/aztec-packages#7197)) ([9cf4904](AztecProtocol/aztec-packages@9cf4904)) </details> <details><summary>barretenberg.js: 0.45.0</summary> ## [0.45.0](AztecProtocol/aztec-packages@barretenberg.js-v0.44.0...barretenberg.js-v0.45.0) (2024-07-02) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.45.0</summary> ## [0.45.0](AztecProtocol/aztec-packages@aztec-packages-v0.44.0...aztec-packages-v0.45.0) (2024-07-02) ### ⚠ BREAKING CHANGES * error on too large integer value (noir-lang/noir#5371) * rename struct-specific TypeDefinition -> StructDefinition (noir-lang/noir#5356) * extend storage read oracle to receive address and block number ([#7243](AztecProtocol/aztec-packages#7243)) * split storage access oracles ([#7237](AztecProtocol/aztec-packages#7237)) * remove `dep::` prefix (noir-lang/noir#4946) ### Features * `mod.nr` entrypoint (noir-lang/noir#5039) ([bb5cbab](AztecProtocol/aztec-packages@bb5cbab)) * `static_assert` builtin (noir-lang/noir#5342) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Add `map`, `fold`, `reduce`, `any`, and `all` for slices (noir-lang/noir#5331) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Add `set` and `set_unchecked` methods to `Vec` and `BoundedVec` (noir-lang/noir#5241) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add BoundedVec::map (noir-lang/noir#5250) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add fuzzer for Noir programs (noir-lang/noir#5251) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add new lenses for encryted notes ([#7238](AztecProtocol/aztec-packages#7238)) ([c07cf2c](AztecProtocol/aztec-packages@c07cf2c)) * Add outgoing keys support to getEvents ([#7239](AztecProtocol/aztec-packages#7239)) ([77c304e](AztecProtocol/aztec-packages@77c304e)) * Add support for wildcard types (noir-lang/noir#5275) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **avm:** Calldata gadget preliminaries ([#7227](AztecProtocol/aztec-packages#7227)) ([79e8588](AztecProtocol/aztec-packages@79e8588)) * Build simple dictionary from inspecting ACIR program (noir-lang/noir#5264) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Constant Honk proof sizes ([#6954](AztecProtocol/aztec-packages#6954)) ([17c8d3a](AztecProtocol/aztec-packages@17c8d3a)) * Disable nargo color output if stderr is tty (noir-lang/noir#5346) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * **docs:** Macros explainer ([#7172](AztecProtocol/aztec-packages#7172)) ([bb2ebfc](AztecProtocol/aztec-packages@bb2ebfc)) * Error on too large integer value (noir-lang/noir#5371) ([bb5cbab](AztecProtocol/aztec-packages@bb5cbab)) * Example of private token transfer event ([#7242](AztecProtocol/aztec-packages#7242)) ([99ce26f](AztecProtocol/aztec-packages@99ce26f)) * **experimental:** Implement macro calls & splicing into `Expr` values (noir-lang/noir#5203) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Extend storage read oracle to receive address and block number ([#7243](AztecProtocol/aztec-packages#7243)) ([153b201](AztecProtocol/aztec-packages@153b201)) * **frontend:** Explicit numeric generics and type kinds (noir-lang/noir#5155) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * **frontend:** Where clause on impl (noir-lang/noir#5320) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Function selector opcode in AVM ([#7244](AztecProtocol/aztec-packages#7244)) ([dde47e9](AztecProtocol/aztec-packages@dde47e9)) * Implement comptime support for `array_len` builtin (noir-lang/noir#5272) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Implement comptime support for `as_slice` builtin (noir-lang/noir#5276) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Insert trait impls into the program from type annotations (noir-lang/noir#5327) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Let `should_fail_with` check that the failure reason contains the expected message (noir-lang/noir#5319) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Make macros operate on token streams instead of AST nodes (noir-lang/noir#5301) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Private refunds ([#7226](AztecProtocol/aztec-packages#7226)) ([6fafff6](AztecProtocol/aztec-packages@6fafff6)) * Remove `dep::` prefix (noir-lang/noir#4946) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Remove event selector in logs from public context ([#7192](AztecProtocol/aztec-packages#7192)) ([646d45a](AztecProtocol/aztec-packages@646d45a)) * Rename struct-specific TypeDefinition -> StructDefinition (noir-lang/noir#5356) ([bb5cbab](AztecProtocol/aztec-packages@bb5cbab)) * Run `comptime` code from annotations on a type definition (noir-lang/noir#5256) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Split storage access oracles ([#7237](AztecProtocol/aztec-packages#7237)) ([51f7d65](AztecProtocol/aztec-packages@51f7d65)) * **stdlib:** Update stdlib to use explicit numeric generics (noir-lang/noir#5306) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Store shared mutable hash ([#7169](AztecProtocol/aztec-packages#7169)) ([868606e](AztecProtocol/aztec-packages@868606e)) * Sync from aztec-packages (noir-lang/noir#5242) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Sync from aztec-packages (noir-lang/noir#5340) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Sync from aztec-packages (noir-lang/noir#5347) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Sync from aztec-packages (noir-lang/noir#5377) ([bb5cbab](AztecProtocol/aztec-packages@bb5cbab)) * Unconstrained variants for event emission ([#7251](AztecProtocol/aztec-packages#7251)) ([6d093e3](AztecProtocol/aztec-packages@6d093e3)) * Unify unencrypted log emission and decoding ([#7232](AztecProtocol/aztec-packages#7232)) ([354dba2](AztecProtocol/aztec-packages@354dba2)) * Update rebuild script ([#7225](AztecProtocol/aztec-packages#7225)) ([af59247](AztecProtocol/aztec-packages@af59247)) * Use runtime loops for brillig array initialization (noir-lang/noir#5243) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Wonky rollups ([#7189](AztecProtocol/aztec-packages#7189)) ([1de3746](AztecProtocol/aztec-packages@1de3746)) ### Bug Fixes * Add more thorough check for whether a type is valid when passing it from constrained code to unconstrained code (noir-lang/noir#5009) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add support for nested arrays returned by oracles (noir-lang/noir#5132) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Address compiler warnings coming from stdlib (noir-lang/noir#5351) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Avoid duplicating constant arrays (noir-lang/noir#5287) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Avoid panic in type system (noir-lang/noir#5332) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Avoid unnecessarily splitting expressions with multiplication terms with a shared term (noir-lang/noir#5291) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Benchmark prover e2e test with proving ([#7175](AztecProtocol/aztec-packages#7175)) ([431c14c](AztecProtocol/aztec-packages@431c14c)) * Devnet deployment issues ([#7197](AztecProtocol/aztec-packages#7197)) ([9cf4904](AztecProtocol/aztec-packages@9cf4904)) * Disable `if` optimization (noir-lang/noir#5240) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **docs:** Historical reference library updates ([#7166](AztecProtocol/aztec-packages#7166)) ([b3409c4](AztecProtocol/aztec-packages@b3409c4)) * Don't benchmark the "prove" command as it doesn't exist anymore (noir-lang/noir#5323) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Don't lazily elaborate functions (noir-lang/noir#5282) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **elaborator:** Fix duplicate methods error (noir-lang/noir#5225) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **elaborator:** Fix regression introduced by lazy-global changes (noir-lang/noir#5223) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Error when a local function is called in a comptime context (noir-lang/noir#5334) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Fix authwit package ([#7204](AztecProtocol/aztec-packages#7204)) ([98ccd41](AztecProtocol/aztec-packages@98ccd41)) * Fix incorrect return type being applied to stdlib functions `modulus_be_bytes()`, `modulus_be_bits()`, etc. (noir-lang/noir#5278) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Fix tokenization of unquoted types in macros (noir-lang/noir#5326) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Fix usage of `#[abi(tag)]` attribute with elaborator (noir-lang/noir#5298) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Handle struct with nested arrays in oracle return values (noir-lang/noir#5244) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Ignore calls to `Intrinsic::AsWitness` during brillig codegen (noir-lang/noir#5350) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Implement generic functions in the interpreter (noir-lang/noir#5330) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * **nargo_fmt:** Account for spaces before the generic list of a function (noir-lang/noir#5303) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Replace panic in monomorphization with an error (noir-lang/noir#5305) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Reran pil->cpp codegen & encode_and_encrypt_event_with_randomness fix ([#7247](AztecProtocol/aztec-packages#7247)) ([fa15a45](AztecProtocol/aztec-packages@fa15a45)) * Runtime brillig bigint id assignment (noir-lang/noir#5369) ([bb5cbab](AztecProtocol/aztec-packages@bb5cbab)) * Skip emission of brillig calls which will never be executed (noir-lang/noir#5314) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * TS LSP being slow ([#7181](AztecProtocol/aztec-packages#7181)) ([e934e87](AztecProtocol/aztec-packages@e934e87)) * Update `in_contract` flag before handling function metadata in elaborator (noir-lang/noir#5292) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Use proper serialization in `AbiValue` (noir-lang/noir#5270) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) ### Miscellaneous * `static_assert` error message fix and split into is-dynamic and is-false (noir-lang/noir#5353) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Add back Pedersen blackbox functions (revert PR 5221) (noir-lang/noir#5318) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add log_hash as input in log emission in private context ([#7249](AztecProtocol/aztec-packages#7249)) ([8b3dfe9](AztecProtocol/aztec-packages@8b3dfe9)) * Add no predicate to poseidon2 (noir-lang/noir#5252) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add no-predicate to hash implementations (noir-lang/noir#5253) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Add property tests for ABI encoding (noir-lang/noir#5216) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Address TODO in `compat.nr` (noir-lang/noir#5339) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * **avm-transpiler:** Better error messages ([#7217](AztecProtocol/aztec-packages#7217)) ([27051ad](AztecProtocol/aztec-packages@27051ad)) * **avm:** Remove trailing minus zero in codegen ([#7185](AztecProtocol/aztec-packages#7185)) ([f3c8166](AztecProtocol/aztec-packages@f3c8166)) * Avoid building contracts when producing gates report ([#7136](AztecProtocol/aztec-packages#7136)) ([25507e6](AztecProtocol/aztec-packages@25507e6)) * Bump `bb` to 0.43.0 (noir-lang/noir#5321) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Bundle SSA Evaluator Options (noir-lang/noir#5317) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **ci:** Trigger a noir sync every morning at 8am ([#7280](AztecProtocol/aztec-packages#7280)) ([412c016](AztecProtocol/aztec-packages@412c016)) * Copy across typo PR script from aztec-packages (noir-lang/noir#5235) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Create separate crate just for noir artifacts (noir-lang/noir#5162) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * **docs:** Fixing trailing slash issue (noir-lang/noir#5233) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Fix examples (noir-lang/noir#5357) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Fix migration notes ([#7279](AztecProtocol/aztec-packages#7279)) ([51d93eb](AztecProtocol/aztec-packages@51d93eb)) * Fix negative tests in AVM circuit for context input lookups ([#7261](AztecProtocol/aztec-packages#7261)) ([ad2f654](AztecProtocol/aztec-packages@ad2f654)) * Fixing all relative paths (noir-lang/noir#5220) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Generate PIL constants from via constants gen ([#7258](AztecProtocol/aztec-packages#7258)) ([244ef7e](AztecProtocol/aztec-packages@244ef7e)) * Gets rid of unencrypted emit in private_context ([#7236](AztecProtocol/aztec-packages#7236)) ([3e6d88e](AztecProtocol/aztec-packages@3e6d88e)) * Improve authwit comments/docs ([#7180](AztecProtocol/aztec-packages#7180)) ([051ab9e](AztecProtocol/aztec-packages@051ab9e)) * Misc cleanup in simulator ([#7203](AztecProtocol/aztec-packages#7203)) ([eb00830](AztecProtocol/aztec-packages@eb00830)) * Optimize the elaborator (noir-lang/noir#5230) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Parse macros (noir-lang/noir#5229) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Pedersen commitment in Noir (noir-lang/noir#5221) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Pedersen hash in Noir (noir-lang/noir#5217) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Private tail circuits ([#7148](AztecProtocol/aztec-packages#7148)) ([9e67e7d](AztecProtocol/aztec-packages@9e67e7d)) * Pull out change to expression splitting from sync PR ([#7215](AztecProtocol/aztec-packages#7215)) ([b4f50a5](AztecProtocol/aztec-packages@b4f50a5)) * Pull out foreign call nested array changes ([#7216](AztecProtocol/aztec-packages#7216)) ([1faaaf5](AztecProtocol/aztec-packages@1faaaf5)) * Pull out noir-lang/noir[#5120](AztecProtocol/aztec-packages#5120) ([#7205](AztecProtocol/aztec-packages#7205)) ([c5dc094](AztecProtocol/aztec-packages@c5dc094)) * Pull out pedersen generator builtin from sync PR ([#7210](AztecProtocol/aztec-packages#7210)) ([412f02e](AztecProtocol/aztec-packages@412f02e)) * Pull out SSA changes from sync PR ([#7209](AztecProtocol/aztec-packages#7209)) ([141e137](AztecProtocol/aztec-packages@141e137)) * Push code related to ABI gen into `noirc_driver` (noir-lang/noir#5218) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Redo typo PR by dropbigfish (noir-lang/noir#5234) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Refactor test case generation in build.rs (noir-lang/noir#5280) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Release Noir(0.31.0) (noir-lang/noir#5166) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Remove `is_unconstrained_fn` field from elaborator (noir-lang/noir#5335) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Remove 4738 ref ([#7254](AztecProtocol/aztec-packages#7254)) ([97d997c](AztecProtocol/aztec-packages@97d997c)) * Remove a log file ([#7201](AztecProtocol/aztec-packages#7201)) ([83bb218](AztecProtocol/aztec-packages@83bb218)) * Remove commented code ([#7231](AztecProtocol/aztec-packages#7231)) ([2740d60](AztecProtocol/aztec-packages@2740d60)) * Remove panic for unimplemented trait dispatch (noir-lang/noir#5329) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Replace `is_bn254` implementation to not rely on truncation of literals (noir-lang/noir#5247) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Replace `regression_5202` with more manageably sized program (noir-lang/noir#5345) ([eb9e9f6](AztecProtocol/aztec-packages@eb9e9f6)) * Replace cached `in_contract` with `in_contract()` method (noir-lang/noir#5324) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Replace logical operators with bitwise in `DebugToString` (noir-lang/noir#5236) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Replace relative paths to noir-protocol-circuits ([e83b07b](AztecProtocol/aztec-packages@e83b07b)) * Replace relative paths to noir-protocol-circuits ([eca8587](AztecProtocol/aztec-packages@eca8587)) * Replace relative paths to noir-protocol-circuits ([b9ddf43](AztecProtocol/aztec-packages@b9ddf43)) * Replace relative paths to noir-protocol-circuits ([6f817e8](AztecProtocol/aztec-packages@6f817e8)) * Replace relative paths to noir-protocol-circuits ([f9bf0a4](AztecProtocol/aztec-packages@f9bf0a4)) * Replicate noir-lang/noir[#4946](AztecProtocol/aztec-packages#4946) ([#7202](AztecProtocol/aztec-packages#7202)) ([b5c07d8](AztecProtocol/aztec-packages@b5c07d8)) * Simplify compilation flow to write to file immediately (noir-lang/noir#5265) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Split off fuzzer, abi changes and `noirc_artifacts` from sync ([#7208](AztecProtocol/aztec-packages#7208)) ([255d752](AztecProtocol/aztec-packages@255d752)) * Thread generics through ACIR/brillig gen (noir-lang/noir#5120) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) * Use `push_err` more in elaborator (noir-lang/noir#5336) ([f2abb4e](AztecProtocol/aztec-packages@f2abb4e)) * Use options.limit as upper limit for note-getter loop ([#7253](AztecProtocol/aztec-packages#7253)) ([8ff669b](AztecProtocol/aztec-packages@8ff669b)) * Use prefix op_ for every instruction in avm_trace.hpp ([#7214](AztecProtocol/aztec-packages#7214)) ([7ed7558](AztecProtocol/aztec-packages@7ed7558)) * Use the elaborator by default (noir-lang/noir#5246) ([ed815a3](AztecProtocol/aztec-packages@ed815a3)) </details> <details><summary>barretenberg: 0.45.0</summary> ## [0.45.0](AztecProtocol/aztec-packages@barretenberg-v0.44.0...barretenberg-v0.45.0) (2024-07-02) ### Features * **avm:** Calldata gadget preliminaries ([#7227](AztecProtocol/aztec-packages#7227)) ([79e8588](AztecProtocol/aztec-packages@79e8588)) * Constant Honk proof sizes ([#6954](AztecProtocol/aztec-packages#6954)) ([17c8d3a](AztecProtocol/aztec-packages@17c8d3a)) * Function selector opcode in AVM ([#7244](AztecProtocol/aztec-packages#7244)) ([dde47e9](AztecProtocol/aztec-packages@dde47e9)) * Update rebuild script ([#7225](AztecProtocol/aztec-packages#7225)) ([af59247](AztecProtocol/aztec-packages@af59247)) ### Bug Fixes * Benchmark prover e2e test with proving ([#7175](AztecProtocol/aztec-packages#7175)) ([431c14c](AztecProtocol/aztec-packages@431c14c)) * Reran pil->cpp codegen & encode_and_encrypt_event_with_randomness fix ([#7247](AztecProtocol/aztec-packages#7247)) ([fa15a45](AztecProtocol/aztec-packages@fa15a45)) ### Miscellaneous * **avm:** Remove trailing minus zero in codegen ([#7185](AztecProtocol/aztec-packages#7185)) ([f3c8166](AztecProtocol/aztec-packages@f3c8166)) * Fix negative tests in AVM circuit for context input lookups ([#7261](AztecProtocol/aztec-packages#7261)) ([ad2f654](AztecProtocol/aztec-packages@ad2f654)) * Generate PIL constants from via constants gen ([#7258](AztecProtocol/aztec-packages#7258)) ([244ef7e](AztecProtocol/aztec-packages@244ef7e)) * Use prefix op_ for every instruction in avm_trace.hpp ([#7214](AztecProtocol/aztec-packages#7214)) ([7ed7558](AztecProtocol/aztec-packages@7ed7558)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Description
Problem*
Resolves
Summary*
This PR exposes
set
andset_unchecked
methods toBoundedVec
which allow writing to individual indices in the array without having to accessself.storage
directly.I've also documented the expected behaviour for the get and set operations.
Additional Context
Documentation*
Check one:
PR Checklist*
cargo fmt
on default settings.