Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Release Noir(1.0.0-beta.2) #6914

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

noirwhal
Copy link
Contributor

@noirwhal noirwhal commented Dec 23, 2024

🤖 I have created a release beep boop

1.0.0-beta.2 (2025-01-27)

⚠ BREAKING CHANGES

  • loop statements (only frontend) (#7092)
  • Include kind in StructDefinition::generics and fix derivation of Eq in structs with numeric generics (#7076)
  • Handle generic fields in StructDefinition::fields and move old functionality to StructDefinition::fields_as_written (#7067)
  • disallow calling unconstrained functions outside of unsafe blocks and passing unconstrained functions in place of constrained functions (#6938)
  • Disable mocks in execute (#6869)
  • require trait primitive functions/calls to have their trait in scope (#6901)
  • Reserve enum and match keywords (#6961)
  • require trait method calls (foo.bar()) to have the trait in scope (imported) (#6895)
  • type-check trait default methods (#6645)
  • update aes128_encrypt to return an array (#6973)
  • turn TypeIsMorePrivateThenItem into an error (#6953)
  • turn CannotReexportItemWithLessVisibility into an error (#6952)
  • Switch to using jsonrpsee for foreign calls; refactor run_test; foreign call layering (#6849)

Features

  • --pedantic-solving flag (#6716) (5b9a113)
  • loop keyword in runtime and comptime code (#7096) (c4f183c)
  • loop must have at least one break (#7126) (8804f0a)
  • loop statements (only frontend) (#7092) (48e613e)
  • Add ConstrainNotEqual instruction (#7032) (51180b9)
  • Add noir-inspector (#7136) (a0704aa)
  • Allow associated types to be ellided from trait constraints (#7026) (aa7b91c)
  • Auto-import traits when suggesting trait methods (#7037) (a9acf5a)
  • Avoid generating a new witness when checking if linear expression is zero (#7031) (14c9237)
  • Avoid inserting inc_rc instructions into ACIR (#7036) (2d316c2)
  • brillig: Set global memory size at program compile time (#7151) (7f9525d)
  • brillig: SSA globals code gen (#7021) (82cb900)
  • cli: Add CLI option to filter by contract function name (#7018) (fc5848c)
  • comptime: Implement to_be_bits and to_le_bits in the interpreter (#7008) (a7eea81)
  • Disable mocks in execute (#6869) (e71fcdf)
  • Disallow calling unconstrained functions outside of unsafe blocks and passing unconstrained functions in place of constrained functions (#6938) (2732947)
  • Don't report warnings for dependencies (#6926) (7cc8dbf)
  • Don't simplify SSA instructions when creating them from a string (#6948) (da94c2b)
  • experimental: Construct enum variants in expressions (#7174) (e338952)
  • experimental: Support enums in comptime code (#7194) (4fe4cc6)
  • experimental: Try to infer lambda argument types inside calls (#7088) (a3b823c)
  • Handle generic fields in StructDefinition::fields and move old functionality to StructDefinition::fields_as_written (#7067) (14a7e37)
  • Impl Default for U128 (#6984) (3c488f4)
  • Inline simple functions (#7160) (c17e228)
  • Lock on Nargo.toml on several nargo commands (#6941) (54d81ca)
  • LSP autocomplete module declaration (#7154) (1f1e750)
  • LSP chain inlay hints (#7152) (1927bda)
  • LSP: Auto-import trait reexport if trait is not visible (#7079) (197b02a)
  • LSP: Code action to import trait in a method call (#7066) (3b8d1da)
  • LSP: Suggest trait methods from where clauses (#6915) (21eef0d)
  • lsp: Use trait method docs for trait impl method docs on hover (#7003) (4d38a88)
  • Parse globals in SSA parser (#7112) (fd3377b)
  • Parser and formatter support for enums (#7110) (7705a62)
  • Require trait function calls (Foo::bar()) to have the trait in scope (imported) (#6882) (a5447ed)
  • Require trait method calls (foo.bar()) to have the trait in scope (imported) (#6895) (d61633d)
  • Require trait primitive functions/calls to have their trait in scope (#6901) (56c931a)
  • Resolve enums & prepare type system (#7115) (a1cf830)
  • Skip codegen of zero iteration loops (#7030) (fa12b7f)
  • SSA globals in monomorphization and SSA gen (#6985) (db28cb9)
  • ssa: Add flag to DIE pass to be able to keep store instructions (#7106) (ed12ad7)
  • ssa: Expand feature set of the Brillig constraint check (#7060) (2d415ca)
  • ssa: Hoist add and mul binary ops using known induction variables (#6910) (ebc4d2c)
  • ssa: Immediately simplify away RefCount instructions in ACIR functions (#6893) (ab8807d)
  • ssa: Pass to preprocess functions (#7072) (bc0c0ca)
  • ssa: Reuse constants from the globals graph when making constants in a function DFG (#7153) (d3ca3b7)
  • ssa: Treat globals as constant in a function's DFG (#7040) (1273ea4)
  • Switch to using jsonrpsee for foreign calls; refactor run_test; foreign call layering (#6849) (51a4d5d)
  • test: Enable the test fuzzer for Wasm (#6835) (f4745d4)
  • Turn CannotReexportItemWithLessVisibility into an error (#6952) (da18a12)
  • Turn TypeIsMorePrivateThenItem into an error (#6953) (8b6f720)
  • Type-check trait default methods (#6645) (8bb3908)
  • Unchecked math operations in SSA (#7011) (f6ed6aa)
  • Unconstrained optimizations for BoundedVec (#7119) (3597ffe)
  • Update aes128_encrypt to return an array (#6973) (dcdccfc)
  • Warn on trait method visibility (#6923) (bb71bcb)

Bug Fixes

  • Function::is_no_predicates always returned false for brillig f… (#7167) (8cab0e4)
  • Allow calling trait impl method from struct if multiple impls exist (#7124) (966d8a6)
  • Allow implicit associated types on integer type kinds (#7078) (f2a6d10)
  • Allow multiple trait impls for the same trait as long as one is in scope (#6987) (7328f0b)
  • Avoid creating unnecessary memory blocks (#7114) (521f5ce)
  • Bigint builtins are foreigns (#6892) (a1f9c94)
  • Consistent file_id across installation paths (#6912) (baca790)
  • Defunctionalize pass on the caller runtime to apply (#7100) (dd70845)
  • Do not emit range check for multiplication by bool (#6983) (c0a4010)
  • Do not panic on indices which are not valid u32s (#6976) (bf474c0)
  • Do not remove memory blocks used as brillig input (#7073) (8d2a2dd)
  • docs: Update broken links to EC lib (#7141) (ff55a77)
  • Don't always select trait impl when verifying trait constraints (#7041) (ba07336)
  • Don't always use an exclusive lock in nargo check (#7120) (bbdb937)
  • Don't fail parsing macro if there are parser warnings (#6969) (7f0067c)
  • Ensure canonical bits decomposition (#7168) (3e2fe1f)
  • Error on missing function parameters (#6967) (38d429e)
  • Include kind in StructDefinition::generics and fix derivation of Eq in structs with numeric generics (#7076) (f17b7cc)
  • Keep inc_rc for array inputs during preprocessing (#7163) (29d2d8a)
  • Let static_assert fail with the provided message (#7005) (268229e)
  • LSP hover over function with &mut self (#7155) (c8d5ce5)
  • LSP: Correct signature for assert and assert_eq (#7184) (b6fa180)
  • lsp: Suggest all possible trait methods, but only visible ones (#7027) (7d46287)
  • nargo_fmt: Don't consider identifiers the same if they are equal… (#7043) (18ea051)
  • nargo_fmt: Let doc comment could come after regular comment (#7046) (c3f8a46)
  • Non-determinism from under constrained checks (#6945) (203242c)
  • Preserve types when reading from calldata arrays (#7144) (f73dc9a)
  • Prevent overlapping associated types impls (#7047) (ed9977a)
  • Proper cleanup when breaking from comptime loop on error (#7125) (bf32a22)
  • Reduce memory usage in mem2reg (#7053) (a0ffedf)
  • Remove unnecessary cast in bit-shift (#6890) (011fbc1)
  • Remove unused brillig functions (#7102) (4727b16)
  • Reproduce and fix bytecode blowup (#6972) (724547d)
  • Require generic trait impls to be in scope to call them (#6913) (5300ec3)
  • Return trait impl method as FuncId if there's only one (#6989) (8d7f1f9)
  • Show output of test_program_is_idempotent on failure (#6942) (a690d96)
  • ssa: Resolve value before fetching from DFG in a couple cases (#7169) (39af02f)
  • ssa: Use post order when mapping instructions in loop invariant pass (#7140) (b00facb)
  • Start RC at 1 again (#6958) (6f086b3)
  • Wrong module to lookup trait when using crate or super (#6974) (74ec723)

Miscellaneous Chores


This PR was generated with Release Please. See documentation.

Copy link
Contributor

github-actions bot commented Dec 23, 2024

Peak Memory Sample

Program Peak Memory
keccak256 78.48M
workspace 123.65M
regression_4709 422.91M
ram_blowup_regression 1.58G
rollup-base-public 10.47G
rollup-base-private 6.57G
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 23, 2024

Compilation Report

Program Compilation Time %
sha256_regression 1.030s -4%
regression_4709 0.828s 0%
ram_blowup_regression 18.900s 1%
rollup-root 3.706s 3%
rollup-merge 2.018s -7%
rollup-block-root-single-tx 87.700s -3%
rollup-block-root-empty 2.100s 1%
rollup-block-root 92.700s 9%
rollup-block-merge 3.918s 10%
rollup-base-public 27.020s -4%
rollup-base-private 9.858s -10%
private-kernel-tail 1.024s 0%
private-kernel-reset 5.912s -6%
private-kernel-inner 2.098s 3%

Copy link
Contributor

github-actions bot commented Dec 23, 2024

Execution Report

Program Execution Time %
sha256_regression 0.052s -2%
regression_4709 0.002s 100%
ram_blowup_regression 0.601s 0%
rollup-root 0.104s 0%
rollup-merge 0.007s 0%
rollup-block-root 38.500s 2%
rollup-block-merge 0.109s 4%
rollup-base-public 1.226s 0%
rollup-base-private 0.459s 0%
private-kernel-tail 0.019s 0%
private-kernel-reset 0.316s 1%
private-kernel-inner 0.068s 1%

@github-actions github-actions bot added the documentation Improvements or additions to documentation label Dec 23, 2024
Copy link
Contributor

github-actions bot commented Dec 23, 2024

@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch 2 times, most recently from 097d799 to e0c7b2b Compare December 23, 2024 17:14
@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch 5 times, most recently from d619924 to 6fdd29f Compare January 2, 2025 21:52
Copy link
Contributor

github-actions bot commented Jan 2, 2025

Execution Memory Report

Program Peak Memory
keccak256 74.630
workspace 123.640
regression_4709 315.930
ram_blowup_regression 512.570
rollup-root 498.650
rollup-merge 473.340
rollup-block-root 1230.000
rollup-block-merge 498.660
rollup-base-public 733.920
rollup-base-private 590.340
private-kernel-tail 180.810
private-kernel-reset 245.420
private-kernel-inner 207.810

Copy link
Contributor

github-actions bot commented Jan 2, 2025

Compilation Memory Report

Program Peak Memory
keccak256 77.520
workspace 123.860
regression_4709 424.070
ram_blowup_regression 1480.000
rollup-root 601.460
rollup-merge 484.400
rollup-block-root-single-tx 6230.000
rollup-block-root-empty 488.060
rollup-block-root 6230.000
rollup-block-merge 601.460
rollup-base-public 2120.000
rollup-base-private 1110.000
private-kernel-tail 198.620
private-kernel-reset 539.960
private-kernel-inner 268.200

@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch 15 times, most recently from c4b1153 to 55d68df Compare January 7, 2025 15:23
@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch 21 times, most recently from 4145df6 to 7225f1a Compare January 24, 2025 12:14
Copy link

socket-security bot commented Jan 24, 2025

No dependency changes detected. Learn more about Socket for GitHub ↗︎

👍 No dependency changes detected in pull request

@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch 3 times, most recently from 876be58 to 5944cd9 Compare January 24, 2025 19:51
@noirwhal noirwhal force-pushed the release-please--branches--master--components--noir branch from a8ebd4e to e462085 Compare January 27, 2025 18:14
Copy link
Contributor

FYI @noir-lang/developerrelations on Noir doc changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autorelease: pending documentation Improvements or additions to documentation
Projects
Status: 📋 Backlog
Development

Successfully merging this pull request may close these issues.

3 participants