Skip to content

0.2.0

Compare
Choose a tag to compare
@mincrmatt12 mincrmatt12 released this 15 Jun 00:59
· 240 commits to master since this release

This is a feature release which adds hooks and a few miscellaneous features.

New Features

  • Hooks:
    • Parsers can now call arbitrary callbacks at arbitrary points like macros
    • These hooks get a pointer to the current state and input character
    • In the future, these may be used for things like buffering large outputs
  • Append-character expressions
    • Append expressions can now add individual character codes from a math expression
    • e.g: out_var += [$last - 3];

Bugs Fixed

  • Case labels with inverted character classes (or non-erroring Else transitions) would accept too few inputs
  • Macros with more than one statement would be truncated
  • Custom Else transitions were not properly dealt with by the ambiguous detection logic and so a variety of things involving wildcards would fail in strange ways.

Infrastructure Changes

  • NMFU now has a test suite, install the necessary dependencies with the tests extra and run with pytest
  • NMFU now has CI, see the badge in the README
  • NMFU can now build as a snap