Skip to content

Commit 9b8b82d

Browse files
committed
Prepared changelog for 0.11
1 parent 99c74f9 commit 9b8b82d

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,37 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515

1616
### Fixed
1717

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
47+
- Accidental `text::ascii::keyword` lifetime regression
48+
1849
# [0.10.1] - 2025-04-13
1950

2051
### Added

0 commit comments

Comments
 (0)