Skip to content

chore(deps): update dependency pyparsing to v3.3.2 - autoclosed#8

Closed
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/pyparsing-3.x
Closed

chore(deps): update dependency pyparsing to v3.3.2 - autoclosed#8
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/pyparsing-3.x

Conversation

@renovate

@renovate renovate Bot commented Jul 19, 2025

Copy link
Copy Markdown

This PR contains the following updates:

Package Change Age Confidence
pyparsing ==3.2.0==3.3.2 age confidence

Release Notes

pyparsing/pyparsing (pyparsing)

v3.3.2

Compare Source

  • Defined pyparsing-specific warning classes so that they can be selectively enabled
    or disabled without affecting warnings raised by other libraries in the same Python
    app:

    • PyparsingWarning - base warning for all pyparsing-specific warnings (inherits
      from UserWarning)
    • PyparsingDeprecationWarning - warning for using deprecated features (inherits
      from PyparsingWarning and DeprecationWarning)
    • PyparsingDiagnosticWarning - warning raised when pyparsing diagnostics are
      enabled and a diagnostic feature is used (inherits from PyparsingWarning)
  • Added as_datetime parse action to pyparsing.common - a more generalized
    version of the convert_to_datetime parse action (supports any expression that extracts
    date/time fields into "year", "month", "day", etc. results names), and validates
    that the parsed fields represent a valid date and time.

  • Added iso8601_date_validated and iso8601_datetime_validated expressions to
    pyparsing.common, which return a Python datetime.datetime

  • Various performance improvements in ParseResults class and core functions, with
    10-20% performance overall.

  • Added regex_inverter web page (using PyScript) to demonstrate using the inv_regex.py
    example.

  • Expanded regex forms handled by the examples/inv_regex.py example:

    • named capturing groups (?P<name>)
    • partial repetition ({m,} and {,n})
    • negated character classes ([^...])
  • Added SPy (Simplified Python) parser to examples.

v3.3.1

Compare Source

  • Added license info to metadata, following PEP-639. Thanks to Gedalia Pasternak and
    Marc Mueller for submitted issue and PR. Fixes #​626.

v3.3.0

Compare Source

===========================================================================================
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

v3.2.5

Compare Source

  • JINX! Well, 3.2.4 had a bug for Word expressions that include a space
    character, if that expression was then copied, either directly with .copy() or
    by adding a results name, or included in another construct (like DelimitedList)
    that makes a copy internally. Issue #​618, reported by mstinberg, among others -
    thanks, and sorry for the inconvenience.

v3.2.4

Compare Source

  • Barring any catastrophic bugs in this release, this will be the last release in
    the 3.2.x line. The next release, 3.3.0, will begin emitting DeprecationWarnings
    when the pre-PEP8 methods are used (see header notes above for more information,
    including available automation for converting any existing code using
    pyparsing with the old names).

  • Fixed bug when using a copy of a Word expression (either by using the explicit
    copy() method, or attaching a results name), and setting a new expression name,
    a raised ParseException still used the original expression name. Also affected
    Regex expressions with as_match or as_group_list = True. Reported by
    Waqas Ilyas, in Issue #​612 - good catch!

  • Fixed type annotation for replace_with, to accept Any type. Fixes Issue #​602,
    reported by esquonk.

  • Added locking around potential race condition in ParserElement.reset_cache, as
    well as other cache-related methods. Fixes Issue #​604, reported by CarlosDescalziIM.

  • Substantial update to docstrings and doc generation in preparation for 3.3.0,
    great effort by FeRD, thanks!

  • Notable addition by FeRD to convert docstring examples to work with doctest! This
    was long overdue, thanks so much!

v3.2.3

Compare Source

  • Fixed bug released in 3.2.2 in which nested_expr could overwrite parse actions
    for defined content, and could truncate list of items within a nested list.
    Fixes Issue #​600, reported by hoxbro and luisglft, with helpful diag logs and
    repro code.

v3.2.2

Compare Source

  • Released cvt_pyparsing_pep8_names.py conversion utility to upgrade pyparsing-based
    programs and libraries that use legacy camelCase names to use the new PEP8-compliant
    snake_case method names. The converter can also be imported into other scripts as

      from pyparsing.tools.cvt_pyparsing_pep8_names import pep8_converter
    
  • Fixed bug in nested_expr where nested contents were stripped of whitespace when
    the default whitespace characters were cleared (raised in this StackOverflow
    question https://stackoverflow.com/questions/79327649 by Ben Alan). Also addressed
    bug in resolving PEP8 compliant argument name and legacy argument name.

  • Fixed bug in rest_of_line and the underlying Regex class, in which matching a
    pattern that could match an empty string (such as ".*" or "[A-Z]*" would not raise
    a ParseException at or beyond the end of the input string. This could cause an
    infinite parsing loop when parsing rest_of_line at the end of the input string.
    Reported by user Kylotan, thanks! (Issue #​593)

  • Enhancements and extra input validation for pyparsing.util.make_compressed_re - see
    usage in examples/complex_chemical_formulas.py and result in the generated railroad
    diagram examples/complex_chemical_formulas_diagram.html. Properly escapes characters
    like "." and "*" that have special meaning in regular expressions.

  • Fixed bug in one_of() to properly escape characters that are regular expression markers
    (such as '*', '+', '?', etc.) before building the internal regex.

  • Better exception message for MatchFirst and Or expressions, showing all alternatives
    rather than just the first one. Fixes Issue #​592, reported by Focke, thanks!

  • Added return type annotation of "-> None" for all __init__() methods, to satisfy
    mypy --strict type checking. PR submitted by FeRD, thank you!

  • Added optional argument show_hidden to create_diagram to show
    elements that are used internally by pyparsing, but are not part of the actual
    parser grammar. For instance, the Tag class can insert values into the parsed
    results but it does not actually parse any input, so by default it is not included
    in a railroad diagram. By calling create_diagram with show_hidden = True,
    these internal elements will be included. (You can see this in the tag_metadata.py
    script in the examples directory.)

  • Fixed bug in number_words.py example. Also added ebnf_number_words.py to demonstrate
    using the ebnf.py EBNF parser generator to build a similar parser directly from
    EBNF.

  • Fixed syntax warning raised in bigquery_view_parser.py, invalid escape sequence "\s".
    Reported by sameer-google, nice catch! (Issue #​598)

  • Added support for Python 3.14.

v3.2.1

Compare Source

  • Updated generated railroad diagrams to make non-terminal elements links to their related
    sub-diagrams. This greatly improves navigation of the diagram, especially for
    large, complex parsers.

  • Simplified railroad diagrams emitted for parsers using infix_notation, by hiding
    lookahead terms. Renamed internally generated expressions for clarity, and improved
    diagramming.

  • Improved performance of cpp_style_comment, c_style_comment, common.fnumber
    and common.ieee_float Regex expressions. PRs submitted by Gabriel Gerlero,
    nice work, thanks!

  • Add missing type annotations to match_only_at_col, replace_with, remove_quotes,
    with_attribute, and with_class. Issue #​585 reported by rafrafrek.

  • Added generated diagrams for many of the examples.

  • Replaced old examples/0README.html file with examples/README.md file.


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 becomes conflicted, 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 changed the title chore(deps): update dependency pyparsing to v3.2.3 chore(deps): update dependency pyparsing to v3.2.4 Sep 14, 2025
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 20cbd95 to 4dbd90e Compare September 14, 2025 18:51
@renovate renovate Bot changed the title chore(deps): update dependency pyparsing to v3.2.4 chore(deps): update dependency pyparsing to v3.2.5 Sep 21, 2025
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 4dbd90e to 089de33 Compare September 21, 2025 07:56
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 089de33 to ab2452d Compare December 16, 2025 08:02
@renovate renovate Bot changed the title chore(deps): update dependency pyparsing to v3.2.5 chore(deps): update dependency pyparsing to v3.3.0 Dec 22, 2025
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from ab2452d to 2b5f0c5 Compare December 22, 2025 16:04
@renovate renovate Bot changed the title chore(deps): update dependency pyparsing to v3.3.0 chore(deps): update dependency pyparsing to v3.3.1 Dec 23, 2025
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 2b5f0c5 to d8f7c82 Compare December 23, 2025 19:38
@renovate renovate Bot changed the title chore(deps): update dependency pyparsing to v3.3.1 chore(deps): update dependency pyparsing to v3.3.2 Jan 21, 2026
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from d8f7c82 to 3d8a529 Compare January 21, 2026 11:15
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 3d8a529 to 5e043b0 Compare February 3, 2026 19:54
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from 5e043b0 to b4a45f7 Compare March 14, 2026 18:04
@renovate renovate Bot force-pushed the renovate/pyparsing-3.x branch from b4a45f7 to af77eed Compare March 31, 2026 07:50
@renovate renovate Bot changed the title chore(deps): update dependency pyparsing to v3.3.2 chore(deps): update dependency pyparsing to v3.3.2 - autoclosed Apr 2, 2026
@renovate renovate Bot closed this Apr 2, 2026
@renovate renovate Bot deleted the renovate/pyparsing-3.x branch April 2, 2026 07:47
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