17
0

4 Commits

Author SHA256 Message Date
d9604946ae Accepting request 1329156 from devel:languages:python
- 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

OBS-URL: https://build.opensuse.org/request/show/1329156
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=55
2026-01-27 15:06:42 +00:00
a72dfa69ee - 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

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=115
2026-01-26 08:13:02 +00:00
416f8b0fab Accepting request 1320161 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1320161
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=54
2025-11-27 14:17:49 +00:00
759831016e - 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!

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=113
2025-11-26 11:27:44 +00:00
4 changed files with 92 additions and 5 deletions

Binary file not shown.

3
pyparsing-3.3.2.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc
size 6851574

View File

@@ -1,3 +1,90 @@
-------------------------------------------------------------------
Mon Jan 26 08:09:46 UTC 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 10:48:14 UTC 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 17:09:14 UTC 2025 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-pyparsing
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -56,7 +56,7 @@ ExclusiveArch: do-not-build
%endif
%{?sle15_python_module_pythons}
Name: %{pprefix}-pyparsing%{?psuffix}
Version: 3.2.3
Version: 3.3.2
Release: 0
Summary: Grammar Parser Library for Python
License: GPL-2.0-or-later AND MIT AND GPL-3.0-or-later