| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: python313-pyparsing | Distribution: openSUSE Tumbleweed |
| Version: 3.3.2 | Vendor: openSUSE |
| Release: 1.2 | Build date: Mon Jan 26 09:09:46 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 1185293 | Source RPM: python313-pyparsing-3.3.2-1.2.src.rpm |
| Packager: http://bugs.opensuse.org | |
| Url: https://github.com/pyparsing/pyparsing/ | |
| Summary: Grammar Parser Library for Python | |
The pyparsing module is an alternative approach to creating and executing simple grammars, vs. the traditional lex/yacc approach, or the use of regular expressions. The pyparsing module provides a library of classes that client code uses to construct the grammar directly in Python code.
GPL-2.0-or-later AND MIT AND GPL-3.0-or-later
* Mon Jan 26 2026 Dirk Müller <dmueller@suse.com>
- update to 3.3.2:
* 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
* 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.
* 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.
* Deprecated `indentedBlock`, when converted using the
`cvt_pyparsing_pep8_names` utility, will emit `UserWarnings`
that additional code changes will be required.
* Deprecated `locatedExpr`, when converted using the
`cvt_pyparsing_pep8_names` utility, will emit `UserWarnings`
that additional code changes may 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.
* Implemented a TINY language parser/interpreter using
pyparsing, in the `examples/tiny` directory. This is a little
tutorial language that I used to demonstrate how to use pyparsing to
build a simple interpreter, following a recommended
parser+AST+engine+run structure.
* Fixed minor formatting bugs in
`pyparsing.testing.with_line_numbers`, found during
development of the TINY language example.
* Added test in `DelimitedList` and `nested_expr` which auto-
suppress delimiting commas to avoid wrapping in a `Suppress`
if delimiter is already a `Suppress`.
* Wed Nov 26 2025 John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.2.5
* 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.
- from version 3.2.4
* 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!
* Thu Apr 10 2025 Dirk Müller <dmueller@suse.com>
- update to 3.2.3:
* 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.
* 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.
* Fixed bug in `nested_expr` where nested contents were
stripped of whitespace when the default whitespace characters
were cleared
* 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.
* Fixed syntax warning raised in `bigquery_view_parser.py`,
invalid escape sequence "\s".
* Added support for Python 3.14.
* Tue Feb 04 2025 Dirk Müller <dmueller@suse.com>
- update to 3.2.1:
* 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.
* Add missing type annotations to `match_only_at_col`,
`replace_with`, `remove_quotes`, `with_attribute`, and
`with_class`. Issue #585 reported by rafrafrek.
* Mon Oct 28 2024 Dirk Müller <dmueller@suse.com>
- update to 3.2.0:
* Discontinued support for Python 3.6, 3.7, and 3.8. Adopted
new Python features from Python versions 3.7-3.9:
- Updated type annotations to use built-in container types
instead of names imported from the `typing` module
(e.g., `list[str]` vs `List[str]`).
- Reworked portions of the packrat cache to leverage
insertion-preserving ordering in dicts (including removal of
uses of `OrderedDict`).
- Changed `pdb.set_trace()` call in `ParserElement.set_break()`
to `breakpoint()`.
- Converted `typing.NamedTuple` to `dataclasses.dataclass`
in railroad diagramming code.
- Added `from __future__ import annotations` to clean up
some type annotations.
* Sat Aug 31 2024 Dirk Müller <dmueller@suse.com>
- update to 3.1.4:
* Fix to type annotation that referenced `re.Pattern`. Since
this type was introduced in Python 3.7, using this type
definition broke Python 3.6 installs of pyparsing.
* Added new `Tag` ParserElement, for inserting metadata into
the parsed results.
This allows a parser to add metadata or annotations to the
parsed tokens.
* The `Tag` element also accepts an optional `value`
parameter, defaulting to `True`.
See the new `tag_metadata.py` example in the `examples`
directory.
* Fixed issue where PEP8 compatibility names for
`ParserElement` static methods were
not themselves defined as `staticmethods`. When called
using a `ParserElement` instance, this resulted in a
`TypeError` exception.
* To address a compatibility issue in RDFLib, added a property
setter for the `ParserElement.name` property, to call
`ParserElement.set_name`.
* Modified `ParserElement.set_name()` to accept a None value,
to clear the defined name and corresponding error message for
a `ParserElement`.
* Updated railroad diagram generation for `ZeroOrMore` and
`OneOrMore` expressions with `stop_on` expressions, while
investigating #558
* Added exception type to `trace_parse_action` exception
output, while investigating SO question posted by medihack.
* Added `set_name` calls to internal expressions generated in
`infix_notation`, for improved railroad diagramming.
* Fixed bug (and corresponding test code) in `delta_time`
example that did not handle weekday references in time
expressions
* Minor performance speedup in `trim_arity`, to benefit any
parsers using parse actions.
* Added early testing support for Python 3.13 with JIT enabled.
* Sat Mar 16 2024 Dirk Müller <dmueller@suse.com>
- update to 3.1.2:
* Added `ieee_float` expression to `pyparsing.common`, which
parses float values, plus "NaN", "Inf", "Infinity".
* Updated pep8 synonym wrappers for better type checking
compatibility.
* Fixed empty error message bug, PR submitted by InSync (#534).
This _should_ return
pyparsing's exception messages to a former, more helpful
form. If you have code that
parses the exception messages returned by pyparsing, this
may require some code changes.
* Some code refactoring to reduce code nesting, PRs submitted
by InSync.
* All internal string expressions using '%' string
interpolation and `str.format()` converted to f-strings.
* Fri Feb 23 2024 Dominique Leuenberger <dimstar@opensuse.org>
- Use newly supported shrink{} on OBS to exclude python flavors
will all python versions skipped.
* Fri Dec 01 2023 Dirk Müller <dmueller@suse.com>
- update to 3.1.1:
* Fixed regression in Word(min), reported by Ricardo Coccioli,
good catch!
* Fixed bug in bad exception messages raised by Forward
* Fixed regression in SkipTo, where ignored expressions were
not checked when looking for the target expression.
* Fixed type annotation for enable_packrat
* Some general internal code cleanup
- drop limit-error-messages.patch (upstream)
* Tue Jul 11 2023 Markéta Machová <mmachova@suse.com>
- Add upstream patch limit-error-messages.patch as a part of
a workaround for boo#1213007
* Sat Jul 01 2023 Markéta Machová <mmachova@suse.com>
- update to 3.1.0
* API ENHANCEMENT: `Optional(expr)` may now be written as `expr | ""`
* Added new class property `identifier` to all Unicode set classes in
`pyparsing.unicode`, using the class's values for `cls.identchars`
and `cls.identbodychars`.
* ParseResults` now has a new method `deepcopy()`, in addition to the
current `copy()` method.
* Reworked `delimited_list` function into the new `DelimitedList` class.
* Added new class method `ParserElement.using_each`
* Added new builtin `python_quoted_string`, which will match any form
of single-line or multiline quoted strings defined in Python.
* `ParserElement.validate()` is deprecated.
* Added bool `embed` argument to `ParserElement.create_diagram()`.
* Added support for Python 3.12.
* Updated `create_diagram()` code to be compatible with
railroad-diagrams package version 3.0.
* Many other changes, see upstream CHANGES
* Fri Apr 21 2023 Dirk Müller <dmueller@suse.com>
- add sle15_python_module_pythons (jsc#PED-68)
* Thu Apr 13 2023 Matej Cepl <mcepl@suse.com>
- Make calling of %{sle15modernpython} optional.
* Fri Feb 17 2023 Dirk Müller <dmueller@suse.com>
- do primary/all split only for tumbleweed (similar to flit-core)
/usr/lib/python3.13/site-packages/pyparsing /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/INSTALLER /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/METADATA /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/RECORD /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/REQUESTED /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/WHEEL /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/licenses /usr/lib/python3.13/site-packages/pyparsing-3.3.2.dist-info/licenses/LICENSE /usr/lib/python3.13/site-packages/pyparsing/__init__.py /usr/lib/python3.13/site-packages/pyparsing/__pycache__ /usr/lib/python3.13/site-packages/pyparsing/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/actions.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/common.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/core.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/exceptions.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/helpers.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/results.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/testing.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/unicode.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/util.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/__pycache__/warnings.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/actions.py /usr/lib/python3.13/site-packages/pyparsing/ai /usr/lib/python3.13/site-packages/pyparsing/ai/__init__.py /usr/lib/python3.13/site-packages/pyparsing/ai/__pycache__ /usr/lib/python3.13/site-packages/pyparsing/ai/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/ai/best_practices.md /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices/__init__.py /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices/__main__.py /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices/__pycache__ /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/ai/show_best_practices/__pycache__/__main__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/common.py /usr/lib/python3.13/site-packages/pyparsing/core.py /usr/lib/python3.13/site-packages/pyparsing/diagram /usr/lib/python3.13/site-packages/pyparsing/diagram/__init__.py /usr/lib/python3.13/site-packages/pyparsing/diagram/__pycache__ /usr/lib/python3.13/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/exceptions.py /usr/lib/python3.13/site-packages/pyparsing/helpers.py /usr/lib/python3.13/site-packages/pyparsing/py.typed /usr/lib/python3.13/site-packages/pyparsing/results.py /usr/lib/python3.13/site-packages/pyparsing/testing.py /usr/lib/python3.13/site-packages/pyparsing/tools /usr/lib/python3.13/site-packages/pyparsing/tools/__init__.py /usr/lib/python3.13/site-packages/pyparsing/tools/__pycache__ /usr/lib/python3.13/site-packages/pyparsing/tools/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/tools/__pycache__/cvt_pyparsing_pep8_names.cpython-313.pyc /usr/lib/python3.13/site-packages/pyparsing/tools/cvt_pyparsing_pep8_names.py /usr/lib/python3.13/site-packages/pyparsing/unicode.py /usr/lib/python3.13/site-packages/pyparsing/util.py /usr/lib/python3.13/site-packages/pyparsing/warnings.py /usr/share/doc/packages/python313-pyparsing /usr/share/doc/packages/python313-pyparsing/CHANGES /usr/share/doc/packages/python313-pyparsing/README.rst /usr/share/licenses/python313-pyparsing /usr/share/licenses/python313-pyparsing/LICENSE
Generated by rpm2html 1.8.1
Fabrice Bellet, Thu Mar 5 23:10:09 2026