aztec-packages: v0.43.0
Pre-release
Pre-release
0.43.0 (2024-06-18)
⚠ BREAKING CHANGES
- remove
distinct
keyword (noir-lang/noir#5219) - remove
param_witnesses
andreturn_witnesses
from ABI (noir-lang/noir#5154) - add session id to foreign call RPC requests (noir-lang/noir#5205)
- make options.limit a compile-time constant (#7027)
- restrict noir word size to u32 (noir-lang/noir#5180)
- separate proving from
noir_js
(noir-lang/noir#5072)
Features
pxe.addNullifiedNote(...)
(#6948) (42a4b1c)- Add data dir to pxe container (#6874) (504fea2)
- Add ENFORCE_FEES sequencer config (#6949) (46dcb98)
- Add gate profiler for noir circuits (#7004) (a2f6876)
- Add node to devnet (#6898) (acc534c)
- Add session id to foreign call RPC requests (noir-lang/noir#5205) (12af650)
- Add standard form function to biggroup (#6899) (3e44be5)
- Add utils::collapse (#7016) (2d19ad9)
- Affine_element read/write with proper handling of point at infinity (#6963) (c6cbe39)
- Auth registry (#7035) (cea0b3b)
- Auto-gen p2p private key (#6910) (0fc9677)
- Avm e2e nested call + alu fix + cast fix (#6974) (b150b61)
- avm-simulator: Msm blackbox (#7048) (0ce27e0)
- avm: Add get_contract_instance (#6871) (b3a86bf)
- avm: Deserialise execution hints in bb main (#6848) (d3be85f)
- avm: E2e proving of storage (#6967) (6a7be0c)
- avm: E2e send l1 msg (#6880) (deb972d)
- avm: Gas remaining range check and handling of out of gas (#6944) (5647571), closes #6902
- avm: Get contract instance now works e2e with avm proving (#6911) (662187d)
- avm: Indirect support for kernel output opcodes (#6962) (f330bff)
- avm: Indirect support for kernel read opcodes (#6940) (ccc474d)
- avm: L2gasleft and dagasleft opcodes (#6884) (fbab612)
- avm: Nullifier non exist (#6877) (05697f2)
- avm: Plumb externalcall hints (#6890) (3a97f08)
- avm: Plumb start side effect counter in circuit (#7007) (fa8f12f)
- avm: Revert opcode (#6909) (620d3da)
- avm: Support preserving BB working dir for better debugging (#6990) (a9688f0)
- avm: Use hints in gas accounting (circuit) (#6895) (c3746f5)
- bb: Stack traces for check_circuit (#6851) (eb35e62)
- cli: Publicly deploy a pre-initialized account (#6960) (e671935)
- Constrain note encryption (#6432) (e59f4d3)
- Contract storage reads serialize with side effect counter (#6961) (db49ed5)
- docs: Add uniswap back in as a reference and fix links (#7074) (a4d1df6)
- docs: Nits (#6187) (d025496)
- Ecadd op code (#6906) (03a9064)
- Estimate tx size (#6928) (1fa7d84)
- Flows and tests for the tube component (#6934) (4b45438)
- Gas token self deploys (#6956) (ecd7614)
- Implement println in the comptime interpreter (noir-lang/noir#5197) (12af650)
- Increase max L2 to L1 msgs (#6959) (875fb2d)
- Make options.limit a compile-time constant (#7027) (78cd640)
- Nuking last hardcoded note type ids (#7069) (a23fd0b), closes #5833
- Place return value witnesses directly after function arguments (noir-lang/noir#5142) (a44b8c8)
- Poor man's CLI block explorer (#6946) (2b79df6)
- Poor man's fernet (#6918) (19c2a97)
- Private kernel output validator (#6892) (0435e9a)
- Processing outgoing (#6766) (4da66fd)
- Pxe can filter on emitted events (#6947) (ee45fda)
- Restrict noir word size to u32 (noir-lang/noir#5180) (bf38cc2)
- Separate proving from
noir_js
(noir-lang/noir#5072) (bf38cc2) - Separate runtimes of SSA functions before inlining (noir-lang/noir#5121) (a44b8c8)
- SMT Standard Circuit separation (#6904) (f970732)
- SMT Verification Module Update (#6849) (6c98529)
- SMT Verifier for Ultra Arithmetization (#7067) (6692ac8)
- Splitting event log functionality (#6921) (8052bc6)
- Standard form for cycle_group (#6915) (e6cba16)
- Standardize pedersen functions to return
EmbeddedCurvePoint
(noir-lang/noir#5190) (12af650) - Storing outgoing + API for outgoing (#7022) (8281ec6)
- Support casting in globals (noir-lang/noir#5164) (bf38cc2)
- Support disabling aztec vm in non-wasm builds (#6965) (f7a46c0)
- Sync from aztec-packages (noir-lang/noir#5222) (12af650)
- Track timeout status of proving jobs (#6868) (7306176)
Bug Fixes
- ALU pil relation TWO_LINE_OP_NO_OVERLAP (#6968) (4ba553b)
- AVM / aztec-up CircleCI issues (#7045) (3f5d380)
- avm: Bugfix related to pc increment in calldatacopy of avm circuit (#6891) (5fe59d2)
- avm: Correctly generate public inputs in verifier (#7018) (4c4c17f)
- Aztec-builder port issue (#7068) (729e69a)
- Biggroup batch mul handles collisions (#6780) (e61c40e)
- Bugfix for Keccak opcode related to reading bytes from input (#6989) (5713f4e)
- Correct docker-compose vars (#6945) (d492ac8)
- Declare volume (#6881) (1e38115)
- Dirty merge 6880 (#6905) (fc6ec3f)
- Do not fail if rollup contract does not support turns (#6938) (5e6fe68)
- Docker compose env vars (#6926) (14e0c1d)
- docs: Fix avm instruction set table (#7061) (fcbd44b)
- docs: Remove prefix in link to code snippet source (#6878) (0e8e772)
- elaborator: Invert unconstrained check (noir-lang/noir#5176) (bf38cc2)
- elaborator: Lazily elaborate globals (noir-lang/noir#5191) (bf38cc2)
- Ensure changes in aztec up directory are deployed (#7031) (e673fd4), closes #6932
- Error for allocate instructions in acir-gen (noir-lang/noir#5200) (12af650)
- experimental elaborator: Clear generics after elaborating type aliases (noir-lang/noir#5136) (a44b8c8)
- experimental elaborator: Fix
impl Trait
when--use-elaborator
is selected (noir-lang/noir#5138) (a44b8c8) - experimental elaborator: Fix definition kind of globals and tuple patterns with
--use-elaborator
flag (noir-lang/noir#5139) (a44b8c8) - experimental elaborator: Fix frontend tests when
--use-elaborator
flag is specified (noir-lang/noir#5145) (a44b8c8) - experimental elaborator: Fix global values used in the elaborator (noir-lang/noir#5135) (a44b8c8)
- experimental elaborator: Fix globals which use function calls (noir-lang/noir#5172) (bf38cc2)
- Expose node port (#6917) (131af88)
- Fix avm unit test with proving by passing the public_inputs (#7062) (2d7c097)
- Fix client ivc incorrect srs size issue and parallelise srs generation for grumpkin (#6913) (f015736)
- Fix for the flaky issue (I hope) (#6923) (39747b9)
- Fix panic in
get_global_let_statement
(noir-lang/noir#5177) (bf38cc2) - Fixing 0 naf (#6950) (d35ee2e)
- frontend: Resolve object types from method calls a single time (noir-lang/noir#5131) (a44b8c8)
- Initialize side_effect_counter based on the initial value passed to builder (#7017) (46d166b)
- p2p: Remove p2p datastore persistence for now (#6879) (ce7f0e2)
- Pxe waits for node to go up (#6933) (06f03fd)
- Register account contract before recipient (#6855) (dfea1c7)
- Revert "chore: add arm64 version of aztec-nargo image" (#7039) (25d12da)
- SimulateTx does not prove (#6930) (d3d6b9e)
- Stop squashing storage accesses in avm simulator - all need to be validated in kernel (#7036) (6ffc4b4)
- Update docker-compopse env vars (#6943) (80d1121)
- Updating max update requests per tx (#6783) (55b1cf7)
- Use predicate for curve operations (noir-lang/noir#5076) (a44b8c8)
- Wrapping in signed division (noir-lang/noir#5134) (a44b8c8)
Miscellaneous
- Add arm64 version of aztec-nargo image (#7034) (2a41e84)
- Add more lints related to oracle calls (noir-lang/noir#5193) (12af650)
- Add negative tests for cast and U128 multiplication related to TWO_LINE_OP_NO_OVERLAP (#7041) (7f14ca1), closes #6969
- Add some property tests to ACVM crates (noir-lang/noir#5215) (12af650)
- Add transfer to undeployed account (#7015) (46324b9)
- Add transferFrom migration notes (#7079) (d4921a0)
- Automate necessary changes to outward sync into noir-lang/noir (#7049) (449e41c)
- avm: Add a TS prover test suite for each avm context function (#6957) (f745696)
- avm: Add bytecode size metrics (#7042) (555d97a)
- avm: Add debugging info and trace dump (#6979) (e11f880)
- avm: Add tag checking and missing indirects (#6936) (48be80c)
- avm: Add TS bb prover tests for hashing opcodes (#6970) (312718a)
- avm: Enable tag checking and some proving tests (#6966) (b19daa4)
- avm: Fix proving for kernel tests (#7033) (f5e1106)
- avm: Fix struct serialization and factory (#6903) (bee2646)
- avm: Gas alignments with simulator (#6873) (54339d4), closes #6860
- avm: Modify unit test to have a calldatacopy over 4 elements (#6893) (9f5b113)
- avm: Remove unused public context inputs (#7028) (f7a0921)
- Avoid
bn254_blackbox_solver
polluting feature flags (noir-lang/noir#5141) (12af650) - Avoid manual creation of contract artifact in wasm (noir-lang/noir#5117) (bf38cc2)
- Bb repo warning (#7023) (c3d7053)
- bb: Hide
debug()
logs under--debug
flag (#7008) (a8c3c3f) - Break out helper methods for writing foreign call results (noir-lang/noir#5181) (bf38cc2)
- ci: Don't raise MSRV issue if workflow cancelled (noir-lang/noir#5143) (a44b8c8)
- Custom jest Field equality (#7012) (1a198b8)
- Default to using bn254 in
noirc_frontend
(noir-lang/noir#5144) (a44b8c8) - docs: Fix incorrect docs github link in footer (noir-lang/noir#5206) (12af650)
- docs: Fixing the breadcrumb issue (#6605) (2624c26)
- docs: Supplement Noir Debugger's dependency versions (noir-lang/noir#5199) (12af650)
- docs: Update docs homepage (noir-lang/noir#5198) (12af650)
- Enable skipped ordering tests since AVM properly updates side-effect counter for nested calls (#7064) (5ff5ffb), closes #6471
- experimental elaborator: Handle
comptime
expressions in the elaborator (noir-lang/noir#5169) (bf38cc2) - Fix issue #6929 (off-by-one error in
UltraCircuitBuilder::create_range_constraint
) (#6931) (16deef6) - Fix migration notes (#7075) (ac75f8c)
- Granular public simulation benchmarks (#6924) (b70bc98)
- Inline
FieldElement.is_negative
and document (noir-lang/noir#5214) (12af650) - Lookups cleanup/documentation (#7002) (92b1349)
- Loosen trait bounds on impls depending on
AcirField
(noir-lang/noir#5115) (bf38cc2) - Make
nargo
crate and debug info generic (noir-lang/noir#5184) (12af650) - Mark all oracles as unconstrained (#7032) (7a68be4)
- Move acir docs to code declaration (noir-lang/noir#5040) (bf38cc2)
- Move gas bridge initialization into L1 contracts deployment (#6912) (26a1fc4)
- Move implementation of bitwise operations into
blackbox_solver
(noir-lang/noir#5209) (12af650) - Note emission (#7003) (10048da)
- Note processor cleanup (#6870) (315c46e)
- Opcodes l2gasleft and dagasleft return value with tag ff (#6896) (5890845)
- Parallelise compilation of contracts and protocol circuits (#7009) (86a3314)
- Remove
distinct
keyword (noir-lang/noir#5219) (12af650) - Remove
param_witnesses
andreturn_witnesses
from ABI (noir-lang/noir#5154) (12af650) - Remove deprecated functions (#7029) (bc80e85)
- Remove hir to ast pass (noir-lang/noir#5147) (a44b8c8)
- Remove old public storage access ordering hack (#7063) (bf6b8b8)
- Remove stale comment (noir-lang/noir#5179) (12af650)
- Remove unused
new_variables
argument fromresolve_type_inner
(noir-lang/noir#5148) (a44b8c8) - Rename p2p vars (#6916) (ae7d757)
- Replace relative paths to noir-protocol-circuits (8f7b865)
- Replace relative paths to noir-protocol-circuits (91e1554)
- Replace relative paths to noir-protocol-circuits (f4fed13)
- Replace relative paths to noir-protocol-circuits (7caa288)
- Replace relative paths to noir-protocol-circuits (8a299e9)
- Replace relative paths to noir-protocol-circuits (acf1188)
- Replace relative paths to noir-protocol-circuits (094b511)
- Replace relative paths to noir-protocol-circuits (8e07176)
- Replace relative paths to noir-protocol-circuits (52b6934)
- Replace relative paths to noir-protocol-circuits (873dcea)
- Replace sibling path read with leaf read (#6834) (a20d845)
- Run all test programs in brillig as well as ACIR (noir-lang/noir#5128) (a44b8c8)
- Schnorr signature verification in noir (noir-lang/noir#5188) (bf38cc2)
- Small fixes for the tube flows (#7014) (838ceed)
- Split log emission to encrypt and a log, remove address input (#6987) (ca0e084)
- Start moving lints into a separate linting directory (noir-lang/noir#5165) (bf38cc2)
- Terraform Updates (#6887) (33a3870)
- Transfer and transferfrom to save constrains for simpler cases (#7013) (612b972)
- TS avm proving test - add a pattern for assertion failure (timestamp example) (#7005) (cfef246)
- Update comment on transient nullification (#7001) (6c4e61c)
- Updated devnet terraform (#6927) (4692fb0)
- Updated l1 contracts in compose file (#6942) (15371ce)
- Updated sha for devnet image in compose file (#6939) (83dd231)