CHANGELOG
View Sourcev2.0.0 - 2025-03-05
Highlights 🎉
- Core rules are no longer special-cased, they are brought in via parsing and compiling
core.abnf
- hence they can now be transformed, ignored, just like other rules
- Core rules are now all transformed to string format by default
- so when matching
*HEXDIG
on"1A"
, instead of getting[49, 65]
, you get["1", "A"]
- however, performing
List.to_string
on either one gives you the same result -"1A"
- so when matching
- Core rules are defined only when they are not already defined in your abnf
- if they are already defined in your abnf, they will be skipped
- note the way we generate the functions unifies cases, so if you have
char
defined, the core ruleCHAR
will be ignored as well - this also makes it possible to override core rules
v1.3.0 - 2025-01-30
- Add byte mode to generate parsers that work on byte representation instead of text codepoints
v1.2.6 - 2025-01-29
- support utf-8 codepoint sequence
v1.2.5 - 2025-01-29
🐛 Bug Fixes
- Fix core rule HEXDIG to allow lowercase chars
v1.2.4 - 2025-01-28
🐛 Bug Fixes
- Fix nimble parsec deprecation warnings @sax (#82)
v1.2.3 - 2025-01-06
Fixed
- Generate utf8 matcher instead of ascii on num_range (c40c2b9) fix #76
v1.2.1 - 2022-02-05
Fixed
- String concatenation bug caused by case insensitivity implementation
v1.2.0 - 2021-03-17
Changed
Now strings default to be case insensitive
v1.1.0 - 2020-12-28
🚀 Features
- Rfc7405 @guenni68 (#16)
- Adds case-insensitive string matching but haven't switched default to case-insensitive yet
v1.0.0 - 2020-11-03
Not much, just that it's stable enough