1.0.0-beta.9 (2025-07-23)
⚠ BREAKING CHANGES
- enforce visibility warnings as errors (#7657)
Features
- Add
compiler_unstable_features
to Nargo.toml
(#9219) (87aeccf)
- Add better handling for follow-on optimizations in
simplify_cfg
(#9276) (d2a51b6)
- Allow paths in l-values (#9254) (de53652)
- fuzz: Generate Match expressions and statements (#9108) (49c49ce)
- Only inject "out of bounds" checks in brillig (#9200) (60222bb)
- Optimize "out of bounds" checks on arrays with lengths which are powers of two (#9182) (6b2efe0)
- Optimize array reads from length 1 arrays (#9203) (e7a98f2)
- ssa_fuzzer: Functions (#9088) (3f0aba0)
- ssa: Following an always failing binary, replace instructions with defaults until the next predicate (#9211) (e294e66)
Bug Fixes
- acir_gen: Bail out of
handle_constant_index
when it encounters DynamicArray
(#9259) (ed32998)
- acir-gen: Do not generate ACIR array opcodes when the length is zero (#9195) (11d86ef)
- acir-gen: Do not use array storage size for 0-length check (#9208) (ffb63c3)
- Allow unquote in numeric generic intro (#9213) (d867e35)
- Bind self when type-checking AsTraitPath (#9236) (c30f8ef)
- Cast values before inserting them in the databus (#8918) (1c7c6f2)
- Check associated types after validating where clause when looking up trait impls, plus some unification fixes (#9265) (6cb4347)
- Comptime code not mutating shared ref to struct field (#9250) (3bec934)
- Disallow
_
in signatures and struct members (#9301) (ee66c98)
- Disallow trait associated constants to have a default value (#9172) (71f57a2)
- fuzz:
Value::snapshot
needs to be recursive (#9215) (e5c6d5d)
- fuzz: Avoid suffixing slice length modulo blocks with an index access (#9177) (9efc476)
- fuzz: Ignore
-0
vs 0
in parsing roundtrip (#9222) (2cf083e)
- fuzz: Use scoping for variable dynamism (#9233) (c7ce62a)
- Handle MakeArray values in DIE for finding mutated array types (#9176) (fc79564)
- licm: Ensure that all nested loops the current block is part of are guaranteed to execute (#9249) (566de3f)
- Parse AsTraitPath in type expressions (#9258) (127c4d1)
- ssa_fuzzer: Fix panic if compiler removed return value (#9216) (e6ccc3e)
- ssa: Change constraint message to "multiply" (#9230) (8797651)
- ssa: Do not unroll loops with a constant back-edge value (#9173) (fe44a1e)
- SSA: Validate MakeArray instruction (#9183) (366149f)
- Suggest traits via visible reexports if they are not directly visible (#9242) (1719bc3)
- Use
u32
in RepeatedValue
example in generics docs (#9273) (3c18e33)
Miscellaneous Chores