-
Notifications
You must be signed in to change notification settings - Fork 219
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
chore: remove the as_field
and from_field
built-ins
#6845
Conversation
Peak Memory Sample
|
Compilation Sample
|
as_field
and from_field
built-insas_field
and from_field
built-ins
Execution Sample
|
Aztec-Packages is failing now, but I think this uncovered a bug. There's code that does something like this: fn main() {
let u = U128::from_integer(184467440737095516152);
let y = U128::from_integer(u);
println(y);
} That is, it's calling |
In Noir we are removing the (private) built-ins `as_field` and `from_field`, which allowed casting any type to and from Field by truncating its bits. This uncovered two bugs where we were doing `U128::from_integer(x)` with `x` itself being a `U128`. That code won't compile anymore (and I think it was incorrect) so I'm doing those changes in this PR. See noir-lang/noir#6845
Looks good to me with a private trait (although in reality it's not really private until we require traits to be in scope in order to use its methods). |
Rust has, in a crate, an AsPrimitive trait that's essentially the |
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) chore: Use smallvec for instruction results (noir-lang/noir#6877) chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874) fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848) feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867) chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) chore: fix warnings (noir-lang/noir#6863) fix: detect cycles in globals (noir-lang/noir#6859) chore(ci): Execution time report (noir-lang/noir#6827) chore(ci): Add non determinism check and fixes (noir-lang/noir#6847) chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804) fix: double alias in path (noir-lang/noir#6855) feat: configurable external check failures (noir-lang/noir#6810) chore: move constant creation out of loop (noir-lang/noir#6836) fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) chore: Use Vec for callstacks (noir-lang/noir#6821) feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) feat: Sync from aztec-packages (noir-lang/noir#6824) chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) chore: Use smallvec for instruction results (noir-lang/noir#6877) chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874) fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848) feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867) chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) chore: fix warnings (noir-lang/noir#6863) fix: detect cycles in globals (noir-lang/noir#6859) chore(ci): Execution time report (noir-lang/noir#6827) chore(ci): Add non determinism check and fixes (noir-lang/noir#6847) chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804) fix: double alias in path (noir-lang/noir#6855) feat: configurable external check failures (noir-lang/noir#6810) chore: move constant creation out of loop (noir-lang/noir#6836) fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) chore: Use Vec for callstacks (noir-lang/noir#6821) feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) feat: Sync from aztec-packages (noir-lang/noir#6824) chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
…oir-lang/noir#6898) chore: clean up gates reports script (noir-lang/noir#6896) chore: move empty programs to `compile_success_empty` (noir-lang/noir#6891) feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860) chore: quick docs fix for #6839 (noir-lang/noir#6840) chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) chore: Use smallvec for instruction results (noir-lang/noir#6877) chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874) fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848) feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867) chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) chore: fix warnings (noir-lang/noir#6863) fix: detect cycles in globals (noir-lang/noir#6859) chore(ci): Execution time report (noir-lang/noir#6827) chore(ci): Add non determinism check and fixes (noir-lang/noir#6847) chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804) fix: double alias in path (noir-lang/noir#6855) feat: configurable external check failures (noir-lang/noir#6810) chore: move constant creation out of loop (noir-lang/noir#6836) fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) chore: Use Vec for callstacks (noir-lang/noir#6821) feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) feat: Sync from aztec-packages (noir-lang/noir#6824) chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
…r#6898) chore: clean up gates reports script (noir-lang/noir#6896) chore: move empty programs to `compile_success_empty` (noir-lang/noir#6891) feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860) chore: quick docs fix for #6839 (noir-lang/noir#6840) chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) chore: Use smallvec for instruction results (noir-lang/noir#6877) chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874) fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848) feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867) chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) chore: fix warnings (noir-lang/noir#6863) fix: detect cycles in globals (noir-lang/noir#6859) chore(ci): Execution time report (noir-lang/noir#6827) chore(ci): Add non determinism check and fixes (noir-lang/noir#6847) chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804) fix: double alias in path (noir-lang/noir#6855) feat: configurable external check failures (noir-lang/noir#6810) chore: move constant creation out of loop (noir-lang/noir#6836) fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) chore: Use Vec for callstacks (noir-lang/noir#6821) feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) feat: Sync from aztec-packages (noir-lang/noir#6824) chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: remove malformed functions from brillig reports (noir-lang/noir#6898) chore: clean up gates reports script (noir-lang/noir#6896) chore: move empty programs to `compile_success_empty` (noir-lang/noir#6891) feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860) chore: quick docs fix for #6839 (noir-lang/noir#6840) chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) chore: Use smallvec for instruction results (noir-lang/noir#6877) chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874) fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848) feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867) chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) chore: fix warnings (noir-lang/noir#6863) fix: detect cycles in globals (noir-lang/noir#6859) chore(ci): Execution time report (noir-lang/noir#6827) chore(ci): Add non determinism check and fixes (noir-lang/noir#6847) chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804) fix: double alias in path (noir-lang/noir#6855) feat: configurable external check failures (noir-lang/noir#6810) chore: move constant creation out of loop (noir-lang/noir#6836) fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) chore: Use Vec for callstacks (noir-lang/noir#6821) feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) feat: Sync from aztec-packages (noir-lang/noir#6824) chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825) END_COMMIT_OVERRIDE --------- Co-authored-by: ludamad <adam.domurad@gmail.com> Co-authored-by: Tom French <tom@tomfren.ch> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.68.1</summary> ## [0.68.1](aztec-package-v0.68.0...aztec-package-v0.68.1) (2024-12-23) ### Miscellaneous * Configurable parallelism in bootstrap ([#10909](#10909)) ([5260f1e](5260f1e)) </details> <details><summary>barretenberg.js: 0.68.1</summary> ## [0.68.1](barretenberg.js-v0.68.0...barretenberg.js-v0.68.1) (2024-12-23) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.68.1</summary> ## [0.68.1](aztec-packages-v0.68.0...aztec-packages-v0.68.1) (2024-12-23) ### Features * Add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860) ([84a4005](84a4005)) * Add limit to unique contract call ([#10640](#10640)) ([d340f0b](d340f0b)) * Configurable external check failures (noir-lang/noir#6810) ([84a4005](84a4005)) * **docs:** Add aztec-wallet proving ([#10847](#10847)) ([3efae86](3efae86)) * Flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) ([84a4005](84a4005)) * **p2p:** Timeout peers, disconnect from badly scored peers ([#10907](#10907)) ([76a23eb](76a23eb)) * Replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) ([84a4005](84a4005)) * Revamped sequencer timetable and tx processing timeout ([#10870](#10870)) ([145122b](145122b)) * Sync from aztec-packages (noir-lang/noir#6824) ([84a4005](84a4005)) * Warn on unnecessary unsafe blocks (noir-lang/noir#6867) ([84a4005](84a4005)) ### Bug Fixes * Add devcoin to faucet after deployment ([#10903](#10903)) ([6aa5369](6aa5369)) * CI kind test fix ([#10932](#10932)) ([bda1ac7](bda1ac7)) * **ci:** Tester/builder start race conditions ([#10893](#10893)) ([4250782](4250782)) * Conditionally deploy deterministic deployment proxy ([#10936](#10936)) ([48624b7](48624b7)) * Degrade libp2p crypto package ([#10876](#10876)) ([9293f38](9293f38)) * Detect cycles in globals (noir-lang/noir#6859) ([84a4005](84a4005)) * Don't deduplicate binary math of unsigned types (noir-lang/noir#6848) ([84a4005](84a4005)) * Double alias in path (noir-lang/noir#6855) ([84a4005](84a4005)) * Implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) ([84a4005](84a4005)) * Install Yarn 4.5.2 to build WASM ([#10940](#10940)) ([2a76380](2a76380)) * Removed Sepolia stuff from devnet deploy action ([#10916](#10916)) ([fbf120b](fbf120b)) ### Miscellaneous * **avm:** Check that slice read/write are not out of memory range ([#10879](#10879)) ([ab3f318](ab3f318)), closes [#7385](#7385) * Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) ([84a4005](84a4005)) * **ci:** Add non determinism check and fixes (noir-lang/noir#6847) ([84a4005](84a4005)) * **ci:** Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) ([84a4005](84a4005)) * **ci:** Execution time report (noir-lang/noir#6827) ([84a4005](84a4005)) * **ci:** Take averages for compilation and execution report of small programs (noir-lang/noir#6874) ([84a4005](84a4005)) * Clean up gates reports script (noir-lang/noir#6896) ([84a4005](84a4005)) * Configurable parallelism in bootstrap ([#10909](#10909)) ([5260f1e](5260f1e)) * **docs:** Updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) ([84a4005](84a4005)) * **docs:** Updating the solidity contract how-to guide (noir-lang/noir#6804) ([84a4005](84a4005)) * Fix warnings (noir-lang/noir#6863) ([84a4005](84a4005)) * Have rust-analyzer use the stable toolchain (noir-lang/noir#6825) ([84a4005](84a4005)) * Move constant creation out of loop (noir-lang/noir#6836) ([84a4005](84a4005)) * Move empty programs to `compile_success_empty` (noir-lang/noir#6891) ([84a4005](84a4005)) * New default resource values for GKE ([#10928](#10928)) ([18e38d3](18e38d3)) * Quick docs fix for [#6839](#6839) (noir-lang/noir#6840) ([84a4005](84a4005)) * Refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) ([84a4005](84a4005)) * Remove get registered account from pxe ([#10479](#10479)) ([ee568ff](ee568ff)) * Remove malformed functions from brillig reports (noir-lang/noir#6898) ([84a4005](84a4005)) * Remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) ([84a4005](84a4005)) * Reorganise translator proving key construction ([#10853](#10853)) ([5da4d1b](5da4d1b)) * Replace relative paths to noir-protocol-circuits ([b9f9875](b9f9875)) * Update gates diff action ([#10917](#10917)) ([57439a7](57439a7)) * Use smallvec for instruction results (noir-lang/noir#6877) ([84a4005](84a4005)) * Use Vec for callstacks (noir-lang/noir#6821) ([84a4005](84a4005)) </details> <details><summary>barretenberg: 0.68.1</summary> ## [0.68.1](barretenberg-v0.68.0...barretenberg-v0.68.1) (2024-12-23) ### Features * Add limit to unique contract call ([#10640](#10640)) ([d340f0b](d340f0b)) ### Miscellaneous * **avm:** Check that slice read/write are not out of memory range ([#10879](#10879)) ([ab3f318](ab3f318)), closes [#7385](#7385) * Reorganise translator proving key construction ([#10853](#10853)) ([5da4d1b](5da4d1b)) </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.68.1</summary> ## [0.68.1](AztecProtocol/aztec-packages@aztec-package-v0.68.0...aztec-package-v0.68.1) (2024-12-23) ### Miscellaneous * Configurable parallelism in bootstrap ([#10909](AztecProtocol/aztec-packages#10909)) ([5260f1e](AztecProtocol/aztec-packages@5260f1e)) </details> <details><summary>barretenberg.js: 0.68.1</summary> ## [0.68.1](AztecProtocol/aztec-packages@barretenberg.js-v0.68.0...barretenberg.js-v0.68.1) (2024-12-23) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-packages: 0.68.1</summary> ## [0.68.1](AztecProtocol/aztec-packages@aztec-packages-v0.68.0...aztec-packages-v0.68.1) (2024-12-23) ### Features * Add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Add limit to unique contract call ([#10640](AztecProtocol/aztec-packages#10640)) ([d340f0b](AztecProtocol/aztec-packages@d340f0b)) * Configurable external check failures (noir-lang/noir#6810) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **docs:** Add aztec-wallet proving ([#10847](AztecProtocol/aztec-packages#10847)) ([3efae86](AztecProtocol/aztec-packages@3efae86)) * Flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **p2p:** Timeout peers, disconnect from badly scored peers ([#10907](AztecProtocol/aztec-packages#10907)) ([76a23eb](AztecProtocol/aztec-packages@76a23eb)) * Replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Revamped sequencer timetable and tx processing timeout ([#10870](AztecProtocol/aztec-packages#10870)) ([145122b](AztecProtocol/aztec-packages@145122b)) * Sync from aztec-packages (noir-lang/noir#6824) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Warn on unnecessary unsafe blocks (noir-lang/noir#6867) ([84a4005](AztecProtocol/aztec-packages@84a4005)) ### Bug Fixes * Add devcoin to faucet after deployment ([#10903](AztecProtocol/aztec-packages#10903)) ([6aa5369](AztecProtocol/aztec-packages@6aa5369)) * CI kind test fix ([#10932](AztecProtocol/aztec-packages#10932)) ([bda1ac7](AztecProtocol/aztec-packages@bda1ac7)) * **ci:** Tester/builder start race conditions ([#10893](AztecProtocol/aztec-packages#10893)) ([4250782](AztecProtocol/aztec-packages@4250782)) * Conditionally deploy deterministic deployment proxy ([#10936](AztecProtocol/aztec-packages#10936)) ([48624b7](AztecProtocol/aztec-packages@48624b7)) * Degrade libp2p crypto package ([#10876](AztecProtocol/aztec-packages#10876)) ([9293f38](AztecProtocol/aztec-packages@9293f38)) * Detect cycles in globals (noir-lang/noir#6859) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Don't deduplicate binary math of unsigned types (noir-lang/noir#6848) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Double alias in path (noir-lang/noir#6855) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Install Yarn 4.5.2 to build WASM ([#10940](AztecProtocol/aztec-packages#10940)) ([2a76380](AztecProtocol/aztec-packages@2a76380)) * Removed Sepolia stuff from devnet deploy action ([#10916](AztecProtocol/aztec-packages#10916)) ([fbf120b](AztecProtocol/aztec-packages@fbf120b)) ### Miscellaneous * **avm:** Check that slice read/write are not out of memory range ([#10879](AztecProtocol/aztec-packages#10879)) ([ab3f318](AztecProtocol/aztec-packages@ab3f318)), closes [#7385](AztecProtocol/aztec-packages#7385) * Avoid duplicate Not instructions during flattening (noir-lang/noir#6886) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **ci:** Add non determinism check and fixes (noir-lang/noir#6847) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **ci:** Display times in compilation and execution reports only with seconds (noir-lang/noir#6880) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **ci:** Execution time report (noir-lang/noir#6827) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **ci:** Take averages for compilation and execution report of small programs (noir-lang/noir#6874) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Clean up gates reports script (noir-lang/noir#6896) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Configurable parallelism in bootstrap ([#10909](AztecProtocol/aztec-packages#10909)) ([5260f1e](AztecProtocol/aztec-packages@5260f1e)) * **docs:** Updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * **docs:** Updating the solidity contract how-to guide (noir-lang/noir#6804) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Fix warnings (noir-lang/noir#6863) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Have rust-analyzer use the stable toolchain (noir-lang/noir#6825) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Move constant creation out of loop (noir-lang/noir#6836) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Move empty programs to `compile_success_empty` (noir-lang/noir#6891) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * New default resource values for GKE ([#10928](AztecProtocol/aztec-packages#10928)) ([18e38d3](AztecProtocol/aztec-packages@18e38d3)) * Quick docs fix for [#6839](AztecProtocol/aztec-packages#6839) (noir-lang/noir#6840) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Remove get registered account from pxe ([#10479](AztecProtocol/aztec-packages#10479)) ([ee568ff](AztecProtocol/aztec-packages@ee568ff)) * Remove malformed functions from brillig reports (noir-lang/noir#6898) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Reorganise translator proving key construction ([#10853](AztecProtocol/aztec-packages#10853)) ([5da4d1b](AztecProtocol/aztec-packages@5da4d1b)) * Replace relative paths to noir-protocol-circuits ([b9f9875](AztecProtocol/aztec-packages@b9f9875)) * Update gates diff action ([#10917](AztecProtocol/aztec-packages#10917)) ([57439a7](AztecProtocol/aztec-packages@57439a7)) * Use smallvec for instruction results (noir-lang/noir#6877) ([84a4005](AztecProtocol/aztec-packages@84a4005)) * Use Vec for callstacks (noir-lang/noir#6821) ([84a4005](AztecProtocol/aztec-packages@84a4005)) </details> <details><summary>barretenberg: 0.68.1</summary> ## [0.68.1](AztecProtocol/aztec-packages@barretenberg-v0.68.0...barretenberg-v0.68.1) (2024-12-23) ### Features * Add limit to unique contract call ([#10640](AztecProtocol/aztec-packages#10640)) ([d340f0b](AztecProtocol/aztec-packages@d340f0b)) ### Miscellaneous * **avm:** Check that slice read/write are not out of memory range ([#10879](AztecProtocol/aztec-packages#10879)) ([ab3f318](AztecProtocol/aztec-packages@ab3f318)), closes [#7385](AztecProtocol/aztec-packages#7385) * Reorganise translator proving key construction ([#10853](AztecProtocol/aztec-packages#10853)) ([5da4d1b](AztecProtocol/aztec-packages@5da4d1b)) </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 #6838
Summary
Additional Context
Documentation
Check one:
PR Checklist*
cargo fmt
on default settings.