Releases: pest-parser/pest
v2.7.10
What's Changed
There was a performance regression in 2.7.9 due to the overhead from tracking for better error details. This is now disabled by default, but if you wish to use it, you can enable it via the pest::set_error_detail(true)
call (before your parsing code starts).
Full Changelog: v2.7.9...v2.7.10
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.9
What's Changed
- fix: do not generate empty docstring for Rule by @sunng87 in #987
- feat: support better error reporting by @EmirVildanov in #965
- Remove unnecessary unsafe functions by @djkoloski in #998
New Contributors
- @djkoloski made their first contribution in #998
Full Changelog: v2.7.8...v2.7.9
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.8
What's Changed
- bump toolchain to be able to install cargo-msrv by @tomtau in #973
- fix: DebuggerContest::load_XXX accepts impl AsRef instead of &PathBuf by @aatifsyed in #976
- ci: bump toolchain for check by @tomtau in #978
- feat: add sql grammar with pratt parser and tests by @EmirVildanov in #983
- fix: adjust tag association in optional and repeat expressions by @tomtau in #985
New Contributors
- @aatifsyed made their first contribution in #976
Full Changelog: v2.7.7...v2.7.8
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.7
What's Changed
- Export generator and docs api in the pest_generator trait by @marcfir in #961
- Add docs to parsing source code by @EmirVildanov in #964
- perf: skipper support inlining by @sssooonnnggg in #969
New Contributors
- @marcfir made their first contribution in #961
- @EmirVildanov made their first contribution in #964
Full Changelog: v2.7.6...v2.7.7
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.6
What's Changed
- perf: use str instead of Cow to reduce Token size by @sssooonnnggg in #958
- bump versions + minor clippy fixes by @tomtau in #959
New Contributors
- @sssooonnnggg made their first contribution in #958
Full Changelog: v2.7.5...v2.7.6
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.5
What's Changed
New Contributors
Full Changelog: v2.7.4...v2.7.5
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.4
What's Changed
- Add clarification to the docs by @DanikVitek in #924
- bump MSRV to 1.61 (due to memchr's MSRV) by @tomtau in #925
- Update pest_derive to generate a list of all rules in Rule::all_rules(). by @davidsantiago in #927
- add a comment to EOL by @tomtau in #926
- ci: fix cargo-msrv installation by @tomtau in #929
New Contributors
- @DanikVitek made their first contribution in #924
- @davidsantiago made their first contribution in #927
Full Changelog: v2.7.3...v2.7.4
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
v2.7.3
What's Changed
- A new stack implementation that should be faster and less space-consuming by @TheVeryDarkness in #905
- small cargo clippy fixes + dependency bumps by @tomtau in #921
Full Changelog: v2.7.2...v2.7.3
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
Restoration of the pest3 work effort
We started a new discussion thread to brainstorm ideas for pest3, both in terms of breaking grammar and API changes. You can check it out here: #885
v2.7.2
What's Changed
- Implement Display for Expr and OptimizedExpr by @TheVeryDarkness in #896
- Update license field following SPDX 2.1 license expression standard by @frisoft in #898
- Add feature gated
Cow
module paths by @veeenu in #900 - propagate non_exhaustive attribute to the generated Rule enums by @tomtau in #901
- docs: fix small typo in
match_range
by @LeoDog896 in #906
New Contributors
- @frisoft made their first contribution in #898
- @veeenu made their first contribution in #900
- @LeoDog896 made their first contribution in #906
Full Changelog: v2.7.1...v2.7.2
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
Restoration of the pest3 work effort
We started a new discussion thread to brainstorm ideas for pest3, both in terms of breaking grammar and API changes. You can check it out here: #885
v2.7.1
What's Changed
- one-or-more rule fix based on #397 by @tomtau in #878
- Make the root a value. by @nathanhammond in #884
- Merging Spans ♻️ by @0nyr in #887
- Implement core::fmt::Display for OptimizedExpr by @TheVeryDarkness in #889
- Adding get_input() to types that already have public as_str() 🏷️ by @0nyr in #890
New Contributors
- @nathanhammond made their first contribution in #884
- @0nyr made their first contribution in #887
- @TheVeryDarkness made their first contribution in #889
Full Changelog: v2.7.0...v2.7.1
Warning: Semantic Versioning
Note that the node tag feature in 2.6.0 was a technically semver-breaking change even though it is a backwards-compatible / non-breaking change in the meta-grammar. There may be similar non-breaking changes to the meta-grammar between minor versions in the future. These non-breaking changes, however, may translate into semver-breaking changes due to the additional variants propagated from the generated Rule
enum.
This new feature caused issues in some Cargo version resolution situations where Cargo mixed different versions of pest dependencies. For this reason, these "grammar non-breaking but semver-breaking" changes are now available only under the "grammar-extras" feature flag. If you would like to use node tags (or other future grammar features), you can do so by enabling this flag on the pest_derive crate in your Cargo.toml:
...
pest_derive = { version = "2.7", features = ["grammar-extras"] }
Restoration of the pest3 work effort
We started a new discussion thread to brainstorm ideas for pest3, both in terms of breaking grammar and API changes. You can check it out here: #885