You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+31Lines changed: 31 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,37 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
15
15
16
16
### Fixed
17
17
18
+
# [0.11.0] - 2025-09-11
19
+
20
+
### Added
21
+
22
+
- The `set(...)` combinator, which may be used to conveniently parse a set of patterns, in any order
23
+
- Support for non-associative infix operators are now supported by the `.pratt(...)` combinator
24
+
-`Parser::try_foldl`, allowing folding operations to short-circuit in a manner similar to `Parser::try_map`
25
+
-`Parser::contextual`, which allows a parser to be disabled or enabled in a context-sensitive manner
26
+
- Implemented `ValueInput` for `IterInput`, which was previously missing
27
+
- More types that implement the `State` trait:
28
+
-`RollbackState`, which reverts parser state when a parser rewinds and may be used to, for example, count the number of times a pattern appears in the input
29
+
-`TruncateState`, which truncates a vector when a parser rewinds, and may be used to implement an arena allocator for AST nodes
30
+
- Implemented `IterParser` for `a.then(b)` when both `a` and `b` are both `IterParser`s that produce the same output type
31
+
32
+
### Changed
33
+
34
+
- Made lifetime bounds on `recursive` and `ParserExtra` more permissive
35
+
- Improved support for grapheme parsing
36
+
- Text parsers now report labels
37
+
-`Parser::filter` now generates a `DefaultExpected::SomethingElse` label instead of nothing (this can be overridden with the `.labelled(...)` function)
38
+
- Improved areas of documentation
39
+
- Make whitespace parsers reject codepoints that are vulnerable to [CVE-2021-42574](https://www.cve.org/CVERecord?id=CVE-2021-42574)
40
+
- Maybe the `select!` parser more permissive, accepting any implementor of `Input` instead of requiring `ValueInput` too
41
+
42
+
### Fixed
43
+
44
+
- Many minor incorrect debug-only sanity checks have been fixed
45
+
- Many minor span and error prioritisation behavioural problems have been fixed (most notably, `Parser::try_map`)
46
+
- The `.rewind()` parser no longer rewinds any secondary error that were encountered
0 commit comments