Skip to content

build(deps-dev): update pyparsing requirement from <3.3.0,>=3.1.1 to >=3.1.1,<3.4.0#1200

Open
dependabot[bot] wants to merge 16 commits into
devfrom
dependabot/pip/pyparsing-gte-3.1.1-and-lt-3.4.0
Open

build(deps-dev): update pyparsing requirement from <3.3.0,>=3.1.1 to >=3.1.1,<3.4.0#1200
dependabot[bot] wants to merge 16 commits into
devfrom
dependabot/pip/pyparsing-gte-3.1.1-and-lt-3.4.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Mar 2, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on pyparsing to permit the latest version.

Changelog

Sourced from pyparsing's changelog.

Version 3.3.0 - December, 2025

=========================================================================================== The version 3.3.0 release will begin emitting DeprecationWarnings for pyparsing methods that have been renamed to PEP8-compliant names (introduced in pyparsing 3.0.0, in August, 2021, with legacy names retained as aliases). In preparation, I added in pyparsing 3.2.2 a utility for finding and replacing the legacy method names with the new names. This utility is located at pyparsing/tools/cvt_pep8_names.py. This script will scan all Python files specified on the command line, and if the -u option is selected, will replace all occurrences of the old method names with the new PEP8-compliant names, updating the files in place.

Here is an example that converts all the files in the pyparsing /examples directory:

  python -m pyparsing.tools.cvt_pyparsing_pep8_names -u examples/*.py

The new names are compatible with pyparsing versions 3.0.0 and later.

  • Deprecated indentedBlock, when converted using the cvt_pyparsing_pep8_names utility, will emit UserWarnings that additional code changes will be required. This is because the new IndentedBlock class no longer requires the calling code to supply an indent stack, while adding support for nested indentation levels and grouping.

  • Deprecated locatedExpr, when converted using the cvt_pyparsing_pep8_names utility, will emit UserWarnings that additional code changes may be required. The new Located class removes the extra grouping level of the parsed values. (If the original locatedExpr parser was defined with a results name, then the extra grouping is retained, so that the results name nesting works properly; in this case, no code changes would be required.)

  • Updated all examples and test cases to use PEP8 names (unless the test case is specifically designed to test behavior of a legacy method). Added railroad diagrams for some examples.

  • Added exception handling when calling formatted_message(), so that str(exception) always returns at least something.

  • All unit tests pass with Python 3.14, including 3.14t. This does not necessarily mean that pyparsing is now thread-safe, just that when run in the free-threaded interpreter, there were no errors. None of the unit tests try to do any parsing with multiple threads - they test the basic functionality of the library, under various versions of packrat and left-recursive parsing.

  • Added AI instructions so that AI agents can be prompted with best practices for generating parsers using pyparsing code. These instructions are in the ai/best_practices.md file, and can be accessed programmatically by calling pyparsing.show_best_practices() or running python -m pyparsing.ai.show_best_practices from the command line, after installing the pyparsing package.

... (truncated)

Commits
  • e4895d3 Reduced recursive grammar in tiny_parser.py to avoid
  • b6b0111 Blackening before releasing
  • 7fbbcbd Revert transform_string perf penalty in _flatten (introduced in 3.2.0b2)
  • 336647a Update perf scripts to run additional 3.2.x releases
  • 6413afc Prep for 3.3.0 release
  • 9223660 Added copyright line to LICENSE file
  • 92d8368 Remove obsolete comment
  • 6de7bfe Less messy exception report from tiny_run
  • e39932c TINY code and examples cleanup; update TINY parser diagrams
  • 70feefd Slightly nicer detection of primes in prime_numbers.tiny, makes it easier to ...
  • Additional commits viewable in compare view

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will 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 version will 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 dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Mar 2, 2026
@dependabot dependabot Bot force-pushed the dependabot/pip/pyparsing-gte-3.1.1-and-lt-3.4.0 branch from 6725021 to b089b74 Compare March 9, 2026 09:07
@dependabot dependabot Bot force-pushed the dependabot/pip/pyparsing-gte-3.1.1-and-lt-3.4.0 branch from b089b74 to d6644f2 Compare March 18, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants