Skip to content
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(bb): constexpr simplifications #7906

Merged
merged 1 commit into from
Aug 13, 2024
Merged

Conversation

fcarreiro
Copy link
Contributor

@fcarreiro fcarreiro commented Aug 11, 2024

Remove recursion and simplify some template magic, with some new C++20 tricks I learned (also cleaned up unused ones).

Didn't notice any compilation or runtime changes.

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @fcarreiro and the rest of your teammates on Graphite Graphite

{
static_assert(Max >= Min);
static_assert(Inc >= 1);
return []<size_t... Is>(std::index_sequence<Is...>) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I add tests for this? Is not super self-evident.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can also just leave the original one for this, since the recursion didn't seem to be hurting.

Copy link
Collaborator

@ludamad ludamad Aug 13, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I add tests for this? Is not super self-evident.
I can also just leave the original one for this, since the recursion didn't seem to be hurting.

Your call

@fcarreiro fcarreiro marked this pull request as ready for review August 12, 2024 15:22
@fcarreiro fcarreiro requested a review from ludamad August 12, 2024 15:22
@fcarreiro fcarreiro force-pushed the fc/bb-constexpr-tricks branch from 50cf392 to 56f7857 Compare August 13, 2024 14:12
@fcarreiro fcarreiro force-pushed the fc/bb-constexpr-tricks branch from 56f7857 to fc844f1 Compare August 13, 2024 14:17
Copy link
Contributor

Changes to circuit sizes

Generated at commit: 2d7e694e7a765bb4c8b3c9120735cf3b2468c79c, compared to commit: 014b5f03f720e8f56199ec0b1c34694bd0e100e1

🧾 Summary (100% most significant diffs)

Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_tail +9,756 ❌ +198.70% +33,890 ❌ +276.59%
private_kernel_tail_to_public +35,857 ❌ +95.46% +62,520 ❌ +109.45%
private_kernel_reset -8,112 ✅ -6.93% -31,234 ✅ -6.00%
private_kernel_reset_big -5,941 ✅ -6.78% -18,990 ✅ -6.34%
private_kernel_reset_medium -4,669 ✅ -6.43% -12,349 ✅ -6.55%
private_kernel_reset_small -4,031 ✅ -6.18% -9,027 ✅ -6.78%
private_kernel_reset_tiny -3,712 ✅ -6.04% -7,366 ✅ -6.98%

Full diff report 👇
Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_tail 14,666 (+9,756) +198.70% 46,143 (+33,890) +276.59%
private_kernel_tail_to_public 73,419 (+35,857) +95.46% 119,640 (+62,520) +109.45%
private_kernel_reset 108,942 (-8,112) -6.93% 489,428 (-31,234) -6.00%
private_kernel_reset_big 81,638 (-5,941) -6.78% 280,636 (-18,990) -6.34%
private_kernel_reset_medium 67,985 (-4,669) -6.43% 176,239 (-12,349) -6.55%
private_kernel_reset_small 61,158 (-4,031) -6.18% 124,144 (-9,027) -6.78%
private_kernel_reset_tiny 57,746 (-3,712) -6.04% 98,186 (-7,366) -6.98%

@fcarreiro fcarreiro merged commit 65d3b7f into master Aug 13, 2024
37 checks passed
Copy link
Contributor Author

Merge activity

@fcarreiro fcarreiro deleted the fc/bb-constexpr-tricks branch August 13, 2024 15:01
rahul-kothari pushed a commit that referenced this pull request Aug 15, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.49.0</summary>

##
[0.49.0](aztec-package-v0.48.0...aztec-package-v0.49.0)
(2024-08-15)


### ⚠ BREAKING CHANGES

* Sequencer no longer proves
([#7860](#7860))

### Miscellaneous

* Enable execute command on aws ecs services
([#7975](#7975))
([4331bc6](4331bc6))
* Sequencer no longer proves
([#7860](#7860))
([7168290](7168290))
* Terraform template for prover-node
([#7846](#7846))
([546f946](546f946))
</details>

<details><summary>barretenberg.js: 0.49.0</summary>

##
[0.49.0](barretenberg.js-v0.48.0...barretenberg.js-v0.49.0)
(2024-08-15)


### Miscellaneous

* Pin yarn versions in noir-projects and bb/ts
([#7988](#7988))
([83f33a1](83f33a1))
</details>

<details><summary>aztec-packages: 0.49.0</summary>

##
[0.49.0](aztec-packages-v0.48.0...aztec-packages-v0.49.0)
(2024-08-15)


### ⚠ BREAKING CHANGES

* alternative key registry contract
([#7523](#7523))
* Sequencer no longer proves
([#7860](#7860))

### Features

* Add `FunctionDefinition::parameters`,
`FunctionDefinition::return_type` and `impl Eq for Quoted`
(noir-lang/noir#5681)
([b1c7374](b1c7374))
* Add `Quoted::as_expr` and `Expr::as_function_call`
(noir-lang/noir#5708)
([91042c7](91042c7))
* Add `Type::as_struct` (noir-lang/noir#5680)
([b1c7374](b1c7374))
* Add `Type::get_trait_impl`
(noir-lang/noir#5716)
([ccbef55](ccbef55))
* Add `Type::implements` (noir-lang/noir#5701)
([91042c7](91042c7))
* Add `Type::is_field` and `Type::as_integer`
(noir-lang/noir#5670)
([b1c7374](b1c7374))
* Add `Type` methods: `as_tuple`, `as_slice`, `as_array`, `as_constant`,
`is_bool` (noir-lang/noir#5678)
([b1c7374](b1c7374))
* Add a limited form of arithmetic on generics
(noir-lang/noir#5625)
([b1c7374](b1c7374))
* Add array_to_str_lossy (noir-lang/noir#5613)
([b1c7374](b1c7374))
* Add generate-secret-and-hash to cli
([#7977](#7977))
([cdf62a0](cdf62a0))
* Add mutating FunctionDefinition functions
(noir-lang/noir#5685)
([b1c7374](b1c7374))
* Add proven flag to sent tx wait opts
([#7950](#7950))
([e80e7d2](e80e7d2))
* Add some `Module` comptime functions
(noir-lang/noir#5684)
([b1c7374](b1c7374))
* Alternative key registry contract
([#7523](#7523))
([3e6a20f](3e6a20f))
* **avm:** More no fake rows + virtual dyn gas (part 1)
([#7942](#7942))
([9e8ba96](9e8ba96))
* Derive `Ord` and `Hash` in the stdlib; add `std::meta::make_impl`
helper (noir-lang/noir#5683)
([b1c7374](b1c7374))
* Destroy_note_unsafe
([#7891](#7891))
([5cda7ba](5cda7ba))
* **docs:** Nits
([#7838](#7838))
([a76c999](a76c999))
* Enable UltraHonk verifier
([#7923](#7923))
([5e8b4a8](5e8b4a8)),
closes
[#7373](#7373)
* Implement closures in the comptime interpreter
(noir-lang/noir#5682)
([b1c7374](b1c7374))
* IVC integration tests using new accumulate model
([#7946](#7946))
([c527ae9](c527ae9))
* LSP autocompletion for use statement
(noir-lang/noir#5704)
([91042c7](91042c7))
* LSP closing brace hints (noir-lang/noir#5686)
([b1c7374](b1c7374))
* LSP fields, functions and methods completion after "." and "::"
(noir-lang/noir#5714)
([ccbef55](ccbef55))
* LSP hover now includes "Go to" links
(noir-lang/noir#5677)
([b1c7374](b1c7374))
* LSP path completion (noir-lang/noir#5712)
([91042c7](91042c7))
* **noir_js:** Expose UltraHonk and integration tests
(noir-lang/noir#5656)
([b1c7374](b1c7374))
* Optimizing PrivateFPC
([#7980](#7980))
([d018335](d018335))
* Private refunds optimizations
([#7968](#7968))
([cea8295](cea8295))
* Resolve arguments to attributes
(noir-lang/noir#5649)
([b1c7374](b1c7374))
* **ssa:** Simple serialization of unoptimized SSA to file
(noir-lang/noir#5679)
([b1c7374](b1c7374))
* Sync from aztec-packages (noir-lang/noir#5718)
([ccbef55](ccbef55))
* Update honk ultra_recursive_verifier to do aggregation
([#7582](#7582))
([a96a5ad](a96a5ad))


### Bug Fixes

* Add locations to most SSA instructions
(noir-lang/noir#5697)
([b1c7374](b1c7374))
* Allow txs on block zero
([#7928](#7928))
([5e25cd6](5e25cd6))
* Build error in e2e_block_building
([0d0646d](0d0646d))
* **debugger:** Update the debugger to handle the new Brillig debug
metadata format (noir-lang/noir#5706)
([91042c7](91042c7))
* Delete forks after proving job has finished
([#7972](#7972))
([2b4a842](2b4a842))
* Deploy verifier cmd
([#7983](#7983))
([f4fa797](f4fa797))
* Derive generic types (noir-lang/noir#5674)
([b1c7374](b1c7374))
* Do not duplicate redundant Brillig debug metadata
(noir-lang/noir#5696)
([b1c7374](b1c7374))
* Do not mount ssh agent on OSX
([#7991](#7991))
([950db8e](950db8e))
* **docs:** Add redirects for website links
([#7979](#7979))
([e890814](e890814))
* Elaborate struct & trait annotations in the correct module
(noir-lang/noir#5643)
([b1c7374](b1c7374))
* Fix where clause issue in items generated from attributes
(noir-lang/noir#5673)
([b1c7374](b1c7374))
* Lay plumbing for having simulations throw an error if they cannot be
added in a block
([#7839](#7839))
([eedbc11](eedbc11))
* Let a trait impl that relies on another trait work
(noir-lang/noir#5646)
([b1c7374](b1c7374))
* Only record bytecode if &gt;0
([#7932](#7932))
([3f145b3](3f145b3))
* Remove missing file
([#7941](#7941))
([4d9290f](4d9290f))
* Replace unused ArrayGet/Set with constrain if possibly out of bounds
(noir-lang/noir#5691)
([ccbef55](ccbef55))
* Switch verify proof to arrays
(noir-lang/noir#5664)
([b1c7374](b1c7374))
* Track L1 block for last L2 block body retrieved
([#7927](#7927))
([cd36be4](cd36be4)),
closes
[#7918](#7918)
* Unexpose get note nonces on pxe
([#7889](#7889))
([163c3a6](163c3a6))
* Use data dir for lmdb forks
([#7973](#7973))
([5b53d43](5b53d43))
* Workaround from_slice with nested slices
(noir-lang/noir#5648)
([b1c7374](b1c7374))


### Miscellaneous

* Add docs tip about filenames between commands
(noir-lang/noir#5695)
([b1c7374](b1c7374))
* Add env var to disable bb cleanup
([#7936](#7936))
([806a370](806a370))
* Add parser support for `&lt;MyType as Trait&gt;::ident`
(noir-lang/noir#5688)
([b1c7374](b1c7374))
* Add tests for noir&lt;&gt;ivc integration testing
([#7931](#7931))
([7cc47a6](7cc47a6))
* Allow passing custom executors to fuzzer
(noir-lang/noir#5710)
([91042c7](91042c7))
* **avm:** Fewer errors unless testing
([#7943](#7943))
([33b65a9](33b65a9))
* **bb:** Constexpr simplifications
([#7906](#7906))
([65d3b7f](65d3b7f))
* **bb:** Prereq work for polynomial mem optimization
([#7949](#7949))
([5ca5138](5ca5138))
* **ci:** Print detailed target timings
([#7934](#7934))
([fb574aa](fb574aa))
* Do not clean up bb files on err
([#7985](#7985))
([75c6768](75c6768))
* Enable execute command on aws ecs services
([#7975](#7975))
([4331bc6](4331bc6))
* Ensure bootstrapped networks have no pending blocks when proving
starts
([#7986](#7986))
([fb471b3](fb471b3))
* Fork logs and prover job catch
([#7982](#7982))
([69bde53](69bde53))
* Move siloing to reset
([#7871](#7871))
([014b5f0](014b5f0))
* Pin yarn versions in noir-projects and bb/ts
([#7988](#7988))
([83f33a1](83f33a1))
* Release Noir(0.33.0) (noir-lang/noir#5550)
([b1c7374](b1c7374))
* Replace relative paths to noir-protocol-circuits
([cd5f138](cd5f138))
* Replace relative paths to noir-protocol-circuits
([6f3cef9](6f3cef9))
* Replace relative paths to noir-protocol-circuits
([54c4441](54c4441))
* Replace VERSION with IMAGE on provernet template
([d5e48aa](d5e48aa))
* Sequencer no longer proves
([#7860](#7860))
([7168290](7168290))
* Simplify registry
([#7939](#7939))
([8e0418f](8e0418f))
* Terraform template for prover-node
([#7846](#7846))
([546f946](546f946))
* Update provernet docker compose template
([#7929](#7929))
([33d47d2](33d47d2))
* Updating token with refunds
([#7969](#7969))
([504deba](504deba))
</details>

<details><summary>barretenberg: 0.49.0</summary>

##
[0.49.0](barretenberg-v0.48.0...barretenberg-v0.49.0)
(2024-08-15)


### Features

* **avm:** More no fake rows + virtual dyn gas (part 1)
([#7942](#7942))
([9e8ba96](9e8ba96))
* IVC integration tests using new accumulate model
([#7946](#7946))
([c527ae9](c527ae9))
* Update honk ultra_recursive_verifier to do aggregation
([#7582](#7582))
([a96a5ad](a96a5ad))


### Miscellaneous

* **avm:** Fewer errors unless testing
([#7943](#7943))
([33b65a9](33b65a9))
* **bb:** Constexpr simplifications
([#7906](#7906))
([65d3b7f](65d3b7f))
* **bb:** Prereq work for polynomial mem optimization
([#7949](#7949))
([5ca5138](5ca5138))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
AztecBot added a commit to AztecProtocol/barretenberg that referenced this pull request Aug 16, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.49.0</summary>

##
[0.49.0](AztecProtocol/aztec-packages@aztec-package-v0.48.0...aztec-package-v0.49.0)
(2024-08-15)


### ⚠ BREAKING CHANGES

* Sequencer no longer proves
([#7860](AztecProtocol/aztec-packages#7860))

### Miscellaneous

* Enable execute command on aws ecs services
([#7975](AztecProtocol/aztec-packages#7975))
([4331bc6](AztecProtocol/aztec-packages@4331bc6))
* Sequencer no longer proves
([#7860](AztecProtocol/aztec-packages#7860))
([7168290](AztecProtocol/aztec-packages@7168290))
* Terraform template for prover-node
([#7846](AztecProtocol/aztec-packages#7846))
([546f946](AztecProtocol/aztec-packages@546f946))
</details>

<details><summary>barretenberg.js: 0.49.0</summary>

##
[0.49.0](AztecProtocol/aztec-packages@barretenberg.js-v0.48.0...barretenberg.js-v0.49.0)
(2024-08-15)


### Miscellaneous

* Pin yarn versions in noir-projects and bb/ts
([#7988](AztecProtocol/aztec-packages#7988))
([83f33a1](AztecProtocol/aztec-packages@83f33a1))
</details>

<details><summary>aztec-packages: 0.49.0</summary>

##
[0.49.0](AztecProtocol/aztec-packages@aztec-packages-v0.48.0...aztec-packages-v0.49.0)
(2024-08-15)


### ⚠ BREAKING CHANGES

* alternative key registry contract
([#7523](AztecProtocol/aztec-packages#7523))
* Sequencer no longer proves
([#7860](AztecProtocol/aztec-packages#7860))

### Features

* Add `FunctionDefinition::parameters`,
`FunctionDefinition::return_type` and `impl Eq for Quoted`
(noir-lang/noir#5681)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add `Quoted::as_expr` and `Expr::as_function_call`
(noir-lang/noir#5708)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* Add `Type::as_struct` (noir-lang/noir#5680)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add `Type::get_trait_impl`
(noir-lang/noir#5716)
([ccbef55](AztecProtocol/aztec-packages@ccbef55))
* Add `Type::implements` (noir-lang/noir#5701)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* Add `Type::is_field` and `Type::as_integer`
(noir-lang/noir#5670)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add `Type` methods: `as_tuple`, `as_slice`, `as_array`, `as_constant`,
`is_bool` (noir-lang/noir#5678)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add a limited form of arithmetic on generics
(noir-lang/noir#5625)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add array_to_str_lossy (noir-lang/noir#5613)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add generate-secret-and-hash to cli
([#7977](AztecProtocol/aztec-packages#7977))
([cdf62a0](AztecProtocol/aztec-packages@cdf62a0))
* Add mutating FunctionDefinition functions
(noir-lang/noir#5685)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add proven flag to sent tx wait opts
([#7950](AztecProtocol/aztec-packages#7950))
([e80e7d2](AztecProtocol/aztec-packages@e80e7d2))
* Add some `Module` comptime functions
(noir-lang/noir#5684)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Alternative key registry contract
([#7523](AztecProtocol/aztec-packages#7523))
([3e6a20f](AztecProtocol/aztec-packages@3e6a20f))
* **avm:** More no fake rows + virtual dyn gas (part 1)
([#7942](AztecProtocol/aztec-packages#7942))
([9e8ba96](AztecProtocol/aztec-packages@9e8ba96))
* Derive `Ord` and `Hash` in the stdlib; add `std::meta::make_impl`
helper (noir-lang/noir#5683)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Destroy_note_unsafe
([#7891](AztecProtocol/aztec-packages#7891))
([5cda7ba](AztecProtocol/aztec-packages@5cda7ba))
* **docs:** Nits
([#7838](AztecProtocol/aztec-packages#7838))
([a76c999](AztecProtocol/aztec-packages@a76c999))
* Enable UltraHonk verifier
([#7923](AztecProtocol/aztec-packages#7923))
([5e8b4a8](AztecProtocol/aztec-packages@5e8b4a8)),
closes
[#7373](AztecProtocol/aztec-packages#7373)
* Implement closures in the comptime interpreter
(noir-lang/noir#5682)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* IVC integration tests using new accumulate model
([#7946](AztecProtocol/aztec-packages#7946))
([c527ae9](AztecProtocol/aztec-packages@c527ae9))
* LSP autocompletion for use statement
(noir-lang/noir#5704)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* LSP closing brace hints (noir-lang/noir#5686)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* LSP fields, functions and methods completion after "." and "::"
(noir-lang/noir#5714)
([ccbef55](AztecProtocol/aztec-packages@ccbef55))
* LSP hover now includes "Go to" links
(noir-lang/noir#5677)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* LSP path completion (noir-lang/noir#5712)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* **noir_js:** Expose UltraHonk and integration tests
(noir-lang/noir#5656)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Optimizing PrivateFPC
([#7980](AztecProtocol/aztec-packages#7980))
([d018335](AztecProtocol/aztec-packages@d018335))
* Private refunds optimizations
([#7968](AztecProtocol/aztec-packages#7968))
([cea8295](AztecProtocol/aztec-packages@cea8295))
* Resolve arguments to attributes
(noir-lang/noir#5649)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* **ssa:** Simple serialization of unoptimized SSA to file
(noir-lang/noir#5679)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Sync from aztec-packages (noir-lang/noir#5718)
([ccbef55](AztecProtocol/aztec-packages@ccbef55))
* Update honk ultra_recursive_verifier to do aggregation
([#7582](AztecProtocol/aztec-packages#7582))
([a96a5ad](AztecProtocol/aztec-packages@a96a5ad))


### Bug Fixes

* Add locations to most SSA instructions
(noir-lang/noir#5697)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Allow txs on block zero
([#7928](AztecProtocol/aztec-packages#7928))
([5e25cd6](AztecProtocol/aztec-packages@5e25cd6))
* Build error in e2e_block_building
([0d0646d](AztecProtocol/aztec-packages@0d0646d))
* **debugger:** Update the debugger to handle the new Brillig debug
metadata format (noir-lang/noir#5706)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* Delete forks after proving job has finished
([#7972](AztecProtocol/aztec-packages#7972))
([2b4a842](AztecProtocol/aztec-packages@2b4a842))
* Deploy verifier cmd
([#7983](AztecProtocol/aztec-packages#7983))
([f4fa797](AztecProtocol/aztec-packages@f4fa797))
* Derive generic types (noir-lang/noir#5674)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Do not duplicate redundant Brillig debug metadata
(noir-lang/noir#5696)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Do not mount ssh agent on OSX
([#7991](AztecProtocol/aztec-packages#7991))
([950db8e](AztecProtocol/aztec-packages@950db8e))
* **docs:** Add redirects for website links
([#7979](AztecProtocol/aztec-packages#7979))
([e890814](AztecProtocol/aztec-packages@e890814))
* Elaborate struct & trait annotations in the correct module
(noir-lang/noir#5643)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Fix where clause issue in items generated from attributes
(noir-lang/noir#5673)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Lay plumbing for having simulations throw an error if they cannot be
added in a block
([#7839](AztecProtocol/aztec-packages#7839))
([eedbc11](AztecProtocol/aztec-packages@eedbc11))
* Let a trait impl that relies on another trait work
(noir-lang/noir#5646)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Only record bytecode if &gt;0
([#7932](AztecProtocol/aztec-packages#7932))
([3f145b3](AztecProtocol/aztec-packages@3f145b3))
* Remove missing file
([#7941](AztecProtocol/aztec-packages#7941))
([4d9290f](AztecProtocol/aztec-packages@4d9290f))
* Replace unused ArrayGet/Set with constrain if possibly out of bounds
(noir-lang/noir#5691)
([ccbef55](AztecProtocol/aztec-packages@ccbef55))
* Switch verify proof to arrays
(noir-lang/noir#5664)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Track L1 block for last L2 block body retrieved
([#7927](AztecProtocol/aztec-packages#7927))
([cd36be4](AztecProtocol/aztec-packages@cd36be4)),
closes
[#7918](AztecProtocol/aztec-packages#7918)
* Unexpose get note nonces on pxe
([#7889](AztecProtocol/aztec-packages#7889))
([163c3a6](AztecProtocol/aztec-packages@163c3a6))
* Use data dir for lmdb forks
([#7973](AztecProtocol/aztec-packages#7973))
([5b53d43](AztecProtocol/aztec-packages@5b53d43))
* Workaround from_slice with nested slices
(noir-lang/noir#5648)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))


### Miscellaneous

* Add docs tip about filenames between commands
(noir-lang/noir#5695)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add env var to disable bb cleanup
([#7936](AztecProtocol/aztec-packages#7936))
([806a370](AztecProtocol/aztec-packages@806a370))
* Add parser support for `&lt;MyType as Trait&gt;::ident`
(noir-lang/noir#5688)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Add tests for noir&lt;&gt;ivc integration testing
([#7931](AztecProtocol/aztec-packages#7931))
([7cc47a6](AztecProtocol/aztec-packages@7cc47a6))
* Allow passing custom executors to fuzzer
(noir-lang/noir#5710)
([91042c7](AztecProtocol/aztec-packages@91042c7))
* **avm:** Fewer errors unless testing
([#7943](AztecProtocol/aztec-packages#7943))
([33b65a9](AztecProtocol/aztec-packages@33b65a9))
* **bb:** Constexpr simplifications
([#7906](AztecProtocol/aztec-packages#7906))
([65d3b7f](AztecProtocol/aztec-packages@65d3b7f))
* **bb:** Prereq work for polynomial mem optimization
([#7949](AztecProtocol/aztec-packages#7949))
([5ca5138](AztecProtocol/aztec-packages@5ca5138))
* **ci:** Print detailed target timings
([#7934](AztecProtocol/aztec-packages#7934))
([fb574aa](AztecProtocol/aztec-packages@fb574aa))
* Do not clean up bb files on err
([#7985](AztecProtocol/aztec-packages#7985))
([75c6768](AztecProtocol/aztec-packages@75c6768))
* Enable execute command on aws ecs services
([#7975](AztecProtocol/aztec-packages#7975))
([4331bc6](AztecProtocol/aztec-packages@4331bc6))
* Ensure bootstrapped networks have no pending blocks when proving
starts
([#7986](AztecProtocol/aztec-packages#7986))
([fb471b3](AztecProtocol/aztec-packages@fb471b3))
* Fork logs and prover job catch
([#7982](AztecProtocol/aztec-packages#7982))
([69bde53](AztecProtocol/aztec-packages@69bde53))
* Move siloing to reset
([#7871](AztecProtocol/aztec-packages#7871))
([014b5f0](AztecProtocol/aztec-packages@014b5f0))
* Pin yarn versions in noir-projects and bb/ts
([#7988](AztecProtocol/aztec-packages#7988))
([83f33a1](AztecProtocol/aztec-packages@83f33a1))
* Release Noir(0.33.0) (noir-lang/noir#5550)
([b1c7374](AztecProtocol/aztec-packages@b1c7374))
* Replace relative paths to noir-protocol-circuits
([cd5f138](AztecProtocol/aztec-packages@cd5f138))
* Replace relative paths to noir-protocol-circuits
([6f3cef9](AztecProtocol/aztec-packages@6f3cef9))
* Replace relative paths to noir-protocol-circuits
([54c4441](AztecProtocol/aztec-packages@54c4441))
* Replace VERSION with IMAGE on provernet template
([d5e48aa](AztecProtocol/aztec-packages@d5e48aa))
* Sequencer no longer proves
([#7860](AztecProtocol/aztec-packages#7860))
([7168290](AztecProtocol/aztec-packages@7168290))
* Simplify registry
([#7939](AztecProtocol/aztec-packages#7939))
([8e0418f](AztecProtocol/aztec-packages@8e0418f))
* Terraform template for prover-node
([#7846](AztecProtocol/aztec-packages#7846))
([546f946](AztecProtocol/aztec-packages@546f946))
* Update provernet docker compose template
([#7929](AztecProtocol/aztec-packages#7929))
([33d47d2](AztecProtocol/aztec-packages@33d47d2))
* Updating token with refunds
([#7969](AztecProtocol/aztec-packages#7969))
([504deba](AztecProtocol/aztec-packages@504deba))
</details>

<details><summary>barretenberg: 0.49.0</summary>

##
[0.49.0](AztecProtocol/aztec-packages@barretenberg-v0.48.0...barretenberg-v0.49.0)
(2024-08-15)


### Features

* **avm:** More no fake rows + virtual dyn gas (part 1)
([#7942](AztecProtocol/aztec-packages#7942))
([9e8ba96](AztecProtocol/aztec-packages@9e8ba96))
* IVC integration tests using new accumulate model
([#7946](AztecProtocol/aztec-packages#7946))
([c527ae9](AztecProtocol/aztec-packages@c527ae9))
* Update honk ultra_recursive_verifier to do aggregation
([#7582](AztecProtocol/aztec-packages#7582))
([a96a5ad](AztecProtocol/aztec-packages@a96a5ad))


### Miscellaneous

* **avm:** Fewer errors unless testing
([#7943](AztecProtocol/aztec-packages#7943))
([33b65a9](AztecProtocol/aztec-packages@33b65a9))
* **bb:** Constexpr simplifications
([#7906](AztecProtocol/aztec-packages#7906))
([65d3b7f](AztecProtocol/aztec-packages@65d3b7f))
* **bb:** Prereq work for polynomial mem optimization
([#7949](AztecProtocol/aztec-packages#7949))
([5ca5138](AztecProtocol/aztec-packages@5ca5138))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants