Bump pest_derive from 2.7.14 to 2.8.0
Bumps pest_derive from 2.7.14 to 2.8.0.
Release notes
Sourced from pest_derive's releases.
v2.8.0
What's Changed
- debugger: add long versions of the commands as well as all of their prefixes by
@alpaylanin pest-parser/pest#1062- Debugger: Fix deadlock on Windows by
@zaddachin pest-parser/pest#1072- Debugger: Fix command parsing on the debugger prompt by
@zaddachin pest-parser/pest#1074- Debugger: Allow specification of several breakpoints from cmdline args by
@zaddachin pest-parser/pest#1075- debugger: fixed cli-parsing of id command by
@Giftzwerg02in pest-parser/pest#1089- rm some compiler warnings by
@yshavitin pest-parser/pest#1093- new rule: PUSH_LITERAL by
@yshavitin pest-parser/pest#1092A new rule
PUSH_LITERAL(...).
PUSH_LITERAL("a"): This rule always matches and never consumes any input, and it pushes"a"to the stack. The argument must be a literal.[!note] You need to enable the
"grammar-extras"feature as mentioned in the semantic versioning notes below in order to use this feature.This new rule accomplishes the goals of pest-parser/pest#880 (in a slightly different way). Instead of
PUSH_OTHER("-", " "), this is justPUSH_LITERAL(" "). If you wanted to match A and then push B, you just combine them via a sequence:"-" ~ PUSH_LITERAL(" ").This can be used to generalize quoted strings to a pair of matching but non-equal delimiters. For example, many programming languages let you express strings using either double or single quotes, and don't require escaping of the other:
string = ${ PUSH( "\"" | "'") ~ quoted_char* ~ POP } quoted_char = @{!PEEK ~ ANY } // simple version without escape sequences// will parse "a'b" or 'a"b'
This happens to work because the starting and ending char are the same, but that's not always desirable. For example, we may want to allow strings to be delimited by either
(...)or<...>, with similar rules as above, such that(a>)and<a)>are both valid.With
PUSH_LITERAL, this becomes:string = ${ quote_open ~ quoted_char* ~ POP } quote_open = @{ ( "(" ~ PUSH_LITERAL(")") ) | ( "<" ~ PUSH_LITERAL(">") ) } quoted_char = @{!PEEK ~ ANY } // simple version without escape sequencesNew Contributors
@alpaylanmade their first contribution in pest-parser/pest#1062@zaddachmade their first contribution in pest-parser/pest#1072@Giftzwerg02made their first contribution in pest-parser/pest#1089@yshavitmade their first contribution in pest-parser/pest#1093Full Changelog: https://github.com/pest-parser/pest/compare/v2.7.15...v2.8.0
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
Ruleenum.
... (truncated)
Commits
111e779bump version to 2.8.0 (#1094)2b30b8dnew rule: PUSH_LITERAL (#1092)61f1ebcrm some compiler warnings (#1093)17a7fa0fixed cli-parsing of id <text-input> command (#1089)7a809ddbump toolchain in semver check (#1091)b1869d5bump toolchain (#1090)a13c05ccheck if a crate version was already published (#1078)eca1f1cDebugger: Allow specification of several breakpoints from cmdline args (#1075)f2f4310fix CIFuzz action (#1077)8ea0c31Debugger: Fix command parsing on the debugger prompt (#1074)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)