Skip to content

v1.0.0-beta.12

Choose a tag to compare

@noirwhal noirwhal released this 04 Sep 10:16
9a5b369

1.0.0-beta.12 (2025-08-29)

⚠ BREAKING CHANGES

  • ssa: Signed shift overflow checks rhs < bit_size (#9685)
  • remove verify_signature_slice methods from stdlib (#9597)

Features

  • Brillig functions can be pure if they are not entry points (#9659) (3906847)
  • Group one audit tests (#9445) (f601afe)
  • Hoist safe casts from loops (#9645) (318ff16)
  • Keep last loads from predecessors in mem2reg (#9492) (10a597f)
  • mem2reg: Address last known value is independent of its aliases (#9613) (92aa75d)
  • mem2reg: Address last known value is independent of its aliases (take three) (#9633) (46e3595)
  • Propagate purities using SCCs (#9672) (1b24d1c)
  • Remove redundant enforce_bitshift_rhs_lt_bit_size (#9561) (80501a8)
  • ssa_fuzzer: Ecdsa blackbox functions (#9584) (c6835b5)
  • ssa_fuzzer: Embedded curve ops (#9557) (110cb99)

Bug Fixes

  • assert_constant refactors and fixes from audit (#9547) (d31b724)
  • acir_gen: A slice might be a nested Array, not a flattened DynamicArray (#9600) (29b3639)
  • acir_gen: Keep range checks before side effects (#9340) (c7a3cf5)
  • Avoid invalid cast in remove_bit_shifts (#9570) (854bea9)
  • Bind trait impl func generics to trait func generics during monomorphization (#9566) (66ba28e)
  • Consume correct number of fields when printing references (#9579) (49a3185)
  • Don't thread-bomb unnecessarily (#9643) (2b4dc88)
  • expand: Better handling of dereferences (again) (#9654) (cc0c20d)
  • expand: Correctly handle nested dereferences (#9598) (cfde6d8)
  • Fix if-else alias in mem2reg (#9611) (f404d69)
  • formatter: Don't revert indentation increase after popping it (#9673) (52ded2b)
  • Incorrect max bit size in remove_bit_shifts (#9585) (0b8c415)
  • inlining: Do not inline globals and lower them during ACIR gen (#9626) (f435c93)
  • Make inc/dec_rc impure (#9617) (22b5ebd)
  • Make Ord for slices lexicographic (elements first, then length) (#9555) (f30e342)
  • mem2reg: Assume all function reference parameters have an unknown alias set with nested references (#9632) (d4e3c0f)
  • mem2reg: Consider aliases of a loaded address to be loaded from as well (#9567) (b97ccf5)
  • mem2reg: Mark block parameters with unknown alias sets in presence of nested references (#9629) (6870579)
  • mem2reg: Missing alias from block parameter to its argument (#9640) (b7509f4)
  • mem2reg: Reuse existing expression and add missing alias (#9664) (48327c0)
  • Monomorphize function values as pairs of (constrained, unconstrained) (#9484) (2f33bcc)
  • Revert "feat(mem2reg): address last known value is independent of its… (#9628) (d171555)
  • ssa: Consider shl and shr to have side effects (#9580) (1f16498)
  • ssa: Constant fold Brillig calls using the SSA interpreter (#9655) (d94400f)
  • ssa: Do not simplify on lhs being zero for shifts (#9596) (ef436d0)
  • ssa: Put some default in Value::uninitialized for references in the SSA interpreter (#9603) (36a5064)
  • ssa: Signed shift overflow checks rhs < bit_size (#9685) (a38288a)
  • Validate binary operations which do not allow fields (#9649) (bf662ee)

Miscellaneous Chores

  • Remove verify_signature_slice methods from stdlib (#9597) (8e8ce66)