This release contains a significant rewrite to simplify the internal handling of the input stream. This improves reliability, efficiency, and will allow further extension in the future. As a consequence, the internal API for streams has changed. The handling of memoization and offside (whitespace significant) parsing has also been modified to address issues found while testing the new streams. Finally, it is now possible to use LEPL to parse documents larger than the available memory.
This release adds a minor bugfix for SOL and EOL matchers, used to
explicitly match the start- and end-of-line markers when line-aware
parsing is enabled.
Fixes were made to LineAwareAlphabet, which improve the use of matchers within tokens when using offside parsing. A new example of offside parsing has been added to the documentation.
This release adds a new module for validating email addresses, HTTP URLs, and "mailto" URLs, following the recommendations in RFC 3696. The internal rewriting logic, which compiles parts of the parser to regular expressions for speed, has been improved.