-
Complete overhaul of documentation. Now using sphinx to generate API docs from docstrings. (commit 0664cbd. Thank you @chsasank !)
- Many improvements and additions to documentation
-
New and friendlier Earley SPPF interface! (commit 555b268. Thank you @chanicpanic !)
-
Added the
ambiguity='forest'
option. AddedForestTransformer
andTreeForestTranformer
. -
Various Bugfixes to improve the handling of ambiguous results.
-
Read the docs here: https://lark-parser.readthedocs.io/en/latest/forest.html
-
-
New Vim syntax highlighting for Lark (https://github.com/lark-parser/vim-lark-syntax Thank you @omega16 !)
-
Lark now loads faster from cache (commit 7dc0017)
-
Terminals can now be composed of regexps and strings with different flags, if using Python 3.6+ (commit e6fc3c9)
-
Added support for parsing byte-strings, with the
use_bytes
flag (commit 9ee8428). -
UnexpectedToken
exception now has theaccepts
attribute, which contains a list of terminals that would be accepted by the parser instead (in addition to theexpects
attribute, which is guided by the lexer and may include terminals that won't be accepted by the parser) (commit a7bcd0b) -
Allow multiline regexes with the
x
flag (commit 9923987) -
Lark no longer uses the default logger. Instead uses
lark.LOGGER
. (commit 7010f96) -
Lark now notifies on unused terminals/rules through
logging.debug
. -
Standalone generator now creates smaller files (without comments and docstrings). Also undergone various fixes. (commit bf2d9bf)
-
Wheel distribution due to (somewhat) popular demand.
-
Lots of small bugfixes and improvements!
Many thanks to @MegaIng for his continued work on many of these new features and fixes, and to everyone else who contributed to Lark and helped make it even better.