Skip to content

chore(deps): update rust crate lalrpop to 0.23.0#111

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/lalrpop-0.x
Open

chore(deps): update rust crate lalrpop to 0.23.0#111
renovate[bot] wants to merge 1 commit intomainfrom
renovate/lalrpop-0.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Aug 27, 2024

This PR contains the following updates:

Package Type Update Change
lalrpop build-dependencies minor 0.20.10.23.0

Release Notes

lalrpop/lalrpop (lalrpop)

v0.23.1

Compare Source

Bigfixes
  • Fix bug where windows paths were used based on target OS rather than host OS,
    breaking cross compile scenarios

v0.23.0

Compare Source

Breaking Changes
  • Lalrpop no longer exposes a regex-automata feature. This feature was
    previously exposed accidentally and did not change lalrpop functionality.
  • Make the lexer feature a default feature for lalrpop-util. In older
    versions of rust, lalrpop-util would automatically use the lexer feature
    when lalrpop did, but that is no longer the case, so this change keeps the
    common case as the default. If you're using a custom lexer, you'll need
    to make sure to disable default-features for both lalrpop and lalrpop-util.
  • Configuration.set_in_dir() can now no longer affect the output dir. In
    certain configurations, setting in_dir using set_in_dir() could actually
    cause the generated parser to be put in the input directory rather than in
    OUT_DIR. In most cases OUT_DIR may be what you want anyways and should
    work seamlessly. If you want to preserve the existing behavior of writing
    to the source directory, you should do that explicitly with set_out_dir()
    (or use_cargo_dir_conventions())
  • Configuration.set_in_dir() is now incompatible with process_current_dir(),
    and process_dir() , because all of these functions set an input directory
    themselves (either the current directory, or the argument). Previously,
    these functions would all silently ignore the set_in_dir() setting, except
    possibly to change the output directory as mentioned above. Now these
    functions are incompatible. If you get an error about this, remove
    set_in_dir() from your Configuration, or use it with process(). You may
    also need to change your output directory as mentioned in the previous bullet.
Features
  • lalrpop_util::ParseError now implements the Hash trait
  • Support expanding multiple anonymous format arguments in the same pattern
    (e.g. <A> <B> => format!("<> <>")). It is an error if the number of format
    strings in the pattern do not match the number in the action code.
  • Support binding tuple patterns in grammar. This syntactic sugar can make
    dealing with nonterminal definitions that return multiple values easier.
Changes
  • Bump MSRV to 1.85
  • Update to the 2024 rust edition
Internal Development features
  • Support running tests with cargo-nextest.
  • Support running benchmarks on both lalrpop build time and generated parsers
    using cargo bench
Bugfixes
  • Documentation updates
  • When using a custom lexer, the Location type previously required the Copy
    trait, which was undocumented and unintentional. This requirement has been
    dropped.
  • If looking for a .lalrpop file in a directory that no longer exists, lalrpop
    no longer creates the missing directory.

v0.22.2

Compare Source

Features
  • Support \0 and \x## ASCII escape sequences in grammars
  • Documentation updates
Bugfixes
  • Avoid clippy warnings for uninlined format strings in generated code

v0.22.1

Compare Source

Bugfixes
  • Many documentation updates.
  • Internal cleanups and testsuite enhancements.
  • Isolate a few clippy lint allows more tightly to generated code so that these
    lints can trigger on action code.
  • Bump some dependency versions

v0.22.0

Compare Source

Breaking changes
  • The lexer feature no longer implies the std feature. Now lexer is
    usable in no_std environments. In no_std, ParseError only implements the
    Error trait in rust 1.81 or later (since core::error was stablized in 1.81).
Features
  • Overhaul cfg attributes. You can now include or omit grammar rules and
    alternatives based on cargo features with not(), any() and all() support
Bugfixes
  • Improvements to error message reporting to improve clarity and suppress extra noise
  • lalrpop_mod!() now handles imports correctly
  • Reenable some warnings on user code for custom lexers

v0.21.0

Compare Source

Since the last release, a fair number of the commits have been focused on cleaning
up and improving LALRPOP's documentation. Shout out to Yudai Takada, George
White, and Dinu Blanovschi.

Features
  • LALRPOP now throws an error in more cases where it would previously just write
    out an error message and exit.
  • lalrpop::process_src is now the recommended function to use in build.rs
    files. Previously the documentation incorrectly suggested that
    lalrpop::process_root looked in ./src instead of .
Bugfixes
  • A long-standing bug where LALRPOP would throw a "no entry found for key"
    exception when trying to handle certain grammars has been resolved.
  • LALRPOP will stop expanding macros infinitely during build time via a new
    macro_expansion_limit.
Compatibility note

Adding a limit to the number of times that LALRPOP will attempt to expand a
macro is technically a breaking change. However, the default limit of 200
should be more than enough for the grammars we are currently aware of (which
almost always need a limit of less than 5). This limit is customizable via Configuration::set_macro_expansion_limit.

If you have a grammar that uses a significant amount of macro expansion steps,
we would be very interested in a PR that adds it to the test suite.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from thetayloredman as a code owner August 27, 2024 01:22
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from e971d49 to 327694a Compare August 27, 2024 17:53
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 327694a to 2fdb77a Compare October 2, 2024 16:29
@renovate renovate bot changed the title chore(deps): update rust crate lalrpop to 0.21.0 chore(deps): update rust crate lalrpop to 0.22.0 Oct 2, 2024
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 2fdb77a to d8b5631 Compare August 10, 2025 12:30
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from d8b5631 to c5c56ef Compare September 25, 2025 16:15
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from c5c56ef to 547346c Compare December 10, 2025 15:49
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 547346c to 755cc38 Compare February 2, 2026 20:46
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 755cc38 to 232984f Compare February 12, 2026 23:15
@renovate renovate bot changed the title chore(deps): update rust crate lalrpop to 0.22.0 chore(deps): update rust crate lalrpop to 0.23.0 Feb 12, 2026
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 232984f to 4f3677c Compare February 25, 2026 13:07
@renovate renovate bot force-pushed the renovate/lalrpop-0.x branch from 4f3677c to 4ea469b Compare March 11, 2026 13:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants