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: Sync from noir #10788

Merged
merged 20 commits into from
Dec 20, 2024
Merged

feat: Sync from noir #10788

merged 20 commits into from
Dec 20, 2024

Conversation

AztecBot
Copy link
Collaborator

@AztecBot AztecBot commented Dec 17, 2024

Automated pull of development from the noir programming language, a dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
chore: remove malformed functions from brillig reports (noir-lang/noir#6898)
chore: clean up gates reports script (noir-lang/noir#6896)
chore: move empty programs to compile_success_empty (noir-lang/noir#6891)
feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860)
chore: quick docs fix for #6839 (noir-lang/noir#6840)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886)
chore: Use smallvec for instruction results (noir-lang/noir#6877)
chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880)
feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875)
chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874)
fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848)
feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867)
chore: remove the as_field and from_field built-ins (noir-lang/noir#6845)
chore: fix warnings (noir-lang/noir#6863)
fix: detect cycles in globals (noir-lang/noir#6859)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement as_field and from_field in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace eval_global_as_array_length with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor DataFlowGraph.insert_instruction_and_results (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
END_COMMIT_OVERRIDE

AztecBot and others added 20 commits December 17, 2024 08:09
…eter (noir-lang/noir#6829)

chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
…r#6810)

chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886)
chore: Use smallvec for instruction results (noir-lang/noir#6877)
chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880)
feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875)
chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874)
fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848)
feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867)
chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845)
chore: fix warnings (noir-lang/noir#6863)
fix: detect cycles in globals (noir-lang/noir#6859)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886)
chore: Use smallvec for instruction results (noir-lang/noir#6877)
chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880)
feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875)
chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874)
fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848)
feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867)
chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845)
chore: fix warnings (noir-lang/noir#6863)
fix: detect cycles in globals (noir-lang/noir#6859)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
…oir-lang/noir#6898)

chore: clean up gates reports script (noir-lang/noir#6896)
chore: move empty programs to `compile_success_empty` (noir-lang/noir#6891)
feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860)
chore: quick docs fix for #6839 (noir-lang/noir#6840)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886)
chore: Use smallvec for instruction results (noir-lang/noir#6877)
chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880)
feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875)
chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874)
fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848)
feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867)
chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845)
chore: fix warnings (noir-lang/noir#6863)
fix: detect cycles in globals (noir-lang/noir#6859)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
…r#6898)

chore: clean up gates reports script (noir-lang/noir#6896)
chore: move empty programs to `compile_success_empty` (noir-lang/noir#6891)
feat: add a warning when using unsafe blocks without safety comments (noir-lang/noir#6860)
chore: quick docs fix for #6839 (noir-lang/noir#6840)
chore: Avoid duplicate Not instructions during flattening (noir-lang/noir#6886)
chore: Use smallvec for instruction results (noir-lang/noir#6877)
chore(ci): Display times in compilation and execution reports only with seconds (noir-lang/noir#6880)
feat: flatten nested if-else statements with equivalent conditions (noir-lang/noir#6875)
chore(ci): Take averages for compilation and execution report of small programs (noir-lang/noir#6874)
fix: don't deduplicate binary math of unsigned types (noir-lang/noir#6848)
feat: warn on unnecessary unsafe blocks (noir-lang/noir#6867)
chore: remove the `as_field` and `from_field` built-ins (noir-lang/noir#6845)
chore: fix warnings (noir-lang/noir#6863)
fix: detect cycles in globals (noir-lang/noir#6859)
chore(ci): Execution time report (noir-lang/noir#6827)
chore(ci): Add non determinism check and fixes (noir-lang/noir#6847)
chore(docs): updating the solidity contract how-to guide (noir-lang/noir#6804)
fix: double alias in path (noir-lang/noir#6855)
feat: configurable external check failures (noir-lang/noir#6810)
chore: move constant creation out of loop (noir-lang/noir#6836)
fix: implement `as_field` and `from_field` in the interpreter (noir-lang/noir#6829)
chore: Use Vec for callstacks (noir-lang/noir#6821)
feat: replace `eval_global_as_array_length` with type/interpreter evaluation (noir-lang/noir#6469)
chore: refactor `DataFlowGraph.insert_instruction_and_results` (noir-lang/noir#6823)
chore(docs): updating noirjs tutorial for 1.0.0 (noir-lang/noir#6792)
feat: Sync from aztec-packages (noir-lang/noir#6824)
chore: Have rust-analyzer use the stable toolchain (noir-lang/noir#6825)
@TomAFrench
Copy link
Member

The gate diffs action got broken in ci3 so here's the diff:

🧾 Summary (20% most significant diffs)

Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_tail_to_public +439 ❌ +2.76% +589 ❌ +1.39%
rollup_base_public -1,108,638 ✅ -28.79% -2,082,811 ✅ -16.51%
rollup_base_private -1,108,827 ✅ -30.63% -2,083,047 ✅ -18.56%

Full diff report 👇
Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_tail_to_public 16,335 (+439) +2.76% 42,934 (+589) +1.39%
rollup_block_root 719,198 (+36,872) +5.40% 4,324,095 (+30,738) +0.72%
rollup_root 38,438 (+6,048) +18.67% 1,907,311 (+6,552) +0.34%
rollup_block_merge 38,454 (+6,048) +18.66% 1,907,325 (+6,552) +0.34%
private_kernel_inner 46,279 (+19) +0.04% 89,062 (+26) +0.03%
private_kernel_tail 5,348 (+6) +0.11% 27,501 (+8) +0.03%
private_kernel_init 27,955 (+2) +0.01% 48,562 (+3) +0.01%
rollup_base_public 2,742,614 (-1,108,638) -28.79% 10,534,892 (-2,082,811) -16.51%
rollup_base_private 2,510,946 (-1,108,827) -30.63% 9,141,878 (-2,083,047) -18.56%

@TomAFrench TomAFrench merged commit 84a4005 into master Dec 20, 2024
49 checks passed
@TomAFrench TomAFrench deleted the sync-noir branch December 20, 2024 21:48
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.

3 participants