aztec-packages: v0.61.0
Pre-release
Pre-release
0.61.0 (2024-10-30)
⚠ BREAKING CHANGES
- avm: cleanup CALL (#9551)
- avm: returndatasize + returndatacopy (#9475)
- use Brillig opcode when possible for less-than operations on fields (#9416)
- profiler: New flamegraph command that profiles the opcodes executed (noir-lang/noir#6327)
- split base rollup and remove public kernel proving (#9434)
- getcontractinstance instruction returns only a specified member (#9300)
- avm/brillig: revert/rethrow oracle (#9408)
Features
bytes_to_fields
requiring only 1 generic param (#9417) (2217da6)- 20-30% cost reduction in recursive ipa algorithm (#9420) (a4bd3e1)
- Add capacities to brillig vectors and use them in slice ops (noir-lang/noir#6332) (b82f3d1)
- Added indexes and a way to store/retrieve tagged secrets (#9468) (1c685b1)
- avm/brillig: Revert/rethrow oracle (#9408) (1bbd724)
- avm: Avm replace zeromorph pcs by shplemini (#9389) (07d6dc2)
- avm: Cleanup CALL (#9551) (26adc55)
- avm: Merkle tree gadget (#9205) (d52b616)
- avm: Returndatasize + returndatacopy (#9475) (8f71006)
- avm: Trace contract class and contract instance (#8840) (84205d8)
- Better LSP hover for functions (noir-lang/noir#6376) (b82f3d1)
- Bytecode hashing init (#8535) (2bb09e5)
- Check trait where clause (noir-lang/noir#6325) (d67381b)
- Comptime deriving generators in macros (#9195) (c4b629c)
- Derive address and class id in avm (#8897) (2ebe361)
- Do not increment reference counts on arrays through references (noir-lang/noir#6375) (f386612)
- docs: Function transforms (hidden macros) (#7784) (831cc66)
- Fee pricing to 0 for old instances (#9296) (7bc3a21)
- Fixed number of pub inputs for databus commitment propagation (#9336) (8658abd)
- Getcontractinstance instruction returns only a specified member (#9300) (29b692f)
- Implement encryption to an address point and decryption from an address secret (#9272) (6d77dd0)
- Initial block reward + external libraries (#9297) (240e9b5)
- Let LSP suggest traits in trait bounds (noir-lang/noir#6370) (f386612)
- Let the formatter remove lambda block braces for single-statement blocks (noir-lang/noir#6335) (d67381b)
- Let the LSP import code action insert into existing use statements (noir-lang/noir#6358) (f386612)
- Let the LSP import code action insert into existing use statements (noir-lang/noir#6358) (d67381b)
- LSP auto-import will try to add to existing use statements (noir-lang/noir#6354) (f386612)
- LSP auto-import will try to add to existing use statements (noir-lang/noir#6354) (d67381b)
- Merge and sort imports (noir-lang/noir#6322) (b4db379)
- Note tagging oracle (#9429) (cec6306)
- Ownable sysstia (#9398) (30314ec), closes #9351
- perf: Use [u32;16] for message block in sha256 (noir-lang/noir#6324) (d67381b)
- Print finalized size and log dyadic size during Ultra proof construction (#9411) (84fdc52)
- profiler: New flamegraph command that profiles the opcodes executed (noir-lang/noir#6327) (d67381b)
- Prover coordination test with a reorg (#9405) (9efe288)
- prover: Perform prover coordination via p2p layer (#9325) (2132bc2), closes #9264
- Reject programs with unconditional recursion (noir-lang/noir#6292) (b4db379)
- Remove 'single use' intermediate variables (noir-lang/noir#6268) (d67381b)
- Reorder blocks for efficiency (#9560) (10874f4)
- Simulate latency with network chaos (#9469) (10aefbb)
- Sol shplemini in acir tests + contract_gen (#8874) (1c0275d)
- Suggest removing
!
from macro call that doesn't return Quoted (noir-lang/noir#6384) (b82f3d1) - Support specifying generics on a struct when calling an associated function (noir-lang/noir#6306) (b82f3d1)
- Sync from aztec-packages (noir-lang/noir#6345) (d67381b)
- Tally AVM opcodes executed in simulator (#9473) (9a06ada)
- test: Run test matrix on stdlib tests (noir-lang/noir#6352) (f386612)
- test: Run test matrix on stdlib tests (noir-lang/noir#6352) (d67381b)
Bug Fixes
- (formatter) correctly format quote delimiters (noir-lang/noir#6377) (b82f3d1)
- (formatter) indent after infix lhs (noir-lang/noir#6331) (b4db379)
- (LSP) check visibility of module that re-exports item, if any (noir-lang/noir#6371) (f386612)
- Add native verification test to honk keccak (#9501) (59810e0)
- Allow globals in format strings (noir-lang/noir#6382) (b82f3d1)
- Allow more resources for 4epochs tests (#9418) (74a8ad1)
- Allow type aliases in let patterns (noir-lang/noir#6356) (f386612)
- Allow type aliases in let patterns (noir-lang/noir#6356) (d67381b)
- Always inline
derive_generators
(noir-lang/noir#6350) (f386612) - Always inline
derive_generators
(noir-lang/noir#6350) (d67381b) - avm: Address bytecode hashing comments (#9436) (a85f92a)
- avm: Disable sha256 in bulk test until we debug it (#9482) (078c318)
- avm: Re-enable sha256 in bulk test, fix bug in AVM SHL/SHR (#9496) (0fe64df)
- Bb-only-change fix e2e build instability (#9441) (ca3abaa)
- Better formatting of leading/trailing line/block comments in expression lists (noir-lang/noir#6338) (d67381b)
- Cleanup of janky encryption apis (#9390) (9e3e536)
- Deploy & version aztec-up scripts (#9435) (ad80169)
- Display every bit in integer tokens (noir-lang/noir#6360) (b82f3d1)
- Docker fast (#9467) (34e6dd0)
- docs: Update getting started docs (#9426) (985190b)
- Fix panic in comptime code (noir-lang/noir#6361) (f386612)
- Fix panic in comptime code (noir-lang/noir#6361) (d67381b)
- Formatter didn't format
>>=
well (noir-lang/noir#6337) (b4db379) - Honk shplemini acir artifacts (#9550) (468c100)
- Issue in partial notes API (#9555) (9d66c1a)
- LSP auto-import would import public item inside private module (noir-lang/noir#6366) (f386612)
- Make keccak256 work with input lengths greater than 136 bytes (noir-lang/noir#6393) (b82f3d1)
- Make sure kind tests run every master commit (#9478) (78de316)
- Mutable global pattern didn't have a span (noir-lang/noir#6328) (b4db379)
- Remove assumed parent traits (noir-lang/noir#6365) (f386612)
- Remove unnecessary ivpk's from aztec-nr (#9460) (c6437cc)
- Replace npk_m_hash with addresses (#9461) (f4ed55b)
- Revert "feat: sol shplemini in acir tests + contract_gen" (#9505) (3351217)
- Slightly better formatting of empty blocks with comments (noir-lang/noir#6367) (f386612)
- Spot_strategy passing (#9428) (1e38d3e)
- ssa: Do not mark an array from a parameter mutable (noir-lang/noir#6355) (f386612)
- ssa: Do not mark an array from a parameter mutable (noir-lang/noir#6355) (d67381b)
- Yarn build:fast (#9464) (bbe6d06)
- Yarn project bootstrap fast (#9440) (c1ebed5)
Miscellaneous
- Add serdes and eq for address note (#9544) (74bcfab)
- Add some tests for type aliases (d67381b)
- Add test to check that duplicate definitions generated from macros throws error (noir-lang/noir#6351) (f386612)
- Add test to check that duplicate definitions generated from macros throws error (noir-lang/noir#6351) (d67381b)
- Align debug logging between AVM sim & witgen (#9498) (7c2d67a)
- avm:: Fix execution tests in proving mode (#9466) (8e07de8)
- avm: Allocate memory for unshifted polynomials according to their trace col size (#9345) (a67d0e2)
- Bumping L2 gas and public reads constants (#9431) (91c50dd)
- CI: Remove end-to-end/Earthfile (#9364) (2823cbb), closes #9221
- Clean up note processor after changes due to address (#9401) (d33c988)
- Disable e2e_fees_dapp_subscription (#9489) (26416b6)
- Disable flakey e2e_synching.test.ts (#9439) (01147a5)
- Dont show aws creds in docker fast (#9465) (a6d8f48)
- Fix sync scripts (#9423) (7766c8e)
- Have 'aztec' honour the 'DEBUG' env var (#9413) (771a2ac)
- Minor tweaks to comptime doc (noir-lang/noir#6357) (f386612)
- Minor tweaks to comptime doc (noir-lang/noir#6357) (d67381b)
- Minting only private or public balance in Token TXE tests (#9491) (b8c015b)
- Node follow prune and extend chain (#9328) (a653fd3)
- Noir bug workaround (#9443) (f619687)
- Passing partial note logs through transient storage (#9356) (8835b31)
- Redo typo PR by defitricks (#9571) (9a5dce3)
- Remove ovpk as param in boxes contracts (#9495) (2b24b98)
- Remove unnecessary trait (#9437) (1db2eec)
- Rename private function in L2 block stream (#9481) (a34d4aa), closes #9314
- Replace relative paths to noir-protocol-circuits (4f2d67c)
- Replace relative paths to noir-protocol-circuits (33f2151)
- Replace relative paths to noir-protocol-circuits (5247be2)
- Replace relative paths to noir-protocol-circuits (49467ba)
- Replace relative paths to noir-protocol-circuits (f6d714f)
- Replace relative paths to noir-protocol-circuits (b4841ad)
- Replace token note with uint note (#8143) (493a3f3)
- Run tests in metaprogramming.rs (noir-lang/noir#6339) (d67381b)
- Split base rollup and remove public kernel proving (#9434) (4316242)
- Switch to btreeset for deterministic ordering (noir-lang/noir#6348) (d67381b)
- Update title from feedback (noir-lang/noir#6334) (b4db379)
- Use array instead of Vec in keccak256 (noir-lang/noir#6395) (b82f3d1)
- Use big endian in sha (#9471) (bc9828e)
- Use Brillig opcode when possible for less-than operations on fields (#9416) (e50303d)