-
Notifications
You must be signed in to change notification settings - Fork 270
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!: PXE.getNotes(...) + refactor of note types #3051
Conversation
e684fc8
to
9d6e249
Compare
Benchmark resultsMetrics with a significant change:
Detailed resultsAll benchmarks are run on txs on the This benchmark source data is available in JSON format on S3 here. Values are compared against data from master at commit L2 block published to L1Each column represents the number of txs on an L2 block published to L1.
L2 chain processingEach column represents the number of blocks on the L2 chain where each block has 16 txs.
Circuits statsStats on running time and I/O sizes collected for every circuit run across all benchmarks.
MiscellaneousTransaction sizes based on how many contracts are deployed in the tx.
|
0c7e4de
to
b725e5c
Compare
a454142
to
6cc427a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Left a few comments, but nothing to block merging. There's one discussion around naming notes
in the receipt worth expanding though.
public async getNotes(): Promise<ExtendedNote[]> { | ||
await this.wait(); | ||
return this.pxe.getNotes({ txHash: await this.getTxHash() }); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now that I see it, I'm worried this getNotes
could end up being confusing to users. From its name, it seems like it returns all notes created in the tx, whereas it's returning all notes visible by the pxe in the tx. So if I make a token transfer to a recipient, the note to the recipient will only be visible if the recipient happens to be in the same pxe (which will usually be the case in tests but not in apps).
But I don't really have a suggestion on how to fix this. Maybe we should scope the notes returned by this method to be only the ones owned by the sender wallet? And rename this method to getNotesToSelf
(or something nicer)?
We could also take a step back and rethink: what's the use case for this method? What are we trying to simplify by exposing it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You have a point. One option would be renaming that to getVisibleNotes but what I don't like about the name is that it's not consistent with that we have in Noir.
Maybe the best approach would be to teach devs that PXE always works just with info of registered accoutns.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree in that the name is not very good, but I wouldn't dismiss this just on the basis of "teaching devs" since it's an easy mistake to do. At the very least we should clarify it on the jsdoc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addressed in #3137
/** | ||
* Notes created in this tx. | ||
*/ | ||
public notes?: ExtendedNote[], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Again, this is slightly misleading, since these are only the notes created in this tx that are visible by the current pxe.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are right. WDYT about calling it visibleNotes and documenting it properly? I think that should be sufficient because I would say the term "visible" will spark curiosity in devs.
Co-authored-by: Santiago Palladino <santiago@aztecprotocol.com>
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.13.0</summary> ## [0.13.0](aztec-packages-v0.12.0...aztec-packages-v0.13.0) (2023-10-31) ### ⚠ BREAKING CHANGES * PXE.getNotes(...) + refactor of note types ([#3051](#3051)) ### Features * `FieldNote` ([#3037](#3037)) ([3d1ffd0](3d1ffd0)) * Add Aztec Boxes page to docs ([#2569](#2569)) ([997c15c](997c15c)) * Adding structure to Transcript ([#2937](#2937)) ([db67aa1](db67aa1)) * Compile noir contracts with noir_wasm ([#2737](#2737)) ([524cecf](524cecf)) * Dockerize aztec-cli ([#3031](#3031)) ([ec2e3c2](ec2e3c2)) * Efficient ZM quotient computation ([#3016](#3016)) ([ebda5fc](ebda5fc)) * **feature_branch:** Private Kernel Circuit ([#2740](#2740)) ([f800a36](f800a36)) * Measure plonk rounds ([#3065](#3065)) ([c8e1d8b](c8e1d8b)) * Migrate the init kernel CPP tests to noir ([#3091](#3091)) ([906429f](906429f)) * New script to output table of benchmarks for README pasting. ([#2780](#2780)) ([6c20b45](6c20b45)) * Pedersen in typescript. ([#3111](#3111)) ([933f1b2](933f1b2)) * Protogalaxy folding of challenges ([#2935](#2935)) ([7ed30e8](7ed30e8)) * PXE.getNotes(...) + refactor of note types ([#3051](#3051)) ([16abb5a](16abb5a)) * Zeromorph with concatenation (Goblin Translator part 10) ([#3006](#3006)) ([70b0f17](70b0f17)) ### Bug Fixes * Bad contract txs publishing contract data ([#2673](#2673)) ([ccd4611](ccd4611)) * Better error message for compute_note_hash_and_nullifier. ([#3097](#3097)) ([57bec53](57bec53)) * Broken `FieldNote` test ([#3135](#3135)) ([fe78ecf](fe78ecf)) * Docker-compose up, rather than run. ([#3081](#3081)) ([242f780](242f780)) * Formatting ([#3070](#3070)) ([e1633d3](e1633d3)) * Minor stale naming fix ([#3117](#3117)) ([a6786ae](a6786ae)) * Push cli docker image to docker hub ([#3120](#3120)) ([ccad50f](ccad50f)) * Remove duplicate terraform resource definition ([#3066](#3066)) ([d5abadb](d5abadb)) * Retry request spot ([#3116](#3116)) ([82de5f1](82de5f1)) ### Miscellaneous * Add stdlib tests for pedersen commitment ([#3075](#3075)) ([87fa621](87fa621)) * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](#3072)) ([2e289a5](2e289a5)) * Cleanup remaining mentions of `compress` with pedersen in cpp and ts ([#3074](#3074)) ([52cf383](52cf383)) * E2e on spots [ci rebuild] ([#3068](#3068)) ([15db6bf](15db6bf)) * Fix dapp_testing e2e race condition ([#3094](#3094)) ([89e7c21](89e7c21)) * Remove docs mirror ([#3122](#3122)) ([3fa51e2](3fa51e2)) * Remove endomorphism coefficient from ecc_add_gate ([#3115](#3115)) ([d294987](d294987)) * Remove unecessary calls to `pedersen__init` ([#3079](#3079)) ([84f8db2](84f8db2)) * Remove unused pedersen c_binds ([#3058](#3058)) ([e71e5f9](e71e5f9)) * Removes pedersen commit native pairs method ([#3073](#3073)) ([69a34c7](69a34c7)) * Rename private-kernel subpackage to protocol-circuits ([#3134](#3134)) ([3e07104](3e07104)) ### Documentation * Initial keys spec ([#3035](#3035)) ([4b24c58](4b24c58)) </details> <details><summary>barretenberg.js: 0.13.0</summary> ## [0.13.0](barretenberg.js-v0.12.0...barretenberg.js-v0.13.0) (2023-10-31) ### Features * New script to output table of benchmarks for README pasting. ([#2780](#2780)) ([6c20b45](6c20b45)) ### Miscellaneous * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](#3072)) ([2e289a5](2e289a5)) * Remove unecessary calls to `pedersen__init` ([#3079](#3079)) ([84f8db2](84f8db2)) * Remove unused pedersen c_binds ([#3058](#3058)) ([e71e5f9](e71e5f9)) </details> <details><summary>barretenberg: 0.13.0</summary> ## [0.13.0](barretenberg-v0.12.0...barretenberg-v0.13.0) (2023-10-31) ### Features * Adding structure to Transcript ([#2937](#2937)) ([db67aa1](db67aa1)) * Efficient ZM quotient computation ([#3016](#3016)) ([ebda5fc](ebda5fc)) * Measure plonk rounds ([#3065](#3065)) ([c8e1d8b](c8e1d8b)) * New script to output table of benchmarks for README pasting. ([#2780](#2780)) ([6c20b45](6c20b45)) * Pedersen in typescript. ([#3111](#3111)) ([933f1b2](933f1b2)) * Protogalaxy folding of challenges ([#2935](#2935)) ([7ed30e8](7ed30e8)) * Zeromorph with concatenation (Goblin Translator part 10) ([#3006](#3006)) ([70b0f17](70b0f17)) ### Miscellaneous * Add stdlib tests for pedersen commitment ([#3075](#3075)) ([87fa621](87fa621)) * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](#3072)) ([2e289a5](2e289a5)) * Cleanup remaining mentions of `compress` with pedersen in cpp and ts ([#3074](#3074)) ([52cf383](52cf383)) * Remove endomorphism coefficient from ecc_add_gate ([#3115](#3115)) ([d294987](d294987)) * Remove unecessary calls to `pedersen__init` ([#3079](#3079)) ([84f8db2](84f8db2)) * Remove unused pedersen c_binds ([#3058](#3058)) ([e71e5f9](e71e5f9)) * Removes pedersen commit native pairs method ([#3073](#3073)) ([69a34c7](69a34c7)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
[PR 3051](#3051) was getting too big so I decided to do the naming changes in noir contracts in a separate PR. This is the PR.
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.13.0</summary> ## [0.13.0](AztecProtocol/aztec-packages@aztec-packages-v0.12.0...aztec-packages-v0.13.0) (2023-10-31) ### ⚠ BREAKING CHANGES * PXE.getNotes(...) + refactor of note types ([#3051](AztecProtocol/aztec-packages#3051)) ### Features * `FieldNote` ([#3037](AztecProtocol/aztec-packages#3037)) ([3d1ffd0](AztecProtocol/aztec-packages@3d1ffd0)) * Add Aztec Boxes page to docs ([#2569](AztecProtocol/aztec-packages#2569)) ([997c15c](AztecProtocol/aztec-packages@997c15c)) * Adding structure to Transcript ([#2937](AztecProtocol/aztec-packages#2937)) ([db67aa1](AztecProtocol/aztec-packages@db67aa1)) * Compile noir contracts with noir_wasm ([#2737](AztecProtocol/aztec-packages#2737)) ([524cecf](AztecProtocol/aztec-packages@524cecf)) * Dockerize aztec-cli ([#3031](AztecProtocol/aztec-packages#3031)) ([ec2e3c2](AztecProtocol/aztec-packages@ec2e3c2)) * Efficient ZM quotient computation ([#3016](AztecProtocol/aztec-packages#3016)) ([ebda5fc](AztecProtocol/aztec-packages@ebda5fc)) * **feature_branch:** Private Kernel Circuit ([#2740](AztecProtocol/aztec-packages#2740)) ([f800a36](AztecProtocol/aztec-packages@f800a36)) * Measure plonk rounds ([#3065](AztecProtocol/aztec-packages#3065)) ([c8e1d8b](AztecProtocol/aztec-packages@c8e1d8b)) * Migrate the init kernel CPP tests to noir ([#3091](AztecProtocol/aztec-packages#3091)) ([906429f](AztecProtocol/aztec-packages@906429f)) * New script to output table of benchmarks for README pasting. ([#2780](AztecProtocol/aztec-packages#2780)) ([6c20b45](AztecProtocol/aztec-packages@6c20b45)) * Pedersen in typescript. ([#3111](AztecProtocol/aztec-packages#3111)) ([933f1b2](AztecProtocol/aztec-packages@933f1b2)) * Protogalaxy folding of challenges ([#2935](AztecProtocol/aztec-packages#2935)) ([7ed30e8](AztecProtocol/aztec-packages@7ed30e8)) * PXE.getNotes(...) + refactor of note types ([#3051](AztecProtocol/aztec-packages#3051)) ([16abb5a](AztecProtocol/aztec-packages@16abb5a)) * Zeromorph with concatenation (Goblin Translator part 10) ([#3006](AztecProtocol/aztec-packages#3006)) ([70b0f17](AztecProtocol/aztec-packages@70b0f17)) ### Bug Fixes * Bad contract txs publishing contract data ([#2673](AztecProtocol/aztec-packages#2673)) ([ccd4611](AztecProtocol/aztec-packages@ccd4611)) * Better error message for compute_note_hash_and_nullifier. ([#3097](AztecProtocol/aztec-packages#3097)) ([57bec53](AztecProtocol/aztec-packages@57bec53)) * Broken `FieldNote` test ([#3135](AztecProtocol/aztec-packages#3135)) ([fe78ecf](AztecProtocol/aztec-packages@fe78ecf)) * Docker-compose up, rather than run. ([#3081](AztecProtocol/aztec-packages#3081)) ([242f780](AztecProtocol/aztec-packages@242f780)) * Formatting ([#3070](AztecProtocol/aztec-packages#3070)) ([e1633d3](AztecProtocol/aztec-packages@e1633d3)) * Minor stale naming fix ([#3117](AztecProtocol/aztec-packages#3117)) ([a6786ae](AztecProtocol/aztec-packages@a6786ae)) * Push cli docker image to docker hub ([#3120](AztecProtocol/aztec-packages#3120)) ([ccad50f](AztecProtocol/aztec-packages@ccad50f)) * Remove duplicate terraform resource definition ([#3066](AztecProtocol/aztec-packages#3066)) ([d5abadb](AztecProtocol/aztec-packages@d5abadb)) * Retry request spot ([#3116](AztecProtocol/aztec-packages#3116)) ([82de5f1](AztecProtocol/aztec-packages@82de5f1)) ### Miscellaneous * Add stdlib tests for pedersen commitment ([#3075](AztecProtocol/aztec-packages#3075)) ([87fa621](AztecProtocol/aztec-packages@87fa621)) * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](AztecProtocol/aztec-packages#3072)) ([2e289a5](AztecProtocol/aztec-packages@2e289a5)) * Cleanup remaining mentions of `compress` with pedersen in cpp and ts ([#3074](AztecProtocol/aztec-packages#3074)) ([52cf383](AztecProtocol/aztec-packages@52cf383)) * E2e on spots [ci rebuild] ([#3068](AztecProtocol/aztec-packages#3068)) ([15db6bf](AztecProtocol/aztec-packages@15db6bf)) * Fix dapp_testing e2e race condition ([#3094](AztecProtocol/aztec-packages#3094)) ([89e7c21](AztecProtocol/aztec-packages@89e7c21)) * Remove docs mirror ([#3122](AztecProtocol/aztec-packages#3122)) ([3fa51e2](AztecProtocol/aztec-packages@3fa51e2)) * Remove endomorphism coefficient from ecc_add_gate ([#3115](AztecProtocol/aztec-packages#3115)) ([d294987](AztecProtocol/aztec-packages@d294987)) * Remove unecessary calls to `pedersen__init` ([#3079](AztecProtocol/aztec-packages#3079)) ([84f8db2](AztecProtocol/aztec-packages@84f8db2)) * Remove unused pedersen c_binds ([#3058](AztecProtocol/aztec-packages#3058)) ([e71e5f9](AztecProtocol/aztec-packages@e71e5f9)) * Removes pedersen commit native pairs method ([#3073](AztecProtocol/aztec-packages#3073)) ([69a34c7](AztecProtocol/aztec-packages@69a34c7)) * Rename private-kernel subpackage to protocol-circuits ([#3134](AztecProtocol/aztec-packages#3134)) ([3e07104](AztecProtocol/aztec-packages@3e07104)) ### Documentation * Initial keys spec ([#3035](AztecProtocol/aztec-packages#3035)) ([4b24c58](AztecProtocol/aztec-packages@4b24c58)) </details> <details><summary>barretenberg.js: 0.13.0</summary> ## [0.13.0](AztecProtocol/aztec-packages@barretenberg.js-v0.12.0...barretenberg.js-v0.13.0) (2023-10-31) ### Features * New script to output table of benchmarks for README pasting. ([#2780](AztecProtocol/aztec-packages#2780)) ([6c20b45](AztecProtocol/aztec-packages@6c20b45)) ### Miscellaneous * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](AztecProtocol/aztec-packages#3072)) ([2e289a5](AztecProtocol/aztec-packages@2e289a5)) * Remove unecessary calls to `pedersen__init` ([#3079](AztecProtocol/aztec-packages#3079)) ([84f8db2](AztecProtocol/aztec-packages@84f8db2)) * Remove unused pedersen c_binds ([#3058](AztecProtocol/aztec-packages#3058)) ([e71e5f9](AztecProtocol/aztec-packages@e71e5f9)) </details> <details><summary>barretenberg: 0.13.0</summary> ## [0.13.0](AztecProtocol/aztec-packages@barretenberg-v0.12.0...barretenberg-v0.13.0) (2023-10-31) ### Features * Adding structure to Transcript ([#2937](AztecProtocol/aztec-packages#2937)) ([db67aa1](AztecProtocol/aztec-packages@db67aa1)) * Efficient ZM quotient computation ([#3016](AztecProtocol/aztec-packages#3016)) ([ebda5fc](AztecProtocol/aztec-packages@ebda5fc)) * Measure plonk rounds ([#3065](AztecProtocol/aztec-packages#3065)) ([c8e1d8b](AztecProtocol/aztec-packages@c8e1d8b)) * New script to output table of benchmarks for README pasting. ([#2780](AztecProtocol/aztec-packages#2780)) ([6c20b45](AztecProtocol/aztec-packages@6c20b45)) * Pedersen in typescript. ([#3111](AztecProtocol/aztec-packages#3111)) ([933f1b2](AztecProtocol/aztec-packages@933f1b2)) * Protogalaxy folding of challenges ([#2935](AztecProtocol/aztec-packages#2935)) ([7ed30e8](AztecProtocol/aztec-packages@7ed30e8)) * Zeromorph with concatenation (Goblin Translator part 10) ([#3006](AztecProtocol/aztec-packages#3006)) ([70b0f17](AztecProtocol/aztec-packages@70b0f17)) ### Miscellaneous * Add stdlib tests for pedersen commitment ([#3075](AztecProtocol/aztec-packages#3075)) ([87fa621](AztecProtocol/aztec-packages@87fa621)) * Automatic c_binds for commit should return a point instead of an Fr element ([#3072](AztecProtocol/aztec-packages#3072)) ([2e289a5](AztecProtocol/aztec-packages@2e289a5)) * Cleanup remaining mentions of `compress` with pedersen in cpp and ts ([#3074](AztecProtocol/aztec-packages#3074)) ([52cf383](AztecProtocol/aztec-packages@52cf383)) * Remove endomorphism coefficient from ecc_add_gate ([#3115](AztecProtocol/aztec-packages#3115)) ([d294987](AztecProtocol/aztec-packages@d294987)) * Remove unecessary calls to `pedersen__init` ([#3079](AztecProtocol/aztec-packages#3079)) ([84f8db2](AztecProtocol/aztec-packages@84f8db2)) * Remove unused pedersen c_binds ([#3058](AztecProtocol/aztec-packages#3058)) ([e71e5f9](AztecProtocol/aztec-packages@e71e5f9)) * Removes pedersen commit native pairs method ([#3073](AztecProtocol/aztec-packages#3073)) ([69a34c7](AztecProtocol/aztec-packages@69a34c7)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
[PR 3051](AztecProtocol/aztec-packages#3051) was getting too big so I decided to do the naming changes in noir contracts in a separate PR. This is the PR.
…ters (noir-lang/noir#4919) feat(experimental): `comptime` globals (noir-lang/noir#4918) chore: update error conversion traits to act on references (noir-lang/noir#4936) fix: ban self-referential structs (noir-lang/noir#4883) chore: add regression test for #3051 (noir-lang/noir#4815) fix: discard ref counts during unrolling (noir-lang/noir#4923) feat!: Bit shift is restricted to u8 right operand (noir-lang/noir#4907)
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE feat: add de-sugaring for `impl Trait` in function parameters (noir-lang/noir#4919) feat(experimental): `comptime` globals (noir-lang/noir#4918) chore: update error conversion traits to act on references (noir-lang/noir#4936) fix: ban self-referential structs (noir-lang/noir#4883) chore: add regression test for #3051 (noir-lang/noir#4815) fix: discard ref counts during unrolling (noir-lang/noir#4923) feat!: Bit shift is restricted to u8 right operand (noir-lang/noir#4907) END_COMMIT_OVERRIDE --------- Co-authored-by: Tom French <tom@tomfren.ch> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com>
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.37.0</summary> ## [0.37.0](aztec-package-v0.36.0...aztec-package-v0.37.0) (2024-05-02) ### Miscellaneous * **aztec-package:** Synchronize aztec-packages versions </details> <details><summary>barretenberg.js: 0.37.0</summary> ## [0.37.0](barretenberg.js-v0.36.0...barretenberg.js-v0.37.0) (2024-05-02) ### Features * Devbox ([#5772](#5772)) ([72321f9](72321f9)) </details> <details><summary>aztec-packages: 0.37.0</summary> ## [0.37.0](aztec-packages-v0.36.0...aztec-packages-v0.37.0) (2024-05-02) ### ⚠ BREAKING CHANGES * use `distinct` return value witnesses by default (noir-lang/noir#4951) * Bit shift is restricted to u8 right operand (noir-lang/noir#4907) ### Features * Abort ongoing proving jobs ([#6049](#6049)) ([0aa352d](0aa352d)) * Add aztecprotocol/aztec-builder ([#6116](#6116)) ([30899d0](30899d0)) * Add de-sugaring for `impl Trait` in function parameters (noir-lang/noir#4919) ([f060fa6](f060fa6)) * Aztec nr lib constraining nullifier key is fresh ([#5939](#5939)) ([f95de6b](f95de6b)) * Bit shift is restricted to u8 right operand (noir-lang/noir#4907) ([f060fa6](f060fa6)) * Count Bb lines weighted by complexity ([#6090](#6090)) ([705177f](705177f)) * Devbox ([#5772](#5772)) ([72321f9](72321f9)) * Enforce gas limits from private kernels ([#6105](#6105)) ([4395855](4395855)) * **experimental:** `comptime` globals (noir-lang/noir#4918) ([f060fa6](f060fa6)) * Handle `no_predicates` attribute (noir-lang/noir#4942) ([4dc5efb](4dc5efb)) * Migrate boxes to GA and Earthly ([#6076](#6076)) ([4a49f9d](4a49f9d)) * Pippenger benchmarks compatible with wasmtime ([#6095](#6095)) ([5297b5b](5297b5b)) * Private da gas metering ([#6103](#6103)) ([1a8f372](1a8f372)) * Prover metrics ([#6050](#6050)) ([5b133f2](5b133f2)) * Use `distinct` return value witnesses by default (noir-lang/noir#4951) ([4dc5efb](4dc5efb)) ### Bug Fixes * Ban self-referential structs (noir-lang/noir#4883) ([f060fa6](f060fa6)) * **ci:** Build-key hotfix ([#6123](#6123)) ([5791004](5791004)) * **ci:** Ssh'ing into instances ([#6136](#6136)) ([af3192d](af3192d)) * Discard ref counts during unrolling (noir-lang/noir#4923) ([f060fa6](f060fa6)) * **docs:** Add codegen to `aztec-builder` command ([#6098](#6098)) ([4839ed9](4839ed9)) * Ensure where clauses propagated to trait default definitions (noir-lang/noir#4894) ([4dc5efb](4dc5efb)) * Require for all foldable functions to use distinct return (noir-lang/noir#4949) ([4dc5efb](4dc5efb)) ### Miscellaneous * Add regression test for [#3051](#3051) (noir-lang/noir#4815) ([f060fa6](f060fa6)) * Add test for recursing a foldable function (noir-lang/noir#4948) ([4dc5efb](4dc5efb)) * Adding devcontainer with create aztec app ([#5960](#5960)) ([ae5cb21](ae5cb21)) * Build docs in earthly ([#6038](#6038)) ([784d542](784d542)) * Bump bench-tx-size timeout ([#6109](#6109)) ([aa3eefa](aa3eefa)) * **ci:** Fix spot runner build key ([#6119](#6119)) ([f332bc9](f332bc9)) * **ci:** Hotfix ([#6124](#6124)) ([f60dfcd](f60dfcd)) * **ci:** Run benchmarks on Earthly ([#6089](#6089)) ([c985c73](c985c73)) * **ci:** Turn off ARM build for now ([#6135](#6135)) ([853913f](853913f)) * Disable bench-summary for now ([67485f1](67485f1)) * Disable doc builds ([#6107](#6107)) ([7933f0f](7933f0f)) * **docs:** Adding matomo tracking (noir-lang/noir#4898) ([4dc5efb](4dc5efb)) * Ebs attach robustness ([#6108](#6108)) ([c702688](c702688)) * Fix typo in `ResolverError::AbiAttributeOutsideContract` (noir-lang/noir#4933) ([4dc5efb](4dc5efb)) * Migrate the prover client test to earthly ([#6118](#6118)) ([a59a6c0](a59a6c0)) * Redo typo PR by stayweek ([#6080](#6080)) ([0869452](0869452)) * Redo typo PR by vitalmotif ([#6081](#6081)) ([1a89d1a](1a89d1a)) * Refactor nested contract test for speed ([#6117](#6117)) ([b346a2f](b346a2f)) * Remove unnecessary `pub(super)` in interpreter (noir-lang/noir#4939) ([4dc5efb](4dc5efb)) * Replace relative paths to noir-protocol-circuits ([47592a2](47592a2)) * Replace relative paths to noir-protocol-circuits ([f0d95f5](f0d95f5)) * Update error conversion traits to act on references (noir-lang/noir#4936) ([f060fa6](f060fa6)) ### Documentation * Tweaks for release ([#6129](#6129)) ([77b45b9](77b45b9)) * Update @aztec/builder readme ([#6115](#6115)) ([248761e](248761e)) * Yellow paper updates for the parity circuits ([#6048](#6048)) ([cfe1b05](cfe1b05)) </details> <details><summary>barretenberg: 0.37.0</summary> ## [0.37.0](barretenberg-v0.36.0...barretenberg-v0.37.0) (2024-05-02) ### ⚠ BREAKING CHANGES * use `distinct` return value witnesses by default (noir-lang/noir#4951) ### Features * Count Bb lines weighted by complexity ([#6090](#6090)) ([705177f](705177f)) * Devbox ([#5772](#5772)) ([72321f9](72321f9)) * Handle `no_predicates` attribute (noir-lang/noir#4942) ([4dc5efb](4dc5efb)) * Pippenger benchmarks compatible with wasmtime ([#6095](#6095)) ([5297b5b](5297b5b)) * Use `distinct` return value witnesses by default (noir-lang/noir#4951) ([4dc5efb](4dc5efb)) ### Bug Fixes * Ensure where clauses propagated to trait default definitions (noir-lang/noir#4894) ([4dc5efb](4dc5efb)) * Require for all foldable functions to use distinct return (noir-lang/noir#4949) ([4dc5efb](4dc5efb)) ### Miscellaneous * Add test for recursing a foldable function (noir-lang/noir#4948) ([4dc5efb](4dc5efb)) * **docs:** Adding matomo tracking (noir-lang/noir#4898) ([4dc5efb](4dc5efb)) * Fix typo in `ResolverError::AbiAttributeOutsideContract` (noir-lang/noir#4933) ([4dc5efb](4dc5efb)) * Redo typo PR by stayweek ([#6080](#6080)) ([0869452](0869452)) * Remove unnecessary `pub(super)` in interpreter (noir-lang/noir#4939) ([4dc5efb](4dc5efb)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-package: 0.37.0</summary> ## [0.37.0](AztecProtocol/aztec-packages@aztec-package-v0.36.0...aztec-package-v0.37.0) (2024-05-02) ### Miscellaneous * **aztec-package:** Synchronize aztec-packages versions </details> <details><summary>barretenberg.js: 0.37.0</summary> ## [0.37.0](AztecProtocol/aztec-packages@barretenberg.js-v0.36.0...barretenberg.js-v0.37.0) (2024-05-02) ### Features * Devbox ([#5772](AztecProtocol/aztec-packages#5772)) ([72321f9](AztecProtocol/aztec-packages@72321f9)) </details> <details><summary>aztec-packages: 0.37.0</summary> ## [0.37.0](AztecProtocol/aztec-packages@aztec-packages-v0.36.0...aztec-packages-v0.37.0) (2024-05-02) ### ⚠ BREAKING CHANGES * use `distinct` return value witnesses by default (noir-lang/noir#4951) * Bit shift is restricted to u8 right operand (noir-lang/noir#4907) ### Features * Abort ongoing proving jobs ([#6049](AztecProtocol/aztec-packages#6049)) ([0aa352d](AztecProtocol/aztec-packages@0aa352d)) * Add aztecprotocol/aztec-builder ([#6116](AztecProtocol/aztec-packages#6116)) ([30899d0](AztecProtocol/aztec-packages@30899d0)) * Add de-sugaring for `impl Trait` in function parameters (noir-lang/noir#4919) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * Aztec nr lib constraining nullifier key is fresh ([#5939](AztecProtocol/aztec-packages#5939)) ([f95de6b](AztecProtocol/aztec-packages@f95de6b)) * Bit shift is restricted to u8 right operand (noir-lang/noir#4907) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * Count Bb lines weighted by complexity ([#6090](AztecProtocol/aztec-packages#6090)) ([705177f](AztecProtocol/aztec-packages@705177f)) * Devbox ([#5772](AztecProtocol/aztec-packages#5772)) ([72321f9](AztecProtocol/aztec-packages@72321f9)) * Enforce gas limits from private kernels ([#6105](AztecProtocol/aztec-packages#6105)) ([4395855](AztecProtocol/aztec-packages@4395855)) * **experimental:** `comptime` globals (noir-lang/noir#4918) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * Handle `no_predicates` attribute (noir-lang/noir#4942) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Migrate boxes to GA and Earthly ([#6076](AztecProtocol/aztec-packages#6076)) ([4a49f9d](AztecProtocol/aztec-packages@4a49f9d)) * Pippenger benchmarks compatible with wasmtime ([#6095](AztecProtocol/aztec-packages#6095)) ([5297b5b](AztecProtocol/aztec-packages@5297b5b)) * Private da gas metering ([#6103](AztecProtocol/aztec-packages#6103)) ([1a8f372](AztecProtocol/aztec-packages@1a8f372)) * Prover metrics ([#6050](AztecProtocol/aztec-packages#6050)) ([5b133f2](AztecProtocol/aztec-packages@5b133f2)) * Use `distinct` return value witnesses by default (noir-lang/noir#4951) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) ### Bug Fixes * Ban self-referential structs (noir-lang/noir#4883) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * **ci:** Build-key hotfix ([#6123](AztecProtocol/aztec-packages#6123)) ([5791004](AztecProtocol/aztec-packages@5791004)) * **ci:** Ssh'ing into instances ([#6136](AztecProtocol/aztec-packages#6136)) ([af3192d](AztecProtocol/aztec-packages@af3192d)) * Discard ref counts during unrolling (noir-lang/noir#4923) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * **docs:** Add codegen to `aztec-builder` command ([#6098](AztecProtocol/aztec-packages#6098)) ([4839ed9](AztecProtocol/aztec-packages@4839ed9)) * Ensure where clauses propagated to trait default definitions (noir-lang/noir#4894) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Require for all foldable functions to use distinct return (noir-lang/noir#4949) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) ### Miscellaneous * Add regression test for [#3051](AztecProtocol/aztec-packages#3051) (noir-lang/noir#4815) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) * Add test for recursing a foldable function (noir-lang/noir#4948) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Adding devcontainer with create aztec app ([#5960](AztecProtocol/aztec-packages#5960)) ([ae5cb21](AztecProtocol/aztec-packages@ae5cb21)) * Build docs in earthly ([#6038](AztecProtocol/aztec-packages#6038)) ([784d542](AztecProtocol/aztec-packages@784d542)) * Bump bench-tx-size timeout ([#6109](AztecProtocol/aztec-packages#6109)) ([aa3eefa](AztecProtocol/aztec-packages@aa3eefa)) * **ci:** Fix spot runner build key ([#6119](AztecProtocol/aztec-packages#6119)) ([f332bc9](AztecProtocol/aztec-packages@f332bc9)) * **ci:** Hotfix ([#6124](AztecProtocol/aztec-packages#6124)) ([f60dfcd](AztecProtocol/aztec-packages@f60dfcd)) * **ci:** Run benchmarks on Earthly ([#6089](AztecProtocol/aztec-packages#6089)) ([c985c73](AztecProtocol/aztec-packages@c985c73)) * **ci:** Turn off ARM build for now ([#6135](AztecProtocol/aztec-packages#6135)) ([853913f](AztecProtocol/aztec-packages@853913f)) * Disable bench-summary for now ([67485f1](AztecProtocol/aztec-packages@67485f1)) * Disable doc builds ([#6107](AztecProtocol/aztec-packages#6107)) ([7933f0f](AztecProtocol/aztec-packages@7933f0f)) * **docs:** Adding matomo tracking (noir-lang/noir#4898) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Ebs attach robustness ([#6108](AztecProtocol/aztec-packages#6108)) ([c702688](AztecProtocol/aztec-packages@c702688)) * Fix typo in `ResolverError::AbiAttributeOutsideContract` (noir-lang/noir#4933) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Migrate the prover client test to earthly ([#6118](AztecProtocol/aztec-packages#6118)) ([a59a6c0](AztecProtocol/aztec-packages@a59a6c0)) * Redo typo PR by stayweek ([#6080](AztecProtocol/aztec-packages#6080)) ([0869452](AztecProtocol/aztec-packages@0869452)) * Redo typo PR by vitalmotif ([#6081](AztecProtocol/aztec-packages#6081)) ([1a89d1a](AztecProtocol/aztec-packages@1a89d1a)) * Refactor nested contract test for speed ([#6117](AztecProtocol/aztec-packages#6117)) ([b346a2f](AztecProtocol/aztec-packages@b346a2f)) * Remove unnecessary `pub(super)` in interpreter (noir-lang/noir#4939) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Replace relative paths to noir-protocol-circuits ([47592a2](AztecProtocol/aztec-packages@47592a2)) * Replace relative paths to noir-protocol-circuits ([f0d95f5](AztecProtocol/aztec-packages@f0d95f5)) * Update error conversion traits to act on references (noir-lang/noir#4936) ([f060fa6](AztecProtocol/aztec-packages@f060fa6)) ### Documentation * Tweaks for release ([#6129](AztecProtocol/aztec-packages#6129)) ([77b45b9](AztecProtocol/aztec-packages@77b45b9)) * Update @aztec/builder readme ([#6115](AztecProtocol/aztec-packages#6115)) ([248761e](AztecProtocol/aztec-packages@248761e)) * Yellow paper updates for the parity circuits ([#6048](AztecProtocol/aztec-packages#6048)) ([cfe1b05](AztecProtocol/aztec-packages@cfe1b05)) </details> <details><summary>barretenberg: 0.37.0</summary> ## [0.37.0](AztecProtocol/aztec-packages@barretenberg-v0.36.0...barretenberg-v0.37.0) (2024-05-02) ### ⚠ BREAKING CHANGES * use `distinct` return value witnesses by default (noir-lang/noir#4951) ### Features * Count Bb lines weighted by complexity ([#6090](AztecProtocol/aztec-packages#6090)) ([705177f](AztecProtocol/aztec-packages@705177f)) * Devbox ([#5772](AztecProtocol/aztec-packages#5772)) ([72321f9](AztecProtocol/aztec-packages@72321f9)) * Handle `no_predicates` attribute (noir-lang/noir#4942) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Pippenger benchmarks compatible with wasmtime ([#6095](AztecProtocol/aztec-packages#6095)) ([5297b5b](AztecProtocol/aztec-packages@5297b5b)) * Use `distinct` return value witnesses by default (noir-lang/noir#4951) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) ### Bug Fixes * Ensure where clauses propagated to trait default definitions (noir-lang/noir#4894) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Require for all foldable functions to use distinct return (noir-lang/noir#4949) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) ### Miscellaneous * Add test for recursing a foldable function (noir-lang/noir#4948) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * **docs:** Adding matomo tracking (noir-lang/noir#4898) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Fix typo in `ResolverError::AbiAttributeOutsideContract` (noir-lang/noir#4933) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) * Redo typo PR by stayweek ([#6080](AztecProtocol/aztec-packages#6080)) ([0869452](AztecProtocol/aztec-packages@0869452)) * Remove unnecessary `pub(super)` in interpreter (noir-lang/noir#4939) ([4dc5efb](AztecProtocol/aztec-packages@4dc5efb)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
[PR 3051](AztecProtocol/aztec-packages#3051) was getting too big so I decided to do the naming changes in noir contracts in a separate PR. This is the PR.
Fixes #2908
Fixes #2909
Fixes #2910
Fixes #3061
Note 1: This PR became huge because it made sense to refactor
PXE.addNotes
here as well since I now use the ExtendedNote type there.Note 2: Since this PR is already too big I decided to finish renaming preimage as serialized_note in Noir in a separate PR.
Note 3: Note processor now stores a
CompleteAddress
instead of just a public key because I need the address fromCompleteAddress
to construct theExtendedNote
.Note 4: This is a breaking change because of the
PXE.getNotes
change and thePXE.getPrivateStorageAt
removal.Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.