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

feat: avm support for public input columns #5700

Merged
merged 21 commits into from
May 10, 2024

Conversation

Maddiaa0
Copy link
Member

@Maddiaa0 Maddiaa0 commented Apr 11, 2024

Adds support for public input columns as outlined in the following hackmd: https://hackmd.io/8kkJo4RkRTG6mpwL8fOf3w?both

There are some temporary deviations from the spec that have been made to avoid changing the sumcheck / zeromorph code.

In this implementation we let the prover commit to the public input columns, this means that during sumcheck the public input columns are evaluated at the same challenge points as the other commitments. Therefore the claimed_evaluation for the public inputs can be accumulated in zeromorph in the same way all of the other polynomials are.

[[for me: how to do what is described in the hackmd]]
To do exactly what is described in the hackmd, we would be required to hash each of the public inputs, then perform the same opening.
We can then remove the prover committing to the public input columns, and remove the opening of the public input columns from zeromorph.
[[/for me]]

For the meantime, pil and the prover will support a single public inputs column, but in the future we can extend the scheme where we evaluate the poly in the verifier for any number of columns.

Copy link
Member Author

Maddiaa0 commented Apr 11, 2024

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

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

@AztecBot
Copy link
Collaborator

AztecBot commented Apr 11, 2024

Benchmark results

No metrics with a significant change found.

Detailed results

All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.

This benchmark source data is available in JSON format on S3 here.

L2 block published to L1

Each column represents the number of txs on an L2 block published to L1.

Metric 8 txs 32 txs 64 txs
l1_rollup_calldata_size_in_bytes 772 772 772
l1_rollup_calldata_gas 6,832 6,844 6,820
l1_rollup_execution_gas 587,313 587,325 587,301
l2_block_processing_time_in_ms 1,548 (+5%) 5,314 (-1%) 10,347
note_successful_decrypting_time_in_ms 221 (-11%) 569 (+2%) 1,008 (+6%)
note_trial_decrypting_time_in_ms 20.4 (-58%) 74.3 (+13%) 27.0 (-61%)
l2_block_building_time_in_ms 18,196 70,650 (-1%) 141,826 (-1%)
l2_block_rollup_simulation_time_in_ms 17,956 69,802 (-1%) 140,158 (-1%)
l2_block_public_tx_process_time_in_ms 8,258 31,783 (-1%) 63,880 (-1%)

L2 chain processing

Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric 5 blocks 10 blocks
node_history_sync_time_in_ms 16,016 (-3%) 30,743 (+2%)
note_history_successful_decrypting_time_in_ms 1,220 (-3%) 2,362 (-6%)
note_history_trial_decrypting_time_in_ms 117 (+72%) 86.4 (-26%)
node_database_size_in_bytes 19,148,880 35,844,176
pxe_database_size_in_bytes 29,859 59,414

Circuits stats

Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit circuit_simulation_time_in_ms circuit_input_size_in_bytes circuit_output_size_in_bytes
private-kernel-init 149 (-2%) 45,173 27,384
private-kernel-inner 164 (-1%) 73,608 27,384
private-kernel-ordering 119 (-2%) 53,138 41,123
base-parity 45.6 128 311
root-parity 7.32 (-2%) 1,244 311
base-rollup 19,059 (-1%) 110,928 957
root-rollup 47.4 (-1%) 4,551 821
public-kernel-app-logic 91.8 (-2%) 50,319 42,853
public-kernel-tail 375 (-2%) 159,352 7,493
merge-rollup 7.46 (+5%) 2,760 957
public-kernel-teardown 87.6 50,319 42,853
public-kernel-setup 86.4 50,319 42,853

Tree insertion stats

The duration to insert a fixed batch of leaves into each tree type.

Metric 1 leaves 16 leaves 64 leaves 128 leaves 512 leaves 1024 leaves 2048 leaves 4096 leaves 32 leaves
batch_insert_into_append_only_tree_16_depth_ms 11.1 (-1%) 17.7 (-1%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_count 16.8 31.6 N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_16_depth_hash_ms 0.643 (-1%) 0.546 (-1%) N/A N/A N/A N/A N/A N/A N/A
batch_insert_into_append_only_tree_32_depth_ms N/A N/A 52.1 (-1%) 80.5 (-1%) 264 (+2%) 506 (-2%) 979 (-2%) 1,918 (-2%) N/A
batch_insert_into_append_only_tree_32_depth_hash_count N/A N/A 96.0 159 543 1,055 2,079 4,127 N/A
batch_insert_into_append_only_tree_32_depth_hash_ms N/A N/A 0.534 (-1%) 0.496 0.481 (+2%) 0.472 (-2%) 0.465 (-2%) 0.459 (-2%) N/A
batch_insert_into_indexed_tree_20_depth_ms N/A N/A 60.9 (-1%) 119 (-2%) 378 749 (-2%) 1,454 (-2%) 2,876 (-2%) N/A
batch_insert_into_indexed_tree_20_depth_hash_count N/A N/A 105 207 691 1,363 2,707 5,395 N/A
batch_insert_into_indexed_tree_20_depth_hash_ms N/A N/A 0.538 (-1%) 0.534 (-1%) 0.510 0.513 (-2%) 0.503 (-2%) 0.500 (-2%) N/A
batch_insert_into_indexed_tree_40_depth_ms N/A N/A N/A N/A N/A N/A N/A N/A 67.4 (-1%)
batch_insert_into_indexed_tree_40_depth_hash_count N/A N/A N/A N/A N/A N/A N/A N/A 109
batch_insert_into_indexed_tree_40_depth_hash_ms N/A N/A N/A N/A N/A N/A N/A N/A 0.588 (-1%)

Miscellaneous

Transaction sizes based on how many contract classes are registered in the tx.

Metric 0 registered classes 1 registered classes
tx_size_in_bytes 42,886 535,757

Transaction size based on fee payment method

Metric native fee payment method fpc_public fee payment method fpc_private fee payment method
tx_with_fee_size_in_bytes 897 1,145 1,345

Transaction processing duration by data writes.

Metric 0 new note hashes 1 new note hashes 2 new note hashes
tx_pxe_processing_time_ms 1,263 (+1%) 837 (-3%) 3,473
Metric 1 public data writes 2 public data writes 3 public data writes 4 public data writes 5 public data writes 8 public data writes
tx_sequencer_processing_time_ms 794 (-3%) 670 1,292 (+1%) 874 1,972 (+1%) 1,132 (+1%)

@Maddiaa0 Maddiaa0 marked this pull request as ready for review April 12, 2024 13:53
Copy link
Contributor

@jeanmon jeanmon left a comment

Choose a reason for hiding this comment

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

Good job! Look at my feedback before merging.

}

// Get commitments to VM wires
commitments.Spike_kernel_inputs =
Copy link
Contributor

Choose a reason for hiding this comment

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

Probably it does not hurt, but I thought that the prover would not generate the commitment for public columns.

Copy link
Member Author

Choose a reason for hiding this comment

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

You are correct, the pr description goes over the current approach, as a temporary step this is enough. Otherwise we would need to hash each public input individually.

Copy link
Contributor

Choose a reason for hiding this comment

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

@Maddiaa0 Ok. Could you just make sure we keep a ticket or a reminder somewhere about this?

transcript->template receive_from_prover<Commitment>(commitment_labels.Spike_kernel_inputs);
commitments.Spike_x = transcript->template receive_from_prover<Commitment>(commitment_labels.Spike_x);

// Get commitments to inverses
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this missing?

Copy link
Member Author

Choose a reason for hiding this comment

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

Ah, ill make codegen remove this comment, there were no lookups in this so there are no inverse commitments required

@Maddiaa0 Maddiaa0 enabled auto-merge (squash) May 10, 2024 10:38
@Maddiaa0 Maddiaa0 merged commit 8cf9168 into master May 10, 2024
95 checks passed
@Maddiaa0 Maddiaa0 deleted the md/04-11-feat_bb_support_for_public_input_columns branch May 10, 2024 11:21
rahul-kothari pushed a commit that referenced this pull request May 14, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.39.0](aztec-package-v0.38.0...aztec-package-v0.39.0)
(2024-05-14)


### Features

* **p2p:** GossibSub
([#6170](#6170))
([98d32f1](98d32f1)),
closes
[#5055](#5055)
* PublicKeys struct
([#6333](#6333))
([2633cfc](2633cfc))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](#6300))
([9c30759](9c30759)),
closes
[#5834](#5834)
</details>

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

##
[0.39.0](barretenberg.js-v0.38.0...barretenberg.js-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))

### Features

* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
</details>

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

##
[0.39.0](aztec-packages-v0.38.0...aztec-packages-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
* shared mutable configurable delays
([#6104](#6104))
* specify databus arrays for BB
([#6239](#6239))

### Features

* Add `Not` trait to stdlib
(noir-lang/noir#4999)
([11cde44](11cde44))
* Add support for u16/i16 (noir-lang/noir#4985)
([11cde44](11cde44))
* Avm support for public input columns
([#5700](#5700))
([8cf9168](8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](#6308))
([6374a32](6374a32))
* **avm-simulator:** Error stack tracking and enriching in AVM to match
ACVM/ACIR-SIM
([#6289](#6289))
([5c1f895](5c1f895))
* **aztec-nr:** Add 'with_gas()' function to avm call interface
([#6256](#6256))
([0aedd23](0aedd23))
* **aztec-nr:** Add enqueue functions to AvmCallInterface
([#6264](#6264))
([1c74387](1c74387))
* Build-images as earthly.
([#6194](#6194))
([67fedf1](67fedf1))
* Div opcode
([#6053](#6053))
([8e111f8](8e111f8))
* Encrypted log body
([#6251](#6251))
([ba618d5](ba618d5))
* Enforce note hash read requests to read within own contract
([#6310](#6310))
([bd10595](bd10595))
* Expose `set_as_fee_payer` and test it in e2e
([#6380](#6380))
([a8274f3](a8274f3))
* Implement `ops` traits on `u16`/`i16`
(noir-lang/noir#4996)
([11cde44](11cde44))
* Increase default expression width to 4
(noir-lang/noir#4995)
([11cde44](11cde44))
* Move abi demonomorphizer to noir_codegen and use noir_codegen in
protocol types
([#6302](#6302))
([690e500](690e500))
* Move to_radix to a blackbox
([#6294](#6294))
([ac27376](ac27376))
* **p2p:** GossibSub
([#6170](#6170))
([98d32f1](98d32f1)),
closes
[#5055](#5055)
* Plumb fee payer
([#6286](#6286))
([1f8fd1c](1f8fd1c))
* Private Kernel Recursion
([#6278](#6278))
([eae5822](eae5822))
* Proper padding in ts AES and constrained AES in body and header
computations
([#6269](#6269))
([ef9cdde](ef9cdde))
* PublicKeys struct
([#6333](#6333))
([2633cfc](2633cfc))
* Re-enabling authwit constraint
([#6323](#6323))
([aa06d55](aa06d55)),
closes
[#5830](#5830)
* Remove query to backend to get expression width
(noir-lang/noir#4975)
([11cde44](11cde44))
* Replacing mentions to aztec-starter with codespace methods
([#6177](#6177))
([63e8788](63e8788))
* Return gas usage per phase from node tx simulation
([#6255](#6255))
([fb58dfc](fb58dfc))
* Shared mutable configurable delays
([#6104](#6104))
([c191a40](c191a40))
* Small translator optimisations
([#6354](#6354))
([ba6c42e](ba6c42e))
* Specify databus arrays for BB
([#6239](#6239))
([01d9f24](01d9f24))
* Structured trace in client ivc
([#6132](#6132))
([92c1478](92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
* Sync from aztec-packages (noir-lang/noir#4993)
([11cde44](11cde44))
* ToRadix BB + avm transpiler support
([#6330](#6330))
([c3c602f](c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](#5739))
([3250a8a](3250a8a))


### Bug Fixes

* `CombinedConstantData` not registered for serialization
([#6292](#6292))
([89ab8ee](89ab8ee))
* **avm-context:** Enqueueing of public from private
([#6299](#6299))
([bd2ccf0](bd2ccf0))
* **avm-simulator:** Always set revertReason when reverting
([#6297](#6297))
([cc59981](cc59981))
* **avm-simulator:** Correctly create call stack in shallow assertions
([#6274](#6274))
([f6045fd](f6045fd))
* **avm-simulator:** Fix env getters
([#6357](#6357))
([485fe40](485fe40))
* **avm-simulator:** Fix message sender
([#6331](#6331))
([f7e2d26](f7e2d26))
* **avm-simulator:** Fix test expectation
([#6293](#6293))
([f51acfa](f51acfa))
* **avm-simulator:** Rethrow nested assertions
([#6275](#6275))
([cd05b91](cd05b91))
* **avm-transpiler:** Patch debug infos with modified PCs
([#6371](#6371))
([c36f0fa](c36f0fa))
* Check for public args in aztec functions
([#6355](#6355))
([219efd6](219efd6))
* **ci:** Bench list
([#6282](#6282))
([2652576](2652576))
* **circuits.js:** Fix nullifier non existent hints
([#6346](#6346))
([297779a](297779a))
* **ci:** Stop mass serialization
([#6290](#6290))
([60104e9](60104e9))
* Defer overflow checks for unsigned integers to acir-gen
(noir-lang/noir#4832)
([11cde44](11cde44))
* Enable client proof tests
([#6249](#6249))
([6d3a800](6d3a800))
* Ignore no_predicates in brillig functions
(noir-lang/noir#5012)
([3cda21a](3cda21a))
* Noir_js import
([#6381](#6381))
([e9c7e5f](e9c7e5f))
* Pw/update merge check
([#6201](#6201))
([856657f](856657f))
* Run noir browser tests in series
([#6232](#6232))
([e092514](e092514))
* Temporarily revert to_radix blackbox
([#6304](#6304))
([044d0fe](044d0fe))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](#6300))
([9c30759](9c30759)),
closes
[#5834](#5834)
* Adding name shadowing tests template program
(noir-lang/noir#4799)
([11cde44](11cde44))
* **avm-context:** Implement Empty
([#6303](#6303))
([27534ac](27534ac))
* **avm-simulator:** Add U128 overflow tests to AVM simulator
([#6281](#6281))
([5514143](5514143))
* Bump public bytecode size to 40000 in prep for AVM migration
([#6266](#6266))
([2b61123](2b61123))
* Bump timeout for after-hook for data store test
([#6364](#6364))
([18eca39](18eca39))
* **ci:** Fix master, better spot copy times
([#6374](#6374))
([fee7649](fee7649))
* **ci:** Hotfix runner checks
([#6373](#6373))
([d5fd668](d5fd668))
* **ci:** Reuse ssh connections
([#6382](#6382))
([5f6c31e](5f6c31e))
* **ci:** Revert inline cache push for now
([#6318](#6318))
([4c9bfb0](4c9bfb0))
* **ci:** Run clippy on benchmarks
(noir-lang/noir#4988)
([11cde44](11cde44))
* **ci:** Run e2e on isolated spots
([#6287](#6287))
([e7d2dd6](e7d2dd6))
* **ci:** Spot health fix, earthly workarounds
([#6379](#6379))
([da7573c](da7573c))
* **ci:** Stability after spot changes
([#6367](#6367))
([7ad4179](7ad4179))
* **ci:** Use on-demand runners
([#6311](#6311))
([dba835d](dba835d))
* Deploying accounts after key registry
([#6322](#6322))
([84878d1](84878d1))
* Disable `gates_report.yml`
(noir-lang/noir#4997)
([11cde44](11cde44))
* **docs:** Update contract deployments page
([#6319](#6319))
([2e331b5](2e331b5))
* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](#6228))
([8079f60](8079f60))
* Enforce formatting of noir code
([#6271](#6271))
([356f7bb](356f7bb))
* **experimental:** Add compiler option to enable the Elaborator
(noir-lang/noir#5003)
([3cda21a](3cda21a))
* **experimental:** Add Elaborator pass
(noir-lang/noir#4992)
([3cda21a](3cda21a))
* Make coinbase and fee_recipient inaccessible
([#6375](#6375))
([ded28b7](ded28b7))
* Make MSM builder more explicit
([#6110](#6110))
([40306b6](40306b6))
* Pw/refactor bb prover
([#6349](#6349))
([8eb0398](8eb0398))
* Remove `bb info` command
([#6276](#6276))
([f0a1c89](f0a1c89))
* Replace relative paths to noir-protocol-circuits
([fd40d99](fd40d99))
* Replace relative paths to noir-protocol-circuits
([53dbcb5](53dbcb5))
* Replace relative paths to noir-protocol-circuits
([48e07c3](48e07c3))
* Replace relative paths to noir-protocol-circuits
([6532725](6532725))
* Replace relative paths to noir-protocol-circuits
([8330f70](8330f70))
* Replace relative paths to noir-protocol-circuits
([484741a](484741a))
* Replacing old pub key oracle with get_ivpk_m
([#6219](#6219))
([9acc9ec](9acc9ec))
* Siloing in tails
([#6167](#6167))
([c20dd50](c20dd50))
* Simplify nargo CLI to read from artifacts
([#6279](#6279))
([b2c019b](b2c019b))
* Skip formatting informattable comments
([#6288](#6288))
([95b499b](95b499b))
* Split `ops` into `arith` and `bit` modules
(noir-lang/noir#4989)
([11cde44](11cde44))
* **test-contracts:** Prepare e2e_token_contract+ error msgs for AVM
migration
([#6307](#6307))
([0c20f44](0c20f44))
* Update cspell for abi demonomorphizer
([#6258](#6258))
([ce2d43c](ce2d43c))
* Update serialisation
([#6378](#6378))
([527129d](527129d))
* Validating private call data
([#6316](#6316))
([84b9fcd](84b9fcd))


### Documentation

* Call types
([#5472](#5472))
([1ca0d28](1ca0d28))
* Re-add and update accounts docs
([#6345](#6345))
([4926d15](4926d15))
* Updated protocol specs
([#6341](#6341))
([a0f82db](a0f82db))
</details>

<details><summary>barretenberg: 0.39.0</summary>

##
[0.39.0](barretenberg-v0.38.0...barretenberg-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
* specify databus arrays for BB
([#6239](#6239))

### Features

* Avm support for public input columns
([#5700](#5700))
([8cf9168](8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](#6308))
([6374a32](6374a32))
* Div opcode
([#6053](#6053))
([8e111f8](8e111f8))
* Move to_radix to a blackbox
([#6294](#6294))
([ac27376](ac27376))
* Small translator optimisations
([#6354](#6354))
([ba6c42e](ba6c42e))
* Specify databus arrays for BB
([#6239](#6239))
([01d9f24](01d9f24))
* Structured trace in client ivc
([#6132](#6132))
([92c1478](92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
* ToRadix BB + avm transpiler support
([#6330](#6330))
([c3c602f](c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](#5739))
([3250a8a](3250a8a))


### Bug Fixes

* Temporarily revert to_radix blackbox
([#6304](#6304))
([044d0fe](044d0fe))


### Miscellaneous

* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](#6228))
([8079f60](8079f60))
* Make MSM builder more explicit
([#6110](#6110))
([40306b6](40306b6))
* Remove `bb info` command
([#6276](#6276))
([f0a1c89](f0a1c89))
* Update serialisation
([#6378](#6378))
([527129d](527129d))
</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 May 15, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.39.0](AztecProtocol/aztec-packages@aztec-package-v0.38.0...aztec-package-v0.39.0)
(2024-05-14)


### Features

* **p2p:** GossibSub
([#6170](AztecProtocol/aztec-packages#6170))
([98d32f1](AztecProtocol/aztec-packages@98d32f1)),
closes
[#5055](AztecProtocol/aztec-packages#5055)
* PublicKeys struct
([#6333](AztecProtocol/aztec-packages#6333))
([2633cfc](AztecProtocol/aztec-packages@2633cfc))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](AztecProtocol/aztec-packages#6300))
([9c30759](AztecProtocol/aztec-packages@9c30759)),
closes
[#5834](AztecProtocol/aztec-packages#5834)
</details>

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

##
[0.39.0](AztecProtocol/aztec-packages@barretenberg.js-v0.38.0...barretenberg.js-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))

### Features

* Switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))
([78adcc0](AztecProtocol/aztec-packages@78adcc0))
</details>

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

##
[0.39.0](AztecProtocol/aztec-packages@aztec-packages-v0.38.0...aztec-packages-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))
* shared mutable configurable delays
([#6104](AztecProtocol/aztec-packages#6104))
* specify databus arrays for BB
([#6239](AztecProtocol/aztec-packages#6239))

### Features

* Add `Not` trait to stdlib
(noir-lang/noir#4999)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Add support for u16/i16 (noir-lang/noir#4985)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Avm support for public input columns
([#5700](AztecProtocol/aztec-packages#5700))
([8cf9168](AztecProtocol/aztec-packages@8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](AztecProtocol/aztec-packages#6308))
([6374a32](AztecProtocol/aztec-packages@6374a32))
* **avm-simulator:** Error stack tracking and enriching in AVM to match
ACVM/ACIR-SIM
([#6289](AztecProtocol/aztec-packages#6289))
([5c1f895](AztecProtocol/aztec-packages@5c1f895))
* **aztec-nr:** Add 'with_gas()' function to avm call interface
([#6256](AztecProtocol/aztec-packages#6256))
([0aedd23](AztecProtocol/aztec-packages@0aedd23))
* **aztec-nr:** Add enqueue functions to AvmCallInterface
([#6264](AztecProtocol/aztec-packages#6264))
([1c74387](AztecProtocol/aztec-packages@1c74387))
* Build-images as earthly.
([#6194](AztecProtocol/aztec-packages#6194))
([67fedf1](AztecProtocol/aztec-packages@67fedf1))
* Div opcode
([#6053](AztecProtocol/aztec-packages#6053))
([8e111f8](AztecProtocol/aztec-packages@8e111f8))
* Encrypted log body
([#6251](AztecProtocol/aztec-packages#6251))
([ba618d5](AztecProtocol/aztec-packages@ba618d5))
* Enforce note hash read requests to read within own contract
([#6310](AztecProtocol/aztec-packages#6310))
([bd10595](AztecProtocol/aztec-packages@bd10595))
* Expose `set_as_fee_payer` and test it in e2e
([#6380](AztecProtocol/aztec-packages#6380))
([a8274f3](AztecProtocol/aztec-packages@a8274f3))
* Implement `ops` traits on `u16`/`i16`
(noir-lang/noir#4996)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Increase default expression width to 4
(noir-lang/noir#4995)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Move abi demonomorphizer to noir_codegen and use noir_codegen in
protocol types
([#6302](AztecProtocol/aztec-packages#6302))
([690e500](AztecProtocol/aztec-packages@690e500))
* Move to_radix to a blackbox
([#6294](AztecProtocol/aztec-packages#6294))
([ac27376](AztecProtocol/aztec-packages@ac27376))
* **p2p:** GossibSub
([#6170](AztecProtocol/aztec-packages#6170))
([98d32f1](AztecProtocol/aztec-packages@98d32f1)),
closes
[#5055](AztecProtocol/aztec-packages#5055)
* Plumb fee payer
([#6286](AztecProtocol/aztec-packages#6286))
([1f8fd1c](AztecProtocol/aztec-packages@1f8fd1c))
* Private Kernel Recursion
([#6278](AztecProtocol/aztec-packages#6278))
([eae5822](AztecProtocol/aztec-packages@eae5822))
* Proper padding in ts AES and constrained AES in body and header
computations
([#6269](AztecProtocol/aztec-packages#6269))
([ef9cdde](AztecProtocol/aztec-packages@ef9cdde))
* PublicKeys struct
([#6333](AztecProtocol/aztec-packages#6333))
([2633cfc](AztecProtocol/aztec-packages@2633cfc))
* Re-enabling authwit constraint
([#6323](AztecProtocol/aztec-packages#6323))
([aa06d55](AztecProtocol/aztec-packages@aa06d55)),
closes
[#5830](AztecProtocol/aztec-packages#5830)
* Remove query to backend to get expression width
(noir-lang/noir#4975)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Replacing mentions to aztec-starter with codespace methods
([#6177](AztecProtocol/aztec-packages#6177))
([63e8788](AztecProtocol/aztec-packages@63e8788))
* Return gas usage per phase from node tx simulation
([#6255](AztecProtocol/aztec-packages#6255))
([fb58dfc](AztecProtocol/aztec-packages@fb58dfc))
* Shared mutable configurable delays
([#6104](AztecProtocol/aztec-packages#6104))
([c191a40](AztecProtocol/aztec-packages@c191a40))
* Small translator optimisations
([#6354](AztecProtocol/aztec-packages#6354))
([ba6c42e](AztecProtocol/aztec-packages@ba6c42e))
* Specify databus arrays for BB
([#6239](AztecProtocol/aztec-packages#6239))
([01d9f24](AztecProtocol/aztec-packages@01d9f24))
* Structured trace in client ivc
([#6132](AztecProtocol/aztec-packages#6132))
([92c1478](AztecProtocol/aztec-packages@92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))
([78adcc0](AztecProtocol/aztec-packages@78adcc0))
* Sync from aztec-packages (noir-lang/noir#4993)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* ToRadix BB + avm transpiler support
([#6330](AztecProtocol/aztec-packages#6330))
([c3c602f](AztecProtocol/aztec-packages@c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](AztecProtocol/aztec-packages#5739))
([3250a8a](AztecProtocol/aztec-packages@3250a8a))


### Bug Fixes

* `CombinedConstantData` not registered for serialization
([#6292](AztecProtocol/aztec-packages#6292))
([89ab8ee](AztecProtocol/aztec-packages@89ab8ee))
* **avm-context:** Enqueueing of public from private
([#6299](AztecProtocol/aztec-packages#6299))
([bd2ccf0](AztecProtocol/aztec-packages@bd2ccf0))
* **avm-simulator:** Always set revertReason when reverting
([#6297](AztecProtocol/aztec-packages#6297))
([cc59981](AztecProtocol/aztec-packages@cc59981))
* **avm-simulator:** Correctly create call stack in shallow assertions
([#6274](AztecProtocol/aztec-packages#6274))
([f6045fd](AztecProtocol/aztec-packages@f6045fd))
* **avm-simulator:** Fix env getters
([#6357](AztecProtocol/aztec-packages#6357))
([485fe40](AztecProtocol/aztec-packages@485fe40))
* **avm-simulator:** Fix message sender
([#6331](AztecProtocol/aztec-packages#6331))
([f7e2d26](AztecProtocol/aztec-packages@f7e2d26))
* **avm-simulator:** Fix test expectation
([#6293](AztecProtocol/aztec-packages#6293))
([f51acfa](AztecProtocol/aztec-packages@f51acfa))
* **avm-simulator:** Rethrow nested assertions
([#6275](AztecProtocol/aztec-packages#6275))
([cd05b91](AztecProtocol/aztec-packages@cd05b91))
* **avm-transpiler:** Patch debug infos with modified PCs
([#6371](AztecProtocol/aztec-packages#6371))
([c36f0fa](AztecProtocol/aztec-packages@c36f0fa))
* Check for public args in aztec functions
([#6355](AztecProtocol/aztec-packages#6355))
([219efd6](AztecProtocol/aztec-packages@219efd6))
* **ci:** Bench list
([#6282](AztecProtocol/aztec-packages#6282))
([2652576](AztecProtocol/aztec-packages@2652576))
* **circuits.js:** Fix nullifier non existent hints
([#6346](AztecProtocol/aztec-packages#6346))
([297779a](AztecProtocol/aztec-packages@297779a))
* **ci:** Stop mass serialization
([#6290](AztecProtocol/aztec-packages#6290))
([60104e9](AztecProtocol/aztec-packages@60104e9))
* Defer overflow checks for unsigned integers to acir-gen
(noir-lang/noir#4832)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* Enable client proof tests
([#6249](AztecProtocol/aztec-packages#6249))
([6d3a800](AztecProtocol/aztec-packages@6d3a800))
* Ignore no_predicates in brillig functions
(noir-lang/noir#5012)
([3cda21a](AztecProtocol/aztec-packages@3cda21a))
* Noir_js import
([#6381](AztecProtocol/aztec-packages#6381))
([e9c7e5f](AztecProtocol/aztec-packages@e9c7e5f))
* Pw/update merge check
([#6201](AztecProtocol/aztec-packages#6201))
([856657f](AztecProtocol/aztec-packages@856657f))
* Run noir browser tests in series
([#6232](AztecProtocol/aztec-packages#6232))
([e092514](AztecProtocol/aztec-packages@e092514))
* Temporarily revert to_radix blackbox
([#6304](AztecProtocol/aztec-packages#6304))
([044d0fe](AztecProtocol/aztec-packages@044d0fe))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](AztecProtocol/aztec-packages#6300))
([9c30759](AztecProtocol/aztec-packages@9c30759)),
closes
[#5834](AztecProtocol/aztec-packages#5834)
* Adding name shadowing tests template program
(noir-lang/noir#4799)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* **avm-context:** Implement Empty
([#6303](AztecProtocol/aztec-packages#6303))
([27534ac](AztecProtocol/aztec-packages@27534ac))
* **avm-simulator:** Add U128 overflow tests to AVM simulator
([#6281](AztecProtocol/aztec-packages#6281))
([5514143](AztecProtocol/aztec-packages@5514143))
* Bump public bytecode size to 40000 in prep for AVM migration
([#6266](AztecProtocol/aztec-packages#6266))
([2b61123](AztecProtocol/aztec-packages@2b61123))
* Bump timeout for after-hook for data store test
([#6364](AztecProtocol/aztec-packages#6364))
([18eca39](AztecProtocol/aztec-packages@18eca39))
* **ci:** Fix master, better spot copy times
([#6374](AztecProtocol/aztec-packages#6374))
([fee7649](AztecProtocol/aztec-packages@fee7649))
* **ci:** Hotfix runner checks
([#6373](AztecProtocol/aztec-packages#6373))
([d5fd668](AztecProtocol/aztec-packages@d5fd668))
* **ci:** Reuse ssh connections
([#6382](AztecProtocol/aztec-packages#6382))
([5f6c31e](AztecProtocol/aztec-packages@5f6c31e))
* **ci:** Revert inline cache push for now
([#6318](AztecProtocol/aztec-packages#6318))
([4c9bfb0](AztecProtocol/aztec-packages@4c9bfb0))
* **ci:** Run clippy on benchmarks
(noir-lang/noir#4988)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* **ci:** Run e2e on isolated spots
([#6287](AztecProtocol/aztec-packages#6287))
([e7d2dd6](AztecProtocol/aztec-packages@e7d2dd6))
* **ci:** Spot health fix, earthly workarounds
([#6379](AztecProtocol/aztec-packages#6379))
([da7573c](AztecProtocol/aztec-packages@da7573c))
* **ci:** Stability after spot changes
([#6367](AztecProtocol/aztec-packages#6367))
([7ad4179](AztecProtocol/aztec-packages@7ad4179))
* **ci:** Use on-demand runners
([#6311](AztecProtocol/aztec-packages#6311))
([dba835d](AztecProtocol/aztec-packages@dba835d))
* Deploying accounts after key registry
([#6322](AztecProtocol/aztec-packages#6322))
([84878d1](AztecProtocol/aztec-packages@84878d1))
* Disable `gates_report.yml`
(noir-lang/noir#4997)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* **docs:** Update contract deployments page
([#6319](AztecProtocol/aztec-packages#6319))
([2e331b5](AztecProtocol/aztec-packages@2e331b5))
* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](AztecProtocol/aztec-packages#6228))
([8079f60](AztecProtocol/aztec-packages@8079f60))
* Enforce formatting of noir code
([#6271](AztecProtocol/aztec-packages#6271))
([356f7bb](AztecProtocol/aztec-packages@356f7bb))
* **experimental:** Add compiler option to enable the Elaborator
(noir-lang/noir#5003)
([3cda21a](AztecProtocol/aztec-packages@3cda21a))
* **experimental:** Add Elaborator pass
(noir-lang/noir#4992)
([3cda21a](AztecProtocol/aztec-packages@3cda21a))
* Make coinbase and fee_recipient inaccessible
([#6375](AztecProtocol/aztec-packages#6375))
([ded28b7](AztecProtocol/aztec-packages@ded28b7))
* Make MSM builder more explicit
([#6110](AztecProtocol/aztec-packages#6110))
([40306b6](AztecProtocol/aztec-packages@40306b6))
* Pw/refactor bb prover
([#6349](AztecProtocol/aztec-packages#6349))
([8eb0398](AztecProtocol/aztec-packages@8eb0398))
* Remove `bb info` command
([#6276](AztecProtocol/aztec-packages#6276))
([f0a1c89](AztecProtocol/aztec-packages@f0a1c89))
* Replace relative paths to noir-protocol-circuits
([fd40d99](AztecProtocol/aztec-packages@fd40d99))
* Replace relative paths to noir-protocol-circuits
([53dbcb5](AztecProtocol/aztec-packages@53dbcb5))
* Replace relative paths to noir-protocol-circuits
([48e07c3](AztecProtocol/aztec-packages@48e07c3))
* Replace relative paths to noir-protocol-circuits
([6532725](AztecProtocol/aztec-packages@6532725))
* Replace relative paths to noir-protocol-circuits
([8330f70](AztecProtocol/aztec-packages@8330f70))
* Replace relative paths to noir-protocol-circuits
([484741a](AztecProtocol/aztec-packages@484741a))
* Replacing old pub key oracle with get_ivpk_m
([#6219](AztecProtocol/aztec-packages#6219))
([9acc9ec](AztecProtocol/aztec-packages@9acc9ec))
* Siloing in tails
([#6167](AztecProtocol/aztec-packages#6167))
([c20dd50](AztecProtocol/aztec-packages@c20dd50))
* Simplify nargo CLI to read from artifacts
([#6279](AztecProtocol/aztec-packages#6279))
([b2c019b](AztecProtocol/aztec-packages@b2c019b))
* Skip formatting informattable comments
([#6288](AztecProtocol/aztec-packages#6288))
([95b499b](AztecProtocol/aztec-packages@95b499b))
* Split `ops` into `arith` and `bit` modules
(noir-lang/noir#4989)
([11cde44](AztecProtocol/aztec-packages@11cde44))
* **test-contracts:** Prepare e2e_token_contract+ error msgs for AVM
migration
([#6307](AztecProtocol/aztec-packages#6307))
([0c20f44](AztecProtocol/aztec-packages@0c20f44))
* Update cspell for abi demonomorphizer
([#6258](AztecProtocol/aztec-packages#6258))
([ce2d43c](AztecProtocol/aztec-packages@ce2d43c))
* Update serialisation
([#6378](AztecProtocol/aztec-packages#6378))
([527129d](AztecProtocol/aztec-packages@527129d))
* Validating private call data
([#6316](AztecProtocol/aztec-packages#6316))
([84b9fcd](AztecProtocol/aztec-packages@84b9fcd))


### Documentation

* Call types
([#5472](AztecProtocol/aztec-packages#5472))
([1ca0d28](AztecProtocol/aztec-packages@1ca0d28))
* Re-add and update accounts docs
([#6345](AztecProtocol/aztec-packages#6345))
([4926d15](AztecProtocol/aztec-packages@4926d15))
* Updated protocol specs
([#6341](AztecProtocol/aztec-packages#6341))
([a0f82db](AztecProtocol/aztec-packages@a0f82db))
</details>

<details><summary>barretenberg: 0.39.0</summary>

##
[0.39.0](AztecProtocol/aztec-packages@barretenberg-v0.38.0...barretenberg-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))
* specify databus arrays for BB
([#6239](AztecProtocol/aztec-packages#6239))

### Features

* Avm support for public input columns
([#5700](AztecProtocol/aztec-packages#5700))
([8cf9168](AztecProtocol/aztec-packages@8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](AztecProtocol/aztec-packages#6308))
([6374a32](AztecProtocol/aztec-packages@6374a32))
* Div opcode
([#6053](AztecProtocol/aztec-packages#6053))
([8e111f8](AztecProtocol/aztec-packages@8e111f8))
* Move to_radix to a blackbox
([#6294](AztecProtocol/aztec-packages#6294))
([ac27376](AztecProtocol/aztec-packages@ac27376))
* Small translator optimisations
([#6354](AztecProtocol/aztec-packages#6354))
([ba6c42e](AztecProtocol/aztec-packages@ba6c42e))
* Specify databus arrays for BB
([#6239](AztecProtocol/aztec-packages#6239))
([01d9f24](AztecProtocol/aztec-packages@01d9f24))
* Structured trace in client ivc
([#6132](AztecProtocol/aztec-packages#6132))
([92c1478](AztecProtocol/aztec-packages@92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](AztecProtocol/aztec-packages#6283))
([78adcc0](AztecProtocol/aztec-packages@78adcc0))
* ToRadix BB + avm transpiler support
([#6330](AztecProtocol/aztec-packages#6330))
([c3c602f](AztecProtocol/aztec-packages@c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](AztecProtocol/aztec-packages#5739))
([3250a8a](AztecProtocol/aztec-packages@3250a8a))


### Bug Fixes

* Temporarily revert to_radix blackbox
([#6304](AztecProtocol/aztec-packages#6304))
([044d0fe](AztecProtocol/aztec-packages@044d0fe))


### Miscellaneous

* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](AztecProtocol/aztec-packages#6228))
([8079f60](AztecProtocol/aztec-packages@8079f60))
* Make MSM builder more explicit
([#6110](AztecProtocol/aztec-packages#6110))
([40306b6](AztecProtocol/aztec-packages@40306b6))
* Remove `bb info` command
([#6276](AztecProtocol/aztec-packages#6276))
([f0a1c89](AztecProtocol/aztec-packages@f0a1c89))
* Update serialisation
([#6378](AztecProtocol/aztec-packages#6378))
([527129d](AztecProtocol/aztec-packages@527129d))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
iakovenkos pushed a commit that referenced this pull request May 15, 2024
🤖 I have created a release *beep* *boop*
---


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

##
[0.39.0](aztec-package-v0.38.0...aztec-package-v0.39.0)
(2024-05-14)


### Features

* **p2p:** GossibSub
([#6170](#6170))
([98d32f1](98d32f1)),
closes
[#5055](#5055)
* PublicKeys struct
([#6333](#6333))
([2633cfc](2633cfc))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](#6300))
([9c30759](9c30759)),
closes
[#5834](#5834)
</details>

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

##
[0.39.0](barretenberg.js-v0.38.0...barretenberg.js-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))

### Features

* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
</details>

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

##
[0.39.0](aztec-packages-v0.38.0...aztec-packages-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
* shared mutable configurable delays
([#6104](#6104))
* specify databus arrays for BB
([#6239](#6239))

### Features

* Add `Not` trait to stdlib
(noir-lang/noir#4999)
([11cde44](11cde44))
* Add support for u16/i16 (noir-lang/noir#4985)
([11cde44](11cde44))
* Avm support for public input columns
([#5700](#5700))
([8cf9168](8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](#6308))
([6374a32](6374a32))
* **avm-simulator:** Error stack tracking and enriching in AVM to match
ACVM/ACIR-SIM
([#6289](#6289))
([5c1f895](5c1f895))
* **aztec-nr:** Add 'with_gas()' function to avm call interface
([#6256](#6256))
([0aedd23](0aedd23))
* **aztec-nr:** Add enqueue functions to AvmCallInterface
([#6264](#6264))
([1c74387](1c74387))
* Build-images as earthly.
([#6194](#6194))
([67fedf1](67fedf1))
* Div opcode
([#6053](#6053))
([8e111f8](8e111f8))
* Encrypted log body
([#6251](#6251))
([ba618d5](ba618d5))
* Enforce note hash read requests to read within own contract
([#6310](#6310))
([bd10595](bd10595))
* Expose `set_as_fee_payer` and test it in e2e
([#6380](#6380))
([a8274f3](a8274f3))
* Implement `ops` traits on `u16`/`i16`
(noir-lang/noir#4996)
([11cde44](11cde44))
* Increase default expression width to 4
(noir-lang/noir#4995)
([11cde44](11cde44))
* Move abi demonomorphizer to noir_codegen and use noir_codegen in
protocol types
([#6302](#6302))
([690e500](690e500))
* Move to_radix to a blackbox
([#6294](#6294))
([ac27376](ac27376))
* **p2p:** GossibSub
([#6170](#6170))
([98d32f1](98d32f1)),
closes
[#5055](#5055)
* Plumb fee payer
([#6286](#6286))
([1f8fd1c](1f8fd1c))
* Private Kernel Recursion
([#6278](#6278))
([eae5822](eae5822))
* Proper padding in ts AES and constrained AES in body and header
computations
([#6269](#6269))
([ef9cdde](ef9cdde))
* PublicKeys struct
([#6333](#6333))
([2633cfc](2633cfc))
* Re-enabling authwit constraint
([#6323](#6323))
([aa06d55](aa06d55)),
closes
[#5830](#5830)
* Remove query to backend to get expression width
(noir-lang/noir#4975)
([11cde44](11cde44))
* Replacing mentions to aztec-starter with codespace methods
([#6177](#6177))
([63e8788](63e8788))
* Return gas usage per phase from node tx simulation
([#6255](#6255))
([fb58dfc](fb58dfc))
* Shared mutable configurable delays
([#6104](#6104))
([c191a40](c191a40))
* Small translator optimisations
([#6354](#6354))
([ba6c42e](ba6c42e))
* Specify databus arrays for BB
([#6239](#6239))
([01d9f24](01d9f24))
* Structured trace in client ivc
([#6132](#6132))
([92c1478](92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
* Sync from aztec-packages (noir-lang/noir#4993)
([11cde44](11cde44))
* ToRadix BB + avm transpiler support
([#6330](#6330))
([c3c602f](c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](#5739))
([3250a8a](3250a8a))


### Bug Fixes

* `CombinedConstantData` not registered for serialization
([#6292](#6292))
([89ab8ee](89ab8ee))
* **avm-context:** Enqueueing of public from private
([#6299](#6299))
([bd2ccf0](bd2ccf0))
* **avm-simulator:** Always set revertReason when reverting
([#6297](#6297))
([cc59981](cc59981))
* **avm-simulator:** Correctly create call stack in shallow assertions
([#6274](#6274))
([f6045fd](f6045fd))
* **avm-simulator:** Fix env getters
([#6357](#6357))
([485fe40](485fe40))
* **avm-simulator:** Fix message sender
([#6331](#6331))
([f7e2d26](f7e2d26))
* **avm-simulator:** Fix test expectation
([#6293](#6293))
([f51acfa](f51acfa))
* **avm-simulator:** Rethrow nested assertions
([#6275](#6275))
([cd05b91](cd05b91))
* **avm-transpiler:** Patch debug infos with modified PCs
([#6371](#6371))
([c36f0fa](c36f0fa))
* Check for public args in aztec functions
([#6355](#6355))
([219efd6](219efd6))
* **ci:** Bench list
([#6282](#6282))
([2652576](2652576))
* **circuits.js:** Fix nullifier non existent hints
([#6346](#6346))
([297779a](297779a))
* **ci:** Stop mass serialization
([#6290](#6290))
([60104e9](60104e9))
* Defer overflow checks for unsigned integers to acir-gen
(noir-lang/noir#4832)
([11cde44](11cde44))
* Enable client proof tests
([#6249](#6249))
([6d3a800](6d3a800))
* Ignore no_predicates in brillig functions
(noir-lang/noir#5012)
([3cda21a](3cda21a))
* Noir_js import
([#6381](#6381))
([e9c7e5f](e9c7e5f))
* Pw/update merge check
([#6201](#6201))
([856657f](856657f))
* Run noir browser tests in series
([#6232](#6232))
([e092514](e092514))
* Temporarily revert to_radix blackbox
([#6304](#6304))
([044d0fe](044d0fe))


### Miscellaneous

* `CompleteAddress` cleanup
([#6300](#6300))
([9c30759](9c30759)),
closes
[#5834](#5834)
* Adding name shadowing tests template program
(noir-lang/noir#4799)
([11cde44](11cde44))
* **avm-context:** Implement Empty
([#6303](#6303))
([27534ac](27534ac))
* **avm-simulator:** Add U128 overflow tests to AVM simulator
([#6281](#6281))
([5514143](5514143))
* Bump public bytecode size to 40000 in prep for AVM migration
([#6266](#6266))
([2b61123](2b61123))
* Bump timeout for after-hook for data store test
([#6364](#6364))
([18eca39](18eca39))
* **ci:** Fix master, better spot copy times
([#6374](#6374))
([fee7649](fee7649))
* **ci:** Hotfix runner checks
([#6373](#6373))
([d5fd668](d5fd668))
* **ci:** Reuse ssh connections
([#6382](#6382))
([5f6c31e](5f6c31e))
* **ci:** Revert inline cache push for now
([#6318](#6318))
([4c9bfb0](4c9bfb0))
* **ci:** Run clippy on benchmarks
(noir-lang/noir#4988)
([11cde44](11cde44))
* **ci:** Run e2e on isolated spots
([#6287](#6287))
([e7d2dd6](e7d2dd6))
* **ci:** Spot health fix, earthly workarounds
([#6379](#6379))
([da7573c](da7573c))
* **ci:** Stability after spot changes
([#6367](#6367))
([7ad4179](7ad4179))
* **ci:** Use on-demand runners
([#6311](#6311))
([dba835d](dba835d))
* Deploying accounts after key registry
([#6322](#6322))
([84878d1](84878d1))
* Disable `gates_report.yml`
(noir-lang/noir#4997)
([11cde44](11cde44))
* **docs:** Update contract deployments page
([#6319](#6319))
([2e331b5](2e331b5))
* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](#6228))
([8079f60](8079f60))
* Enforce formatting of noir code
([#6271](#6271))
([356f7bb](356f7bb))
* **experimental:** Add compiler option to enable the Elaborator
(noir-lang/noir#5003)
([3cda21a](3cda21a))
* **experimental:** Add Elaborator pass
(noir-lang/noir#4992)
([3cda21a](3cda21a))
* Make coinbase and fee_recipient inaccessible
([#6375](#6375))
([ded28b7](ded28b7))
* Make MSM builder more explicit
([#6110](#6110))
([40306b6](40306b6))
* Pw/refactor bb prover
([#6349](#6349))
([8eb0398](8eb0398))
* Remove `bb info` command
([#6276](#6276))
([f0a1c89](f0a1c89))
* Replace relative paths to noir-protocol-circuits
([fd40d99](fd40d99))
* Replace relative paths to noir-protocol-circuits
([53dbcb5](53dbcb5))
* Replace relative paths to noir-protocol-circuits
([48e07c3](48e07c3))
* Replace relative paths to noir-protocol-circuits
([6532725](6532725))
* Replace relative paths to noir-protocol-circuits
([8330f70](8330f70))
* Replace relative paths to noir-protocol-circuits
([484741a](484741a))
* Replacing old pub key oracle with get_ivpk_m
([#6219](#6219))
([9acc9ec](9acc9ec))
* Siloing in tails
([#6167](#6167))
([c20dd50](c20dd50))
* Simplify nargo CLI to read from artifacts
([#6279](#6279))
([b2c019b](b2c019b))
* Skip formatting informattable comments
([#6288](#6288))
([95b499b](95b499b))
* Split `ops` into `arith` and `bit` modules
(noir-lang/noir#4989)
([11cde44](11cde44))
* **test-contracts:** Prepare e2e_token_contract+ error msgs for AVM
migration
([#6307](#6307))
([0c20f44](0c20f44))
* Update cspell for abi demonomorphizer
([#6258](#6258))
([ce2d43c](ce2d43c))
* Update serialisation
([#6378](#6378))
([527129d](527129d))
* Validating private call data
([#6316](#6316))
([84b9fcd](84b9fcd))


### Documentation

* Call types
([#5472](#5472))
([1ca0d28](1ca0d28))
* Re-add and update accounts docs
([#6345](#6345))
([4926d15](4926d15))
* Updated protocol specs
([#6341](#6341))
([a0f82db](a0f82db))
</details>

<details><summary>barretenberg: 0.39.0</summary>

##
[0.39.0](barretenberg-v0.38.0...barretenberg-v0.39.0)
(2024-05-14)


### ⚠ BREAKING CHANGES

* switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
* specify databus arrays for BB
([#6239](#6239))

### Features

* Avm support for public input columns
([#5700](#5700))
([8cf9168](8cf9168))
* **avm-simulator:** Add to_radix_le instruction
([#6308](#6308))
([6374a32](6374a32))
* Div opcode
([#6053](#6053))
([8e111f8](8e111f8))
* Move to_radix to a blackbox
([#6294](#6294))
([ac27376](ac27376))
* Small translator optimisations
([#6354](#6354))
([ba6c42e](ba6c42e))
* Specify databus arrays for BB
([#6239](#6239))
([01d9f24](01d9f24))
* Structured trace in client ivc
([#6132](#6132))
([92c1478](92c1478))
* Switch `bb` over to read ACIR from nargo artifacts
([#6283](#6283))
([78adcc0](78adcc0))
* ToRadix BB + avm transpiler support
([#6330](#6330))
([c3c602f](c3c602f))
* **vm:** Reading kernel state opcodes
([#5739](#5739))
([3250a8a](3250a8a))


### Bug Fixes

* Temporarily revert to_radix blackbox
([#6304](#6304))
([044d0fe](044d0fe))


### Miscellaneous

* **dsl:** Update backend gateCount command to query a Program in a
single request
([#6228](#6228))
([8079f60](8079f60))
* Make MSM builder more explicit
([#6110](#6110))
([40306b6](40306b6))
* Remove `bb info` command
([#6276](#6276))
([f0a1c89](f0a1c89))
* Update serialisation
([#6378](#6378))
([527129d](527129d))
</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.

None yet

3 participants