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!: Switch to using jsonrpsee for foreign calls; refactor run_test; foreign call layering #6849

Merged
merged 30 commits into from
Jan 2, 2025

Conversation

aakoshh
Copy link
Contributor

@aakoshh aakoshh commented Dec 17, 2024

Description

Problem*

Resolves #6742

Summary*

Instead of jsonrpc we use jsonrpsee to make calls to the Oracle function resolver.

Also includes #6857 and #6858 which effectively make nargo::ops::test receive a generic ForeignCallExecutor (a breaking change in the API) so that we can use it with Wasm, which otherwise could not compile the RpcForeignCallExecutor.

Additional Context

Our codebase is mostly synchronous, but jsonrpsee is async. I created a tokio::runtime::Runtime in the executor where I can block on the calls, however this doesn't work well with the #[tokio::test], runtimes don't nest. Because of this the tests require a bit more supporting machinery than before.

Documentation*

Check one:

  • No documentation needed.
  • Documentation included in this PR.
  • [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt on default settings.

Copy link
Contributor

github-actions bot commented Dec 17, 2024

Peak Memory Sample

Program Peak Memory
keccak256 78.48M
workspace 123.28M
regression_4709 422.91M
ram_blowup_regression 1.58G
private-kernel-tail 201.81M
private-kernel-reset 717.07M
private-kernel-inner 291.88M
parity-root 172.14M

Copy link
Contributor

github-actions bot commented Dec 17, 2024

Compilation Sample

Program Compilation Time %
sha256_regression 1.381s -4%
regression_4709 0.803s 1%
ram_blowup_regression 15.375s -1%
rollup-root 3.744s 0%
rollup-block-merge 3.685s -12%
rollup-base-public 115.384s 1%
rollup-base-private 96.769s 3%
private-kernel-tail 1.053s -7%
private-kernel-reset 7.406s -3%
private-kernel-inner 2.099s 1%
parity-root 0.776s 4%
noir-contracts 88.147s 4%

@aakoshh
Copy link
Contributor Author

aakoshh commented Dec 17, 2024

@TomAFrench it looks like it doesn't compile to Wasm because the http-client feature brings in tokio:net which brings mio as a dependency. It doesn't look like noir_wasm uses the foreign_calls module, so I guess I can try putting that behind a feature flag, so we don't have these network related dependencies when we're compiling to Wasm.

@TomAFrench
Copy link
Member

Yeah we don't need an RPC server in wasm as we expect that to use callbacks directly. We can put it behind a feature flag then.

@aakoshh
Copy link
Contributor Author

aakoshh commented Dec 18, 2024

@TomAFrench the problem is not with the RPC server, which was only used as a dev-dependency, it's the RPC client itself. I wanted rpc to be behind a feature flag, but then realised that ops::test directly depends on being able to make HTTP calls: TestForeignCallExecutor uses RPCForeignCallExecutor. By contrast, ProgramExecutor in ops::execute only uses the ForeignCallExecutor trait, which would be easier to isolate from the network related stuff in foreign_calls module.

I created a test and execute feature flag, so that noir_wasm can depend only on compilation machinery, which is the only one it has #[wasm_bindgen] for right now, but by disabling test in Wasm, #6835 is moot at the moment.

We can refactor the whole module so that a ForeignCallExecutor is passed to the ops::test::run_test as a dependency, similar to how it's done in ProgramExecutor::new, rather than as a URL, which I think is useless within Wasm; at least I don't see any injected methods that would handle network calls. It would be a breaking change in the test API, though. I opened a PR for this: #6858

in wasm as we expect that to use callbacks directly

Perhaps this is related, can you elaborate on what you wanted to do?

@aakoshh aakoshh requested a review from sirasistant December 18, 2024 10:31
tooling/nargo/Cargo.toml Outdated Show resolved Hide resolved
@aakoshh aakoshh changed the title chore: Switch to using jsonrpsee for foreign calls feat!: Switch to using jsonrpsee for foreign calls; refactor run_test; foreign call layering Dec 19, 2024
@aakoshh aakoshh requested a review from a team December 19, 2024 09:24
Copy link
Contributor

github-actions bot commented Dec 19, 2024

Execution Sample

Program Execution Time %
sha256_regression 0.619s -2%
regression_4709 0.386s -5%
ram_blowup_regression 4.440s 2%
rollup-root 1.913s 0%
rollup-block-merge 1.913s 1%
rollup-base-public 21.265s 1%
rollup-base-private 19.601s 3%
private-kernel-tail 0.720s -1%
private-kernel-reset 1.517s 1%
private-kernel-inner 0.967s 2%
parity-root 0.529s -2%

Copy link
Member

@TomAFrench TomAFrench left a comment

Choose a reason for hiding this comment

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

Looks good, some nits on how we construct the TestForeignCallExecutor.

tooling/nargo/src/ops/test.rs Outdated Show resolved Hide resolved
tooling/nargo/src/ops/test.rs Outdated Show resolved Hide resolved
@TomAFrench
Copy link
Member

I'm going to fix the conflicts in this PR caused by #6865

* master:
  chore: move implementation of print foreign call into `nargo` (#6865)
  chore: document format strings (#6920)
* master:
  chore: move implementation of print foreign call into `nargo` (#6865)
  chore: document format strings (#6920)
@TomAFrench
Copy link
Member

As you're out today I'll just make the above changes so we can get master green again.

Copy link
Member

@TomAFrench TomAFrench left a comment

Choose a reason for hiding this comment

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

LGTM

@TomAFrench TomAFrench enabled auto-merge January 2, 2025 16:29
@TomAFrench TomAFrench added this pull request to the merge queue Jan 2, 2025
Merged via the queue into master with commit 51a4d5d Jan 2, 2025
88 checks passed
@TomAFrench TomAFrench deleted the 6742-jsonrpsee branch January 2, 2025 16:40
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Jan 2, 2025
…tion variables (noir-lang/noir#6910)

chore: fix warning (noir-lang/noir#6927)
chore(ci): Memory reports for execution (noir-lang/noir#6907)
chore: use ssa parser in flattening pass tests (noir-lang/noir#6868)
feat(LSP): suggest trait methods from where clauses (noir-lang/noir#6915)
feat: warn on trait method visibility (noir-lang/noir#6923)
feat!: Switch to using `jsonrpsee` for foreign calls; refactor `run_test`; foreign call layering (noir-lang/noir#6849)
chore: add rollup circuits to memory reports (noir-lang/noir#6897)
chore: remove unused dependency (noir-lang/noir#6922)
chore: add if/loop tip (separate from no-predicate #5657) (noir-lang/noir#6806)
chore: move implementation of print foreign call into `nargo` (noir-lang/noir#6865)
chore: document format strings (noir-lang/noir#6920)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Jan 3, 2025
…tion variables (noir-lang/noir#6910)

chore: fix warning (noir-lang/noir#6927)
chore(ci): Memory reports for execution (noir-lang/noir#6907)
chore: use ssa parser in flattening pass tests (noir-lang/noir#6868)
feat(LSP): suggest trait methods from where clauses (noir-lang/noir#6915)
feat: warn on trait method visibility (noir-lang/noir#6923)
feat!: Switch to using `jsonrpsee` for foreign calls; refactor `run_test`; foreign call layering (noir-lang/noir#6849)
chore: add rollup circuits to memory reports (noir-lang/noir#6897)
chore: remove unused dependency (noir-lang/noir#6922)
chore: add if/loop tip (separate from no-predicate #5657) (noir-lang/noir#6806)
chore: move implementation of print foreign call into `nargo` (noir-lang/noir#6865)
chore: document format strings (noir-lang/noir#6920)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Jan 3, 2025
…es (noir-lang/noir#6910)

chore: fix warning (noir-lang/noir#6927)
chore(ci): Memory reports for execution (noir-lang/noir#6907)
chore: use ssa parser in flattening pass tests (noir-lang/noir#6868)
feat(LSP): suggest trait methods from where clauses (noir-lang/noir#6915)
feat: warn on trait method visibility (noir-lang/noir#6923)
feat!: Switch to using `jsonrpsee` for foreign calls; refactor `run_test`; foreign call layering (noir-lang/noir#6849)
chore: add rollup circuits to memory reports (noir-lang/noir#6897)
chore: remove unused dependency (noir-lang/noir#6922)
chore: add if/loop tip (separate from no-predicate #5657) (noir-lang/noir#6806)
chore: move implementation of print foreign call into `nargo` (noir-lang/noir#6865)
chore: document format strings (noir-lang/noir#6920)
TomAFrench added a commit to AztecProtocol/aztec-packages that referenced this pull request Jan 3, 2025
Automated pull of development from the
[noir](https://github.com/noir-lang/noir) programming language, a
dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
feat(ssa): Hoist add and mul binary ops using known induction variables
(noir-lang/noir#6910)
chore: fix warning (noir-lang/noir#6927)
chore(ci): Memory reports for execution
(noir-lang/noir#6907)
chore: use ssa parser in flattening pass tests
(noir-lang/noir#6868)
feat(LSP): suggest trait methods from where clauses
(noir-lang/noir#6915)
feat: warn on trait method visibility
(noir-lang/noir#6923)
feat!: Switch to using `jsonrpsee` for foreign calls; refactor
`run_test`; foreign call layering
(noir-lang/noir#6849)
chore: add rollup circuits to memory reports
(noir-lang/noir#6897)
chore: remove unused dependency
(noir-lang/noir#6922)
chore: add if/loop tip (separate from no-predicate #5657)
(noir-lang/noir#6806)
chore: move implementation of print foreign call into `nargo`
(noir-lang/noir#6865)
chore: document format strings
(noir-lang/noir#6920)
END_COMMIT_OVERRIDE

---------

Co-authored-by: Tom French <[email protected]>
TomAFrench pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Jan 3, 2025
🤖 I have created a release *beep* *boop*
---


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

##
[0.69.0](aztec-package-v0.68.2...aztec-package-v0.69.0)
(2025-01-03)


### Miscellaneous

* Add version number when starting sandbox
([#10935](#10935))
([c8dcd8f](c8dcd8f))
* Cl/ci3.2
([#10919](#10919))
([49dacc3](49dacc3))
</details>

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

##
[0.69.0](barretenberg.js-v0.68.2...barretenberg.js-v0.69.0)
(2025-01-03)


### Miscellaneous

* Cl/ci3.2
([#10919](#10919))
([49dacc3](49dacc3))
</details>

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

##
[0.69.0](aztec-packages-v0.68.2...aztec-packages-v0.69.0)
(2025-01-03)


### ⚠ BREAKING CHANGES

* Switch to using `jsonrpsee` for foreign calls; refactor `run_test`;
foreign call layering (noir-lang/noir#6849)

### Features

* **docs:** Algolia -&gt; typesense
([#9698](#9698))
([e082063](e082063))
* Encapsulated UltraHonk Vanilla IVC
([#10900](#10900))
([fd5f611](fd5f611))
* **LSP:** Suggest trait methods from where clauses
(noir-lang/noir#6915)
([dc12c2b](dc12c2b))
* **ssa:** Hoist add and mul binary ops using known induction variables
(noir-lang/noir#6910)
([dc12c2b](dc12c2b))
* Switch to using `jsonrpsee` for foreign calls; refactor `run_test`;
foreign call layering (noir-lang/noir#6849)
([dc12c2b](dc12c2b))
* Use full IPA recursive verifier in root rollup
([#10962](#10962))
([37095ce](37095ce))
* Warn on trait method visibility
(noir-lang/noir#6923)
([dc12c2b](dc12c2b))


### Bug Fixes

* Bigint builtins are foreigns
(noir-lang/noir#6892)
([2d3805a](2d3805a))
* **ci:** Acir bench
([#11021](#11021))
([9eaa109](9eaa109))
* Consistent file_id across installation paths
(noir-lang/noir#6912)
([2d3805a](2d3805a))
* Remove unnecessary cast in bit-shift
(noir-lang/noir#6890)
([2d3805a](2d3805a))
* Revert "feat(docs): algolia -&gt; typesense" also fix boxes-test
([#11016](#11016))
([a1a4d76](a1a4d76))
* Small fixes for sepolia deployments
([#10915](#10915))
([37d69bf](37d69bf))
* Update prompted foundry install command
([#10995](#10995))
([cd59f2e](cd59f2e))
* Use explicit read transactions
([#10911](#10911))
([2a8e01c](2a8e01c))


### Miscellaneous

* Add `Instruction::Noop` (noir-lang/noir#6899)
([2d3805a](2d3805a))
* Add `rollup_root` and `rollup_block_merge` to tracked protocol
circuits (noir-lang/noir#6903)
([2d3805a](2d3805a))
* Add if/loop tip (separate from no-predicate
[#5657](#5657))
(noir-lang/noir#6806)
([dc12c2b](dc12c2b))
* Add rollup circuits to memory reports
(noir-lang/noir#6897)
([dc12c2b](dc12c2b))
* Add spypsy to nightly canary
([#10961](#10961))
([4dca8f5](4dca8f5))
* Add version number when starting sandbox
([#10935](#10935))
([c8dcd8f](c8dcd8f))
* Bump rc1 tps
([#11012](#11012))
([52176f7](52176f7))
* **ci:** Memory reports for execution
(noir-lang/noir#6907)
([dc12c2b](dc12c2b))
* Cl/ci3.2
([#10919](#10919))
([49dacc3](49dacc3))
* Clean up translator circuit builder function definitions
([#10944](#10944))
([f6fef05](f6fef05))
* Disable broken honk test
([#11010](#11010))
([8ad239a](8ad239a))
* Disable tt test
([#10999](#10999))
([d9d64c3](d9d64c3))
* Document format strings (noir-lang/noir#6920)
([dc12c2b](dc12c2b))
* Fix flake in e2e-block-build
([#11002](#11002))
([2a2932e](2a2932e))
* Fix mac build
([#10963](#10963))
([158afc4](158afc4))
* Fix warning (noir-lang/noir#6927)
([dc12c2b](dc12c2b))
* Fix warnings in avm transpiler
([#11001](#11001))
([07c5b7f](07c5b7f))
* Move implementation of print foreign call into `nargo`
(noir-lang/noir#6865)
([dc12c2b](dc12c2b))
* Prover.tomls fix
([#11011](#11011))
([565a67b](565a67b))
* Redo typo PR by Anon-im
([#11009](#11009))
([2044c58](2044c58))
* Redo typo PR by Hack666r
([#10992](#10992))
([018f11e](018f11e))
* Redo typo PR by MonkeyKing44
([#10996](#10996))
([faca458](faca458))
* Redo typo PR by panditdhamdhere
([#11026](#11026))
([8a6de5b](8a6de5b))
* Redo typo PR by petryshkaCODE
([#10993](#10993))
([0c6a4be](0c6a4be))
* Redo typo PR by VitalikBerashvili
([#10994](#10994))
([da36da4](da36da4))
* Redo typo PR by whitetechna
([#10997](#10997))
([89a2bd7](89a2bd7))
* Release Noir(1.0.0-beta.1)
(noir-lang/noir#6622)
([2d3805a](2d3805a))
* Remove unused dependency (noir-lang/noir#6922)
([dc12c2b](dc12c2b))
* Replace relative paths to noir-protocol-circuits
([6b34449](6b34449))
* Replace relative paths to noir-protocol-circuits
([11f8a42](11f8a42))
* Use ssa parser in flattening pass tests
(noir-lang/noir#6868)
([dc12c2b](dc12c2b))


### Documentation

* Remove links to (outdated) protocol specs
([#10831](#10831))
([4874d95](4874d95))
</details>

<details><summary>barretenberg: 0.69.0</summary>

##
[0.69.0](barretenberg-v0.68.2...barretenberg-v0.69.0)
(2025-01-03)


### Features

* Encapsulated UltraHonk Vanilla IVC
([#10900](#10900))
([fd5f611](fd5f611))
* Use full IPA recursive verifier in root rollup
([#10962](#10962))
([37095ce](37095ce))


### Bug Fixes

* Bigint builtins are foreigns
(noir-lang/noir#6892)
([2d3805a](2d3805a))
* **ci:** Acir bench
([#11021](#11021))
([9eaa109](9eaa109))
* Consistent file_id across installation paths
(noir-lang/noir#6912)
([2d3805a](2d3805a))
* Remove unnecessary cast in bit-shift
(noir-lang/noir#6890)
([2d3805a](2d3805a))


### Miscellaneous

* Add `Instruction::Noop` (noir-lang/noir#6899)
([2d3805a](2d3805a))
* Add `rollup_root` and `rollup_block_merge` to tracked protocol
circuits (noir-lang/noir#6903)
([2d3805a](2d3805a))
* Cl/ci3.2
([#10919](#10919))
([49dacc3](49dacc3))
* Clean up translator circuit builder function definitions
([#10944](#10944))
([f6fef05](f6fef05))
* Disable broken honk test
([#11010](#11010))
([8ad239a](8ad239a))
* Fix mac build
([#10963](#10963))
([158afc4](158afc4))
* Redo typo PR by Anon-im
([#11009](#11009))
([2044c58](2044c58))
* Redo typo PR by Hack666r
([#10992](#10992))
([018f11e](018f11e))
* Redo typo PR by MonkeyKing44
([#10996](#10996))
([faca458](faca458))
* Redo typo PR by petryshkaCODE
([#10993](#10993))
([0c6a4be](0c6a4be))
* Redo typo PR by VitalikBerashvili
([#10994](#10994))
([da36da4](da36da4))
* Release Noir(1.0.0-beta.1)
(noir-lang/noir#6622)
([2d3805a](2d3805a))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
TomAFrench added a commit to winderica/noir that referenced this pull request Jan 3, 2025
* master:
  feat(ssa): Hoist add and mul binary ops using known induction variables (noir-lang#6910)
  chore: fix warning (noir-lang#6927)
  chore(ci): Memory reports for execution (noir-lang#6907)
  chore: use ssa parser in flattening pass tests (noir-lang#6868)
  feat(LSP): suggest trait methods from where clauses (noir-lang#6915)
  feat: warn on trait method visibility (noir-lang#6923)
  feat!: Switch to using `jsonrpsee` for foreign calls; refactor `run_test`; foreign call layering (noir-lang#6849)
  chore: add rollup circuits to memory reports (noir-lang#6897)
  chore: remove unused dependency (noir-lang#6922)
TomAFrench added a commit that referenced this pull request Jan 3, 2025
* master: (47 commits)
  chore: delete a bunch of dead code from `noirc_evaluator` (#6939)
  feat: require trait function calls (`Foo::bar()`) to have the trait in scope (imported) (#6882)
  chore: Bump arkworks to version `0.5.0` (#6871)
  feat(ssa): Hoist add and mul binary ops using known induction variables (#6910)
  chore: fix warning (#6927)
  chore(ci): Memory reports for execution (#6907)
  chore: use ssa parser in flattening pass tests (#6868)
  feat(LSP): suggest trait methods from where clauses (#6915)
  feat: warn on trait method visibility (#6923)
  feat!: Switch to using `jsonrpsee` for foreign calls; refactor `run_test`; foreign call layering (#6849)
  chore: add rollup circuits to memory reports (#6897)
  chore: remove unused dependency (#6922)
  chore: add if/loop tip (separate from no-predicate #5657) (#6806)
  chore: move implementation of print foreign call into `nargo` (#6865)
  chore: document format strings (#6920)
  chore: add `rollup_root` and `rollup_block_merge` to tracked protocol circuits (#6903)
  fix: consistent file_id across installation paths (#6912)
  fix: bigint builtins are foreigns (#6892)
  fix: remove unnecessary cast in bit-shift (#6890)
  chore: Release Noir(1.0.0-beta.1) (#6622)
  ...
AztecBot added a commit to AztecProtocol/barretenberg that referenced this pull request Jan 4, 2025
🤖 I have created a release *beep* *boop*
---


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

##
[0.69.0](AztecProtocol/aztec-packages@aztec-package-v0.68.2...aztec-package-v0.69.0)
(2025-01-03)


### Miscellaneous

* Add version number when starting sandbox
([#10935](AztecProtocol/aztec-packages#10935))
([c8dcd8f](AztecProtocol/aztec-packages@c8dcd8f))
* Cl/ci3.2
([#10919](AztecProtocol/aztec-packages#10919))
([49dacc3](AztecProtocol/aztec-packages@49dacc3))
</details>

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

##
[0.69.0](AztecProtocol/aztec-packages@barretenberg.js-v0.68.2...barretenberg.js-v0.69.0)
(2025-01-03)


### Miscellaneous

* Cl/ci3.2
([#10919](AztecProtocol/aztec-packages#10919))
([49dacc3](AztecProtocol/aztec-packages@49dacc3))
</details>

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

##
[0.69.0](AztecProtocol/aztec-packages@aztec-packages-v0.68.2...aztec-packages-v0.69.0)
(2025-01-03)


### ⚠ BREAKING CHANGES

* Switch to using `jsonrpsee` for foreign calls; refactor `run_test`;
foreign call layering (noir-lang/noir#6849)

### Features

* **docs:** Algolia -&gt; typesense
([#9698](AztecProtocol/aztec-packages#9698))
([e082063](AztecProtocol/aztec-packages@e082063))
* Encapsulated UltraHonk Vanilla IVC
([#10900](AztecProtocol/aztec-packages#10900))
([fd5f611](AztecProtocol/aztec-packages@fd5f611))
* **LSP:** Suggest trait methods from where clauses
(noir-lang/noir#6915)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* **ssa:** Hoist add and mul binary ops using known induction variables
(noir-lang/noir#6910)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Switch to using `jsonrpsee` for foreign calls; refactor `run_test`;
foreign call layering (noir-lang/noir#6849)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Use full IPA recursive verifier in root rollup
([#10962](AztecProtocol/aztec-packages#10962))
([37095ce](AztecProtocol/aztec-packages@37095ce))
* Warn on trait method visibility
(noir-lang/noir#6923)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))


### Bug Fixes

* Bigint builtins are foreigns
(noir-lang/noir#6892)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* **ci:** Acir bench
([#11021](AztecProtocol/aztec-packages#11021))
([9eaa109](AztecProtocol/aztec-packages@9eaa109))
* Consistent file_id across installation paths
(noir-lang/noir#6912)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Remove unnecessary cast in bit-shift
(noir-lang/noir#6890)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Revert "feat(docs): algolia -&gt; typesense" also fix boxes-test
([#11016](AztecProtocol/aztec-packages#11016))
([a1a4d76](AztecProtocol/aztec-packages@a1a4d76))
* Small fixes for sepolia deployments
([#10915](AztecProtocol/aztec-packages#10915))
([37d69bf](AztecProtocol/aztec-packages@37d69bf))
* Update prompted foundry install command
([#10995](AztecProtocol/aztec-packages#10995))
([cd59f2e](AztecProtocol/aztec-packages@cd59f2e))
* Use explicit read transactions
([#10911](AztecProtocol/aztec-packages#10911))
([2a8e01c](AztecProtocol/aztec-packages@2a8e01c))


### Miscellaneous

* Add `Instruction::Noop` (noir-lang/noir#6899)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Add `rollup_root` and `rollup_block_merge` to tracked protocol
circuits (noir-lang/noir#6903)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Add if/loop tip (separate from no-predicate
[#5657](AztecProtocol/aztec-packages#5657))
(noir-lang/noir#6806)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Add rollup circuits to memory reports
(noir-lang/noir#6897)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Add spypsy to nightly canary
([#10961](AztecProtocol/aztec-packages#10961))
([4dca8f5](AztecProtocol/aztec-packages@4dca8f5))
* Add version number when starting sandbox
([#10935](AztecProtocol/aztec-packages#10935))
([c8dcd8f](AztecProtocol/aztec-packages@c8dcd8f))
* Bump rc1 tps
([#11012](AztecProtocol/aztec-packages#11012))
([52176f7](AztecProtocol/aztec-packages@52176f7))
* **ci:** Memory reports for execution
(noir-lang/noir#6907)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Cl/ci3.2
([#10919](AztecProtocol/aztec-packages#10919))
([49dacc3](AztecProtocol/aztec-packages@49dacc3))
* Clean up translator circuit builder function definitions
([#10944](AztecProtocol/aztec-packages#10944))
([f6fef05](AztecProtocol/aztec-packages@f6fef05))
* Disable broken honk test
([#11010](AztecProtocol/aztec-packages#11010))
([8ad239a](AztecProtocol/aztec-packages@8ad239a))
* Disable tt test
([#10999](AztecProtocol/aztec-packages#10999))
([d9d64c3](AztecProtocol/aztec-packages@d9d64c3))
* Document format strings (noir-lang/noir#6920)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Fix flake in e2e-block-build
([#11002](AztecProtocol/aztec-packages#11002))
([2a2932e](AztecProtocol/aztec-packages@2a2932e))
* Fix mac build
([#10963](AztecProtocol/aztec-packages#10963))
([158afc4](AztecProtocol/aztec-packages@158afc4))
* Fix warning (noir-lang/noir#6927)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Fix warnings in avm transpiler
([#11001](AztecProtocol/aztec-packages#11001))
([07c5b7f](AztecProtocol/aztec-packages@07c5b7f))
* Move implementation of print foreign call into `nargo`
(noir-lang/noir#6865)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Prover.tomls fix
([#11011](AztecProtocol/aztec-packages#11011))
([565a67b](AztecProtocol/aztec-packages@565a67b))
* Redo typo PR by Anon-im
([#11009](AztecProtocol/aztec-packages#11009))
([2044c58](AztecProtocol/aztec-packages@2044c58))
* Redo typo PR by Hack666r
([#10992](AztecProtocol/aztec-packages#10992))
([018f11e](AztecProtocol/aztec-packages@018f11e))
* Redo typo PR by MonkeyKing44
([#10996](AztecProtocol/aztec-packages#10996))
([faca458](AztecProtocol/aztec-packages@faca458))
* Redo typo PR by panditdhamdhere
([#11026](AztecProtocol/aztec-packages#11026))
([8a6de5b](AztecProtocol/aztec-packages@8a6de5b))
* Redo typo PR by petryshkaCODE
([#10993](AztecProtocol/aztec-packages#10993))
([0c6a4be](AztecProtocol/aztec-packages@0c6a4be))
* Redo typo PR by VitalikBerashvili
([#10994](AztecProtocol/aztec-packages#10994))
([da36da4](AztecProtocol/aztec-packages@da36da4))
* Redo typo PR by whitetechna
([#10997](AztecProtocol/aztec-packages#10997))
([89a2bd7](AztecProtocol/aztec-packages@89a2bd7))
* Release Noir(1.0.0-beta.1)
(noir-lang/noir#6622)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Remove unused dependency (noir-lang/noir#6922)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))
* Replace relative paths to noir-protocol-circuits
([6b34449](AztecProtocol/aztec-packages@6b34449))
* Replace relative paths to noir-protocol-circuits
([11f8a42](AztecProtocol/aztec-packages@11f8a42))
* Use ssa parser in flattening pass tests
(noir-lang/noir#6868)
([dc12c2b](AztecProtocol/aztec-packages@dc12c2b))


### Documentation

* Remove links to (outdated) protocol specs
([#10831](AztecProtocol/aztec-packages#10831))
([4874d95](AztecProtocol/aztec-packages@4874d95))
</details>

<details><summary>barretenberg: 0.69.0</summary>

##
[0.69.0](AztecProtocol/aztec-packages@barretenberg-v0.68.2...barretenberg-v0.69.0)
(2025-01-03)


### Features

* Encapsulated UltraHonk Vanilla IVC
([#10900](AztecProtocol/aztec-packages#10900))
([fd5f611](AztecProtocol/aztec-packages@fd5f611))
* Use full IPA recursive verifier in root rollup
([#10962](AztecProtocol/aztec-packages#10962))
([37095ce](AztecProtocol/aztec-packages@37095ce))


### Bug Fixes

* Bigint builtins are foreigns
(noir-lang/noir#6892)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* **ci:** Acir bench
([#11021](AztecProtocol/aztec-packages#11021))
([9eaa109](AztecProtocol/aztec-packages@9eaa109))
* Consistent file_id across installation paths
(noir-lang/noir#6912)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Remove unnecessary cast in bit-shift
(noir-lang/noir#6890)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))


### Miscellaneous

* Add `Instruction::Noop` (noir-lang/noir#6899)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Add `rollup_root` and `rollup_block_merge` to tracked protocol
circuits (noir-lang/noir#6903)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
* Cl/ci3.2
([#10919](AztecProtocol/aztec-packages#10919))
([49dacc3](AztecProtocol/aztec-packages@49dacc3))
* Clean up translator circuit builder function definitions
([#10944](AztecProtocol/aztec-packages#10944))
([f6fef05](AztecProtocol/aztec-packages@f6fef05))
* Disable broken honk test
([#11010](AztecProtocol/aztec-packages#11010))
([8ad239a](AztecProtocol/aztec-packages@8ad239a))
* Fix mac build
([#10963](AztecProtocol/aztec-packages#10963))
([158afc4](AztecProtocol/aztec-packages@158afc4))
* Redo typo PR by Anon-im
([#11009](AztecProtocol/aztec-packages#11009))
([2044c58](AztecProtocol/aztec-packages@2044c58))
* Redo typo PR by Hack666r
([#10992](AztecProtocol/aztec-packages#10992))
([018f11e](AztecProtocol/aztec-packages@018f11e))
* Redo typo PR by MonkeyKing44
([#10996](AztecProtocol/aztec-packages#10996))
([faca458](AztecProtocol/aztec-packages@faca458))
* Redo typo PR by petryshkaCODE
([#10993](AztecProtocol/aztec-packages#10993))
([0c6a4be](AztecProtocol/aztec-packages@0c6a4be))
* Redo typo PR by VitalikBerashvili
([#10994](AztecProtocol/aztec-packages#10994))
([da36da4](AztecProtocol/aztec-packages@da36da4))
* Release Noir(1.0.0-beta.1)
(noir-lang/noir#6622)
([2d3805a](AztecProtocol/aztec-packages@2d3805a))
</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.

jsonrpc dependency is unmaintained and is failing cargo deny
2 participants