#import "utils.typ": *

= Breaking changes <breaking-changes>
- Removed support for iterating over index and value in @reference:scripting:loops[for loops]. This is now handled via unpacking and enumerating. Same goes for the @array.map[`map`] method.
- @dictionary[Dictionaries] now iterate in insertion order instead of alphabetical order.

= New features <new-features>
- Added @reference:scripting:bindings[unpacking syntax] for let bindings, which allows things like `{let (1, 2) = array}`
- Added @array.enumerate[`enumerate`] method
- Added `path` function for drawing Bézier paths
- Added @layout function to access the size of the surrounding page or container
- Added `key` parameter to @array.sorted[`sorted`] method

= Command line interface <command-line-interface>
- Fixed `--open` flag blocking the program
- New Computer Modern font is now embedded into the binary
- Shell completions and man pages can now be generated by setting the `GEN_ARTIFACTS` environment variable to a target directory and then building Typst

= Miscellaneous improvements <miscellaneous-improvements>
- Fixed page numbering in outline
- Added basic i18n for a few more languages (AR, NB, CS, NN, PL, SL, ES, UA, VI)
- Added a few numbering patterns (Ihora, Chinese)
- Added `sinc` @math.op[operator]
- Fixed bug where math could not be hidden with @hide
- Fixed sizing issues with box, block, and shapes
- Fixed some translations
- Fixed inversion of "R" in @math.cal[`cal`] and @math.frak[`frak`] styles
- Fixed some styling issues in math
- Fixed supplements of references to headings
- Fixed syntax highlighting of identifiers in certain scenarios
- @ratio[Ratios] can now be multiplied with more types and be converted to @float[floats] with the @float function
