-
Notifications
You must be signed in to change notification settings - Fork 234
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: New Outbox Contract #4768 #5090
Conversation
Benchmark resultsMetrics with a significant change:
Detailed resultsAll benchmarks are run on txs on the This benchmark source data is available in JSON format on S3 here. Values are compared against data from master at commit L2 block published to L1Each column represents the number of txs on an L2 block published to L1.
L2 chain processingEach column represents the number of blocks on the L2 chain where each block has 16 txs.
Circuits statsStats on running time and I/O sizes collected for every circuit run across all benchmarks.
Tree insertion statsThe duration to insert a fixed batch of leaves into each tree type.
MiscellaneousTransaction sizes based on how many contract classes are registered in the tx.
Transaction processing duration by data writes.
|
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.
Went a bit overboard with the comments 😅 Hope you find them useful. Overall it looks great! Most of my suggestions are quite minor.
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.
@nventuro had some good points around extra tests and clarity. Added a few notes.
comments comments fix fix comments comments comments test test comment ethereum/solidity#14430 comments test comments liberryfy test asdf add manual test asdf test fix asdf asdf comments comments
@nventuro, @LHerskind: Thank you very much for your reviews, everything so far that has been "resolved" has been in one way or another fixed ! Some stuff has been moved around, i.e. the verify Fn has been moved to the lib, and I've opted to make the more verbose comments there (happy to move them back); some stuff has been changed i.e. Solidity version update due to this issue being solved in 8.22 ! |
uint256 _l2BlockNumber, | ||
uint256 _leafIndex, | ||
DataStructures.L2ToL1Msg memory _message, | ||
bytes32[] memory _path |
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.
It is not a speedup that you can just see, it is evaluating the gas, you can add --gas-report
to see the gas, and compare those. Think there is a new flag now to do it properly though for the exact gas but cannot remember it at the top of my head.
l1-contracts/test/NewOutbox.t.sol
Outdated
address internal constant NOT_ROLLUP_CONTRACT = address(0x69); | ||
address internal constant NOT_RECIPIENT = address(0x420); | ||
uint256 internal constant DEFAULT_TREE_HEIGHT = 2; | ||
uint256 internal constant AZTEC_VERSION = 0; |
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.
As I recall the registry is using 0 for the "nothing" empty case and then only inserting the next thing as version 1. Reasoning was that having zero for the value could lead to pain inside the circuit (back in the days) so we started it from 1.
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.
Looks good. Just minor nits
l1-contracts/test/NewOutbox.t.sol
Outdated
function setUp() public { | ||
outbox = new NewOutbox(ROLLUP_CONTRACT); | ||
zeroedTree = new NaiveMerkle(DEFAULT_TREE_HEIGHT); | ||
merkleLibTest = new MerkleLibTest(); |
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.
I think it's a bit weird to instantiate the whole foundry test file like this just to get access to calculateTreeHeightFromSize
function so I would prefer to just create a separate file with the util function and import just that but it's not a big deal.
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.
Done 🙏
Co-authored-by: Jan Beneš <janbenes1234@gmail.com>
Co-authored-by: Jan Beneš <janbenes1234@gmail.com>
Instead of pointing to master, load the current tag if it's available on the environment and use it for redirecting to github.
Add some feedback based on office hours today.
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.28.0</summary> ## [0.28.0](aztec-package-v0.27.2...aztec-package-v0.28.0) (2024-03-14) ### ⚠ BREAKING CHANGES * Support contracts with no constructor ([#5175](#5175)) ### Features * Support contracts with no constructor ([#5175](#5175)) ([df7fa32](df7fa32)) </details> <details><summary>barretenberg.js: 0.28.0</summary> ## [0.28.0](barretenberg.js-v0.27.2...barretenberg.js-v0.28.0) (2024-03-14) ### Miscellaneous * **barretenberg.js:** Synchronize aztec-packages versions </details> <details><summary>aztec-cli: 0.28.0</summary> ## [0.28.0](aztec-cli-v0.27.2...aztec-cli-v0.28.0) (2024-03-14) ### ⚠ BREAKING CHANGES * Support contracts with no constructor ([#5175](#5175)) ### Features * Support contracts with no constructor ([#5175](#5175)) ([df7fa32](df7fa32)) </details> <details><summary>aztec-packages: 0.28.0</summary> ## [0.28.0](aztec-packages-v0.27.2...aztec-packages-v0.28.0) (2024-03-14) ### ⚠ BREAKING CHANGES * Support contracts with no constructor ([#5175](#5175)) ### Features * **avm-simulator:** Euclidean and field div ([#5181](#5181)) ([037a38f](037a38f)) * Isolate Plonk dependencies ([#5068](#5068)) ([5cbbd7d](5cbbd7d)) * New brillig field operations and refactor of binary operations ([#5208](#5208)) ([eb69504](eb69504)) * Parallelize linearly dependent contribution in PG ([#4742](#4742)) ([d1799ae](d1799ae)) * Parity circuits ([#5082](#5082)) ([335c46e](335c46e)) * Support contracts with no constructor ([#5175](#5175)) ([df7fa32](df7fa32)) * Track side effects in public ([#5129](#5129)) ([d666f6f](d666f6f)), closes [#5185](#5185) * Update SMT Circuit class and add gate relaxation functionality ([#5176](#5176)) ([5948996](5948996)) ### Bug Fixes * **avm-transpiler:** FDIV and U128 test case ([#5200](#5200)) ([6977e81](6977e81)) * Barretenberg-acir-tests-bb.js thru version bump ([#5216](#5216)) ([9298f93](9298f93)) * Do not release docs on every commit to master ([#5214](#5214)) ([c34a299](c34a299)) * Fail transaction if we revert in setup or teardown ([#5093](#5093)) ([db9a960](db9a960)) * Intermittent invert 0 in Goblin ([#5189](#5189)) ([6c70624](6c70624)) * Point docs links to current tag if available ([#5219](#5219)) ([0e9c7c7](0e9c7c7)) * Remove embedded srs ([#5173](#5173)) ([cfd673d](cfd673d)) * Split setup/teardown functions when there's no public app logic ([#5156](#5156)) ([2ee13b3](2ee13b3)) * Validate EthAddress size in aztec-nr ([#5198](#5198)) ([201c5e1](201c5e1)) ### Miscellaneous * Add dependency instructions to bberg README ([#5187](#5187)) ([850febc](850febc)) * **avm-simulator:** Make sure we support Map storage ([#5207](#5207)) ([08835f9](08835f9)) * **avm-simulator:** Restructure contract storage tests ([#5194](#5194)) ([fcdd1cc](fcdd1cc)) * **docs:** Add details to getting started contract deployment ([#5220](#5220)) ([5c267ae](5c267ae)) * Moving wit comms and witness and comm labels from instance to oink ([#5199](#5199)) ([19eb7f9](19eb7f9)) * Oink ([#5210](#5210)) ([321f149](321f149)) * Pull noir ([#5193](#5193)) ([aa90f6e](aa90f6e)) * Trying to fix intermitent ci failure for boxes ([#5182](#5182)) ([f988cb8](f988cb8)) ### Documentation * **yellow-paper:** Add pseudocode for verifying broadcasted functions in contract deployment ([#4431](#4431)) ([8bdb921](8bdb921)) </details> <details><summary>barretenberg: 0.28.0</summary> ## [0.28.0](barretenberg-v0.27.2...barretenberg-v0.28.0) (2024-03-14) ### Features * **avm-simulator:** Euclidean and field div ([#5181](#5181)) ([037a38f](037a38f)) * Isolate Plonk dependencies ([#5068](#5068)) ([5cbbd7d](5cbbd7d)) * New brillig field operations and refactor of binary operations ([#5208](#5208)) ([eb69504](eb69504)) * Parallelize linearly dependent contribution in PG ([#4742](#4742)) ([d1799ae](d1799ae)) * Update SMT Circuit class and add gate relaxation functionality ([#5176](#5176)) ([5948996](5948996)) ### Bug Fixes * Barretenberg-acir-tests-bb.js thru version bump ([#5216](#5216)) ([9298f93](9298f93)) * Intermittent invert 0 in Goblin ([#5189](#5189)) ([6c70624](6c70624)) * Remove embedded srs ([#5173](#5173)) ([cfd673d](cfd673d)) ### Miscellaneous * Add dependency instructions to bberg README ([#5187](#5187)) ([850febc](850febc)) * Moving wit comms and witness and comm labels from instance to oink ([#5199](#5199)) ([19eb7f9](19eb7f9)) * Oink ([#5210](#5210)) ([321f149](321f149)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Seems like COMMIT_TAG strips the leading `v` as well. This seems to contradict what we're seeing here, but oh well. https://github.com/AztecProtocol/aztec-packages/blob/37bdc1820f92ad2cc545e6843a0dd90273c21e0e/build-system/scripts/setup_env#L17
updates the getting started guide to discuss initializer instead of constructor
…5227) Please read [contributing guidelines](CONTRIBUTING.md) and remove this line. --------- Co-authored-by: Santiago Palladino <santiago@aztecprotocol.com>
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.29.0</summary> ## [0.29.0](aztec-package-v0.28.1...aztec-package-v0.29.0) (2024-03-18) ### Features * Initial Earthly CI ([#5069](#5069)) ([8e75fe5](8e75fe5)) </details> <details><summary>barretenberg.js: 0.29.0</summary> ## [0.29.0](barretenberg.js-v0.28.1...barretenberg.js-v0.29.0) (2024-03-18) ### Features * Initial Earthly CI ([#5069](#5069)) ([8e75fe5](8e75fe5)) </details> <details><summary>aztec-cli: 0.29.0</summary> ## [0.29.0](aztec-cli-v0.28.1...aztec-cli-v0.29.0) (2024-03-18) ### Features * Use deployer in address computation ([#5201](#5201)) ([258ff4a](258ff4a)) ### Miscellaneous * Delete ContractData ([#5258](#5258)) ([e516f9b](e516f9b)) * Delete ExtendedContractData struct ([#5248](#5248)) ([8ae0c13](8ae0c13)) * Removing redundant receipts check ([#5271](#5271)) ([5ab07fb](5ab07fb)) </details> <details><summary>aztec-packages: 0.29.0</summary> ## [0.29.0](aztec-packages-v0.28.1...aztec-packages-v0.29.0) (2024-03-18) ### ⚠ BREAKING CHANGES * Acir call opcode ([#4773](#4773)) ### Features * Acir call opcode ([#4773](#4773)) ([0b15db2](0b15db2)) * Add as_slice builtin function, add execution test (noir-lang/noir#4523) ([86e1a86](86e1a86)) * Add more impls on Option (noir-lang/noir#4549) ([86e1a86](86e1a86)) * Add RelWithAssert build ([#4997](#4997)) ([4f337c7](4f337c7)) * Allow usage of noir `#[test]` syntax in stdlib (noir-lang/noir#4553) ([86e1a86](86e1a86)) * **AuthWit:** Simplify create authwit syntax ([#5132](#5132)) ([d0a5b19](d0a5b19)) * **avm:** Brillig CONST of size > u128 ([#5217](#5217)) ([2e63479](2e63479)) * **avm:** Mov opcode with direct memory ([#5204](#5204)) ([08f9038](08f9038)), closes [#5159](#5159) * Brillig IR refactor ([#5233](#5233)) ([9a73348](9a73348)) * Check initializer msg.sender matches deployer from address preimage ([#5222](#5222)) ([438d16f](438d16f)) * Extended IPA tests and fuzzing ([#5140](#5140)) ([0ae5ace](0ae5ace)) * Initial Earthly CI ([#5069](#5069)) ([8e75fe5](8e75fe5)) * New Outbox Contract [#4768](#4768) ([#5090](#5090)) ([6421a3d](6421a3d)) * Remove curly braces with fmt (noir-lang/noir#4529) ([86e1a86](86e1a86)) * Remove curly braces with fmt (noir-lang/noir#4529) ([d8b8456](d8b8456)) * Remove unnecessary `mulmod`s from verifier contract ([#5269](#5269)) ([20d9c0c](20d9c0c)) * Signed integer division and modulus in brillig gen ([#5279](#5279)) ([82f8cf5](82f8cf5)) * Use deployer in address computation ([#5201](#5201)) ([258ff4a](258ff4a)) ### Bug Fixes * **avm-transpiler:** RETURN is direct ([#5277](#5277)) ([f90b2cf](f90b2cf)) * **bb:** Mac build ([#5253](#5253)) ([ae021c0](ae021c0)) * CVC5 api update ([#5203](#5203)) ([9cc32cb](9cc32cb)) * Evaluate operators in globals in types (noir-lang/noir#4537) ([86e1a86](86e1a86)) * Evaluate operators in globals in types (noir-lang/noir#4537) ([d8b8456](d8b8456)) * Make `nargo` the default binary for cargo run (noir-lang/noir#4554) ([86e1a86](86e1a86)) * Make `nargo` the default binary for cargo run (noir-lang/noir#4554) ([d8b8456](d8b8456)) * Revert "fix: noir mirror merge strat" ([#5250](#5250)) ([7e8e8e5](7e8e8e5)) * Validation requests ([#5236](#5236)) ([25ce33b](25ce33b)) ### Miscellaneous * Add avm team to codeowners for public context ([#5288](#5288)) ([e146076](e146076)) * Add more `Hash` impls to stdlib (noir-lang/noir#4470) ([86e1a86](86e1a86)) * Add more `Hash` impls to stdlib (noir-lang/noir#4470) ([d8b8456](d8b8456)) * Add quick explanatory comment to outbox suggested by [@benesjan](https://github.com/benesjan) ([#5247](#5247)) ([56e8451](56e8451)) * **avm-simulator:** Update e2e test ([#5283](#5283)) ([e9beeca](e9beeca)) * **avm-transpiler:** Return u8 in comparison ops ([#5280](#5280)) ([1a5eb69](1a5eb69)) * **avm-transpiler:** Transpiler cleanup ([#5218](#5218)) ([199e918](199e918)) * Delete ContractDao ([#5256](#5256)) ([544e278](544e278)) * Delete ContractData ([#5258](#5258)) ([e516f9b](e516f9b)) * Delete ExtendedContractData struct ([#5248](#5248)) ([8ae0c13](8ae0c13)) * Delete isInternal and isConstructor fields from FunctionData ([#5232](#5232)) ([dea3f87](dea3f87)) * Delete unused contract tree ts code ([#5229](#5229)) ([b48dd23](b48dd23)) * Delete unused hash functions ([#5231](#5231)) ([fed70a1](fed70a1)) * Fix docker test workflows (noir-lang/noir#4566) ([86e1a86](86e1a86)) * Fixing some broken links (noir-lang/noir#4556) ([86e1a86](86e1a86)) * Making docs build before cutting versions (noir-lang/noir#4568) ([86e1a86](86e1a86)) * Old inbox purge ([#5206](#5206)) ([a26d968](a26d968)) * Removing redundant receipts check ([#5271](#5271)) ([5ab07fb](5ab07fb)) * Separate tests for execution failures from compilation failures (noir-lang/noir#4559) ([86e1a86](86e1a86)) * Separate tests for execution failures from compilation failures (noir-lang/noir#4559) ([d8b8456](d8b8456)) * Template Zeromorph by PCS ([#5215](#5215)) ([03feab2](03feab2)) * Use inotifywait to run generate in yarn-project ([#5168](#5168)) ([137c13e](137c13e)) ### Documentation * **yp:** Remove contract tree and deploy data from circuits and state ([#5260](#5260)) ([acffa7b](acffa7b)) </details> <details><summary>barretenberg: 0.29.0</summary> ## [0.29.0](barretenberg-v0.28.1...barretenberg-v0.29.0) (2024-03-18) ### ⚠ BREAKING CHANGES * Acir call opcode ([#4773](#4773)) ### Features * Acir call opcode ([#4773](#4773)) ([0b15db2](0b15db2)) * Add RelWithAssert build ([#4997](#4997)) ([4f337c7](4f337c7)) * **avm:** Mov opcode with direct memory ([#5204](#5204)) ([08f9038](08f9038)), closes [#5159](#5159) * Extended IPA tests and fuzzing ([#5140](#5140)) ([0ae5ace](0ae5ace)) * Initial Earthly CI ([#5069](#5069)) ([8e75fe5](8e75fe5)) * Remove unnecessary `mulmod`s from verifier contract ([#5269](#5269)) ([20d9c0c](20d9c0c)) * Signed integer division and modulus in brillig gen ([#5279](#5279)) ([82f8cf5](82f8cf5)) ### Bug Fixes * **bb:** Mac build ([#5253](#5253)) ([ae021c0](ae021c0)) * CVC5 api update ([#5203](#5203)) ([9cc32cb](9cc32cb)) ### Miscellaneous * Template Zeromorph by PCS ([#5215](#5215)) ([03feab2](03feab2)) </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.29.0</summary> ## [0.29.0](AztecProtocol/aztec-packages@aztec-package-v0.28.1...aztec-package-v0.29.0) (2024-03-18) ### Features * Initial Earthly CI ([#5069](AztecProtocol/aztec-packages#5069)) ([8e75fe5](AztecProtocol/aztec-packages@8e75fe5)) </details> <details><summary>barretenberg.js: 0.29.0</summary> ## [0.29.0](AztecProtocol/aztec-packages@barretenberg.js-v0.28.1...barretenberg.js-v0.29.0) (2024-03-18) ### Features * Initial Earthly CI ([#5069](AztecProtocol/aztec-packages#5069)) ([8e75fe5](AztecProtocol/aztec-packages@8e75fe5)) </details> <details><summary>aztec-cli: 0.29.0</summary> ## [0.29.0](AztecProtocol/aztec-packages@aztec-cli-v0.28.1...aztec-cli-v0.29.0) (2024-03-18) ### Features * Use deployer in address computation ([#5201](AztecProtocol/aztec-packages#5201)) ([258ff4a](AztecProtocol/aztec-packages@258ff4a)) ### Miscellaneous * Delete ContractData ([#5258](AztecProtocol/aztec-packages#5258)) ([e516f9b](AztecProtocol/aztec-packages@e516f9b)) * Delete ExtendedContractData struct ([#5248](AztecProtocol/aztec-packages#5248)) ([8ae0c13](AztecProtocol/aztec-packages@8ae0c13)) * Removing redundant receipts check ([#5271](AztecProtocol/aztec-packages#5271)) ([5ab07fb](AztecProtocol/aztec-packages@5ab07fb)) </details> <details><summary>aztec-packages: 0.29.0</summary> ## [0.29.0](AztecProtocol/aztec-packages@aztec-packages-v0.28.1...aztec-packages-v0.29.0) (2024-03-18) ### ⚠ BREAKING CHANGES * Acir call opcode ([#4773](AztecProtocol/aztec-packages#4773)) ### Features * Acir call opcode ([#4773](AztecProtocol/aztec-packages#4773)) ([0b15db2](AztecProtocol/aztec-packages@0b15db2)) * Add as_slice builtin function, add execution test (noir-lang/noir#4523) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Add more impls on Option (noir-lang/noir#4549) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Add RelWithAssert build ([#4997](AztecProtocol/aztec-packages#4997)) ([4f337c7](AztecProtocol/aztec-packages@4f337c7)) * Allow usage of noir `#[test]` syntax in stdlib (noir-lang/noir#4553) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * **AuthWit:** Simplify create authwit syntax ([#5132](AztecProtocol/aztec-packages#5132)) ([d0a5b19](AztecProtocol/aztec-packages@d0a5b19)) * **avm:** Brillig CONST of size > u128 ([#5217](AztecProtocol/aztec-packages#5217)) ([2e63479](AztecProtocol/aztec-packages@2e63479)) * **avm:** Mov opcode with direct memory ([#5204](AztecProtocol/aztec-packages#5204)) ([08f9038](AztecProtocol/aztec-packages@08f9038)), closes [#5159](AztecProtocol/aztec-packages#5159) * Brillig IR refactor ([#5233](AztecProtocol/aztec-packages#5233)) ([9a73348](AztecProtocol/aztec-packages@9a73348)) * Check initializer msg.sender matches deployer from address preimage ([#5222](AztecProtocol/aztec-packages#5222)) ([438d16f](AztecProtocol/aztec-packages@438d16f)) * Extended IPA tests and fuzzing ([#5140](AztecProtocol/aztec-packages#5140)) ([0ae5ace](AztecProtocol/aztec-packages@0ae5ace)) * Initial Earthly CI ([#5069](AztecProtocol/aztec-packages#5069)) ([8e75fe5](AztecProtocol/aztec-packages@8e75fe5)) * New Outbox Contract [#4768](AztecProtocol/aztec-packages#4768) ([#5090](AztecProtocol/aztec-packages#5090)) ([6421a3d](AztecProtocol/aztec-packages@6421a3d)) * Remove curly braces with fmt (noir-lang/noir#4529) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Remove curly braces with fmt (noir-lang/noir#4529) ([d8b8456](AztecProtocol/aztec-packages@d8b8456)) * Remove unnecessary `mulmod`s from verifier contract ([#5269](AztecProtocol/aztec-packages#5269)) ([20d9c0c](AztecProtocol/aztec-packages@20d9c0c)) * Signed integer division and modulus in brillig gen ([#5279](AztecProtocol/aztec-packages#5279)) ([82f8cf5](AztecProtocol/aztec-packages@82f8cf5)) * Use deployer in address computation ([#5201](AztecProtocol/aztec-packages#5201)) ([258ff4a](AztecProtocol/aztec-packages@258ff4a)) ### Bug Fixes * **avm-transpiler:** RETURN is direct ([#5277](AztecProtocol/aztec-packages#5277)) ([f90b2cf](AztecProtocol/aztec-packages@f90b2cf)) * **bb:** Mac build ([#5253](AztecProtocol/aztec-packages#5253)) ([ae021c0](AztecProtocol/aztec-packages@ae021c0)) * CVC5 api update ([#5203](AztecProtocol/aztec-packages#5203)) ([9cc32cb](AztecProtocol/aztec-packages@9cc32cb)) * Evaluate operators in globals in types (noir-lang/noir#4537) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Evaluate operators in globals in types (noir-lang/noir#4537) ([d8b8456](AztecProtocol/aztec-packages@d8b8456)) * Make `nargo` the default binary for cargo run (noir-lang/noir#4554) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Make `nargo` the default binary for cargo run (noir-lang/noir#4554) ([d8b8456](AztecProtocol/aztec-packages@d8b8456)) * Revert "fix: noir mirror merge strat" ([#5250](AztecProtocol/aztec-packages#5250)) ([7e8e8e5](AztecProtocol/aztec-packages@7e8e8e5)) * Validation requests ([#5236](AztecProtocol/aztec-packages#5236)) ([25ce33b](AztecProtocol/aztec-packages@25ce33b)) ### Miscellaneous * Add avm team to codeowners for public context ([#5288](AztecProtocol/aztec-packages#5288)) ([e146076](AztecProtocol/aztec-packages@e146076)) * Add more `Hash` impls to stdlib (noir-lang/noir#4470) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Add more `Hash` impls to stdlib (noir-lang/noir#4470) ([d8b8456](AztecProtocol/aztec-packages@d8b8456)) * Add quick explanatory comment to outbox suggested by [@benesjan](https://github.com/benesjan) ([#5247](AztecProtocol/aztec-packages#5247)) ([56e8451](AztecProtocol/aztec-packages@56e8451)) * **avm-simulator:** Update e2e test ([#5283](AztecProtocol/aztec-packages#5283)) ([e9beeca](AztecProtocol/aztec-packages@e9beeca)) * **avm-transpiler:** Return u8 in comparison ops ([#5280](AztecProtocol/aztec-packages#5280)) ([1a5eb69](AztecProtocol/aztec-packages@1a5eb69)) * **avm-transpiler:** Transpiler cleanup ([#5218](AztecProtocol/aztec-packages#5218)) ([199e918](AztecProtocol/aztec-packages@199e918)) * Delete ContractDao ([#5256](AztecProtocol/aztec-packages#5256)) ([544e278](AztecProtocol/aztec-packages@544e278)) * Delete ContractData ([#5258](AztecProtocol/aztec-packages#5258)) ([e516f9b](AztecProtocol/aztec-packages@e516f9b)) * Delete ExtendedContractData struct ([#5248](AztecProtocol/aztec-packages#5248)) ([8ae0c13](AztecProtocol/aztec-packages@8ae0c13)) * Delete isInternal and isConstructor fields from FunctionData ([#5232](AztecProtocol/aztec-packages#5232)) ([dea3f87](AztecProtocol/aztec-packages@dea3f87)) * Delete unused contract tree ts code ([#5229](AztecProtocol/aztec-packages#5229)) ([b48dd23](AztecProtocol/aztec-packages@b48dd23)) * Delete unused hash functions ([#5231](AztecProtocol/aztec-packages#5231)) ([fed70a1](AztecProtocol/aztec-packages@fed70a1)) * Fix docker test workflows (noir-lang/noir#4566) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Fixing some broken links (noir-lang/noir#4556) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Making docs build before cutting versions (noir-lang/noir#4568) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Old inbox purge ([#5206](AztecProtocol/aztec-packages#5206)) ([a26d968](AztecProtocol/aztec-packages@a26d968)) * Removing redundant receipts check ([#5271](AztecProtocol/aztec-packages#5271)) ([5ab07fb](AztecProtocol/aztec-packages@5ab07fb)) * Separate tests for execution failures from compilation failures (noir-lang/noir#4559) ([86e1a86](AztecProtocol/aztec-packages@86e1a86)) * Separate tests for execution failures from compilation failures (noir-lang/noir#4559) ([d8b8456](AztecProtocol/aztec-packages@d8b8456)) * Template Zeromorph by PCS ([#5215](AztecProtocol/aztec-packages#5215)) ([03feab2](AztecProtocol/aztec-packages@03feab2)) * Use inotifywait to run generate in yarn-project ([#5168](AztecProtocol/aztec-packages#5168)) ([137c13e](AztecProtocol/aztec-packages@137c13e)) ### Documentation * **yp:** Remove contract tree and deploy data from circuits and state ([#5260](AztecProtocol/aztec-packages#5260)) ([acffa7b](AztecProtocol/aztec-packages@acffa7b)) </details> <details><summary>barretenberg: 0.29.0</summary> ## [0.29.0](AztecProtocol/aztec-packages@barretenberg-v0.28.1...barretenberg-v0.29.0) (2024-03-18) ### ⚠ BREAKING CHANGES * Acir call opcode ([#4773](AztecProtocol/aztec-packages#4773)) ### Features * Acir call opcode ([#4773](AztecProtocol/aztec-packages#4773)) ([0b15db2](AztecProtocol/aztec-packages@0b15db2)) * Add RelWithAssert build ([#4997](AztecProtocol/aztec-packages#4997)) ([4f337c7](AztecProtocol/aztec-packages@4f337c7)) * **avm:** Mov opcode with direct memory ([#5204](AztecProtocol/aztec-packages#5204)) ([08f9038](AztecProtocol/aztec-packages@08f9038)), closes [#5159](AztecProtocol/aztec-packages#5159) * Extended IPA tests and fuzzing ([#5140](AztecProtocol/aztec-packages#5140)) ([0ae5ace](AztecProtocol/aztec-packages@0ae5ace)) * Initial Earthly CI ([#5069](AztecProtocol/aztec-packages#5069)) ([8e75fe5](AztecProtocol/aztec-packages@8e75fe5)) * Remove unnecessary `mulmod`s from verifier contract ([#5269](AztecProtocol/aztec-packages#5269)) ([20d9c0c](AztecProtocol/aztec-packages@20d9c0c)) * Signed integer division and modulus in brillig gen ([#5279](AztecProtocol/aztec-packages#5279)) ([82f8cf5](AztecProtocol/aztec-packages@82f8cf5)) ### Bug Fixes * **bb:** Mac build ([#5253](AztecProtocol/aztec-packages#5253)) ([ae021c0](AztecProtocol/aztec-packages@ae021c0)) * CVC5 api update ([#5203](AztecProtocol/aztec-packages#5203)) ([9cc32cb](AztecProtocol/aztec-packages@9cc32cb)) ### Miscellaneous * Template Zeromorph by PCS ([#5215](AztecProtocol/aztec-packages#5215)) ([03feab2](AztecProtocol/aztec-packages@03feab2)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Resolves #4768