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(noir): Release 0.7.0 #2

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

Conversation

ax0
Copy link
Owner

@ax0 ax0 commented May 19, 2023

🤖 I have created a release beep boop

0.7.0 (2023-05-19)

⚠ BREAKING CHANGES

  • remove concept of noir fallbacks for foreign functions (#1371)
  • nargo: retire print-acir in favour of flag (#1328)
  • Update to acvm 0.11.0 (#1322)
  • parser: deprecate constrain keyword for assert (#1286)
  • Switch to aztec_backend that uses upstream BB & UltraPlonk (#1114)
  • remove outdated arkworks backend (#1151)
  • nargo: define preprocessed artifacts for programs/contracts (#1126)
  • nargo: use faster hash function for checking preprocessed keys (#1094)
  • Fix returning of structs in ACIR (#1058)
  • upgrade to acvm 0.8.0 (#1047)
  • nargo: rename contract command to codegen-verifier (#959)
  • replace dummy ABIs with FunctionSignature type alias (#930)
  • nargo: save program ABI alongside ACIR (#922)
  • nargo: restrict CliError visibility to crate (#911)
  • prevent inconsistent language usage in Driver (#881)
  • abi: add explicit return type field to ABI. (#865)
  • abi: merge both abi encoding/decoding methods (#862)
  • abi: add an explicit mapping from ABI params to witness indices (#851)
  • Allow impls on primitive types (#847)
  • Make abi field non-optional in CompiledProgram (#856)
  • nargo: bump MSRV to 1.66.0 (#799)
  • noir: Returned values are no longer required by the prover (#731)
  • std_lib: modulus bits/bytes methods, and to_bits -> to_le_bits (#697)

Features

  • abi: add an explicit mapping from ABI params to witness indices (#851) (5bd4bd5)
  • abi: add explicit return type field to ABI. (#865) (8ca5676)
  • abi: merge both abi encoding/decoding methods (#862) (fecd32c)
  • acvm: Update to acvm 0.4.1 (#779) (6f57e86)
  • add nargo preprocess command (#912) (8922ceb)
  • Add new Vec type to frontend (#1103) (e125157)
  • Add Poseidon-BN254 hash functions (#1176) (33feb2b)
  • Add storage slots to globals (#1019) (4190e11)
  • add support for local dependencies (#400) (5f34b79)
  • add support for reading boolean arrays from toml (#900) (93d83bf)
  • Allow arbitrary noir functions to be unconstrained (#1044) (ebc8a36)
  • Allow impls on primitive types (#847) (479da0e)
  • Allow non-comptime field indices in unconstrained functions (#1053) (bc52612)
  • Allow numeric generics to be referenced and add map (#997) (34eab32)
  • Allow secret functions to use public parameters (#1051) (12c0668)
  • Allow structs and arrays as globals (#1054) (dadbd3c)
  • bump noir-source-resolver version (#1182) (750ed77)
  • Changes serialization for contract functions (#1056) (41e0020)
  • ci: Add concurrency group for rust workflow (#806) (1b80f55)
  • ci: Add concurreny group for rust workflow (1b80f55)
  • ci: Add workflow to validate PR title (#730) (e5e8542)
  • ci: Build binaries when a release is made (#773) (a0c0c2c)
  • ci: Change release workflow to use release-please (950ca55)
  • ci: Publish noir_wasm when we cut a release (#871) (5186ab9)
  • compile: compile w/dependencies and options (#965) (3f897f6)
  • compile: Noir std lib embedded (#973) (13b9069)
  • compiler: Allows specify entry_point source (#1026) (9789f89)
  • docs: Introduce Conventional Commits & release process docs (#717) (950ca55)
  • dynamic array indexing (#886) (aba1ed2)
  • Enable to_radix for any field element (#1343) (c3bdec2)
  • Enable dynamic arrays (#1271) (9f43450)
  • Implement 'open' and 'unconstrained' keywords (#1037) (5a66dec)
  • Implement std::unsafe::zeroed (#1048) (9a43f85)
  • Implement arrays of structs (#1068) (f607150)
  • Implement basic contracts (#944) (8ba3ab2)
  • Implement endianness specified versions of to_bytes to_radix and to_bits (#914) (43abc6b)
  • Impls with generics (#798) (bea735d)
  • import core logic in cli from nargo crate (#1142) (753a272)
  • improve abi checks to handle for violated range checks (#572) (a4da774)
  • Issue an error when attempting to use a return expression (#1330) (a6de557)
  • make noirc_driver aware of contracts (#999) (c21afca)
  • Merge all contracts into one ABI (#1033) (473428c)
  • nargo: add InvalidPackageError and DependencyResolutionError error types. (#1007) (1e6761b)
  • nargo: add nargo execute command (#725) (9d6be60)
  • nargo: Add nargo test command to run all unit tests (#728) (2e1dc82)
  • nargo: add flag to verify created proofs (#737) (e981c7c)
  • nargo: add option to save witness to file in execute command (9d6be60)
  • nargo: add panic hook (74cb340)
  • nargo: Add panic hook (#850) (74cb340)
  • nargo: add skeleton of composite types in template input tomls (#1104) (1fb2756)
  • nargo: add support for testing noir libraries (#752) (27bd2ac)
  • nargo: add test to example noir program (#1039) (f994c4f)
  • nargo: allow running nargo from any directory in package (#1010) (761fdb5)
  • nargo: define preprocessed artifacts for programs/contracts (#1126) (7528f59)
  • nargo: include short git commit in cli version output (#721) (6e01c2f)
  • nargo: Leverage rustls instead of openssl for downloads (#691) (933809c)
  • nargo: print-acir command (#1031) (408d9c0)
  • nargo: remove misleading quotes in generated Prover.toml (#1087) (57c817f)
  • nargo: Remove usage of CompiledProgram in CLI code and use separate ABI/bytecode (#1269) (f144391)
  • nargo: retire print-acir in favour of flag (#1328) (dffa3c5)
  • nargo: save program ABI alongside ACIR (#922) (ddaf305)
  • nargo: split nargo into core and cli packages (#1065) (7c388f9)
  • nargo: Update nargo to use preprocessing interface (#765) (b3f1556)
  • nargo: Version info in nargo and wasm (#802) (fd64be5)
  • noir: added distinct keyword (#1219) (3a65f30)
  • noir: added assert keyword (#1227) (0dc2cac)
  • noir: Returned values are no longer required by the prover (#731) (90b6036)
  • pass in closure to Driver to signal backend opcode support (#1349) (1e958c2)
  • read-only array (#899) (2e38ab0)
  • remove concept of noir fallbacks for foreign functions (#1371) (dbec6f2)
  • separate contract/program compilation from IO (#967) (c60f545)
  • Silence output of prove and verify (#892) (811b346)
  • ssa refactor: experimental-ssa compiler flag (#1289) (afa6749)
  • ssa refactor: Implement dominator tree (#1278) (144ebf5)
  • ssa refactor: mem2reg opt pass (#1363) (5d1efd5)
  • ssa: add block opcode (#1291) (951ad71)
  • ssa: add location to ssa instructions (#931) (356858b)
  • ssa: array sort (#754) (32e9320)
  • std_lib: modulus bits/bytes methods, and to_bits -> to_le_bits (#697) (a20e1c1)
  • std_lib: println statements (#630) (d5d1be2)
  • stdlib: Add higher order array functions (#833) (9c62fef)
  • stdlib: add keccak256 foreign function (#1249) (260d87d)
  • stdlib: EdDSA sig verification (#1313) (04a15e0)
  • stdlib: Implement elliptic curve primitives (#964) (30d612d)
  • stdlib: Implement Poseidon hash (#768) (779ab66)
  • Switch to aztec_backend that uses upstream BB & UltraPlonk (#1114) (f14fe0b)
  • update to ACVM 0.5.0 (#902) (9b58da4)

Bug Fixes

  • 419 by disallowing bitwise operations on fields during type checking (#687) (35bef8d)
  • 577 (#578) (5da0559)
  • 628 (#653) (a03ef15)
  • abi: ensure that return value is loaded from toml (#883) (adba24c)
  • Add checks for nop (#1160) (809b85f)
  • add more readable error for missing argument in toml (#971) (e31f41f)
  • Add Poseidon examples into integration tests (#1257) (2a5aa52)
  • allow comptime or non comptime fields in unconstrained for loops (#1172) (73df465)
  • allow parsing strings from toml into booleans (#894) (f729a00)
  • Avoid asserting in typechecker if struct field count is not correct (#1036) (b3d1d7f), closes #1028
  • avoid testing equality between unit values in acir_gen test (#849) (c2b7230)
  • check the argument count of generic types (#970) (2688dc4)
  • ci: Skip the title check if handling a merge group (#790) (71b179c)
  • compiler identifying imported functions as being part of a contract (#1112) (61c38d2)
  • compute witness when println evaluated before input (#891) (2727b34)
  • correct name in CLI output from nargo_cli to nargo (74d7369)
  • correct test for mutually exclusive feature flags (#1085) (eb5c917)
  • correct type checking to handle false bools (#893) (6c7aa2f)
  • crash when typechecking fields that don't exist (#1070) (a67e8c5)
  • display command description in CLI for nargo prove (#949) (2829af1)
  • evaluate constant division (#909) (b91307b)
  • fix linear_eval is no 0 serialisation issue (#1226) (41d96ae)
  • Fix issue with parsing nested generics (#1319) (36f5b8e)
  • Fix modulo operator for comptime values (#1361) (ba15d6d)
  • Fix multiple call of to_le_bytes (#941) (2ee0119)
  • Fix parser error preventing assignments to tuple fields (#1318) (460568e)
  • Fix returning of structs in ACIR (#1058) (91bd471)
  • Fix struct or tuple field assignment failing with generics (#1317) (d872890), closes #1315
  • generate valid toml when outputting nested structs (#936) (ba947a7)
  • Improve member access error (#940) (9b5b5f6)
  • maintain ordering of return value witnesses when constructing ABI (#1177) (b799c8a)
  • nargo: nargo test now only runs test functions defined in the current module (#805) (c6293c9)
  • nargo: correct inconsistent file extension for ACIR hashes (#994) (23c22d7)
  • nargo: correct logic for rejecting transitive local dependencies (#1015) (e2b8b65)
  • nargo: correct name in CLI output from nargo_cli to nargo (#1095) (74d7369)
  • nargo: give contract artifacts unique names to prevent overwrites (#1158) (1227b2c)
  • nargo: only search for Nargo.toml in commands which act on a Nargo package (#1029) (6e642b9)
  • nargo: resolve local dependencies relative to root of depending package (38bf571)
  • nargo: restore nargo codegen-verifier functionality (#1185) (528a2a4)
  • nargo: Switch order of writing acir file and acir checksum file (#895) (4fc94dc)
  • nargo: Use yml extension for bug report link presented upon panic (#960) (f7b3711)
  • nargo: Use yml extension on the bug report link presented upon panic (f7b3711)
  • noir_wasm: Update wasm ACIR serialization (#898) (575436f)
  • Numeric generics with impls error (#1148) (5d6e4d0)
  • operators issuing type errors when used with matching integer types arising from generic code (#789) (932943a)
  • Optimize parser (#869) (e927a39)
  • Prevent calling contract functions from outside the contract (#980) (21360e3)
  • prevent inconsistent language usage in Driver (48cda7a)
  • prevent inconsistent language usage in Driver (#881) (48cda7a)
  • properly initialise Evaluator in test (#863) (bbb70bd)
  • properly initialise Evaluator in test (bbb70bd)
  • rationalise witness for constant values (#984) (ab32365)
  • Remove uses of std::process::exit (#963) (870ea46)
  • Resolve globals in types (#1043) (2badf14)
  • reverse slash direction in StdLibAssets prefix on windows (#992) (65b7108)
  • ssa: delete instructions with false predicate (#760) (f329379)
  • ssa: fix the compile-time check for equality in acir-gen (#904) (161e4fb)
  • ssa: set correct predecessors of IF join (#1171) (7628ed6)
  • ssa: synchronisation for functions (#764) (615357a)
  • stdlib: support use of to_bits and to_radix for values >128 bits (#1312) (12f3e7e)
  • stdlib: Workaround for Field comparison error in EdDSA signature verification (#1372) (e790c9f)
  • typos (8dcc8db)
  • typos (#458) (8dcc8db)
  • Update backend dependency containing updated pk write fix (#956) (5d627a7)
  • wasm: add std after dependencies (#1245) (55ef8a2)

Miscellaneous Chores

  • Make abi field non-optional in CompiledProgram (#856) (98acb5a)
  • nargo: bump MSRV to 1.66.0 (#799) (59ff9e8)
  • nargo: rename contract command to codegen-verifier (#959) (2e63492)
  • nargo: restrict CliError visibility to crate (#911) (ed0e1ab)
  • nargo: use faster hash function for checking preprocessed keys (#1094) (a69758c)
  • parser: deprecate constrain keyword for assert (#1286) (9740f54)
  • remove outdated arkworks backend (#1151) (bc8ed9a)
  • replace dummy ABIs with FunctionSignature type alias (#930) (156125b)
  • Update to acvm 0.11.0 (#1322) (da47368)
  • upgrade to acvm 0.8.0 (#1047) (63f958b)

This PR was generated with Release Please. See documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants