pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/py-pyparsing py-pyparsing: updated to 3.0.4



details:   https://anonhg.NetBSD.org/pkgsrc/rev/4861a5368208
branches:  trunk
changeset: 768850:4861a5368208
user:      adam <adam%pkgsrc.org@localhost>
date:      Tue Nov 02 06:13:46 2021 +0000

description:
py-pyparsing: updated to 3.0.4

Version 3.0.4 -
---------------
- Fixed bug in which `Dict` classes did not correctly return tokens as nested
  `ParseResults`, reported by and fix identified by Bu Sun Kim, many thanks!!!

- Documented API-changing side-effect of converting `ParseResults` to use `__slots__`
  to pre-define instance attributes. This means that code written like this (which
  was allowed in pyparsing 2.4.7):

    result = Word(alphas).parseString("abc")
    result.xyz = 100

  now raises this Python exception:

    AttributeError: 'ParseResults' object has no attribute 'xyz'

  To add new attribute values to ParseResults object in 3.0.0 and later, you must
  assign them using indexed notation:

    result["xyz"] = 100

  You will still be able to access this new value as an attribute or as an
  indexed item.

- Fixed bug in railroad diagramming where the vertical limit would count all
  expressions in a group, not just those that would create visible railroad
  elements.


Version 3.0.3 -
---------------
- Fixed regex typo in `one_of` fix for `as_keyword=True`.

- Fixed a whitespace-skipping bug, Issue 319, introduced as part of the revert
  of the `LineStart` changes. Reported by Marc-Alexandre Côté,
  thanks!

- Added header column labeling > 100 in `with_line_numbers` - some input lines
  are longer than others.


Version 3.0.2 -
---------------
- Reverted change in behavior with `LineStart` and `StringStart`, which changed the
  interpretation of when and how `LineStart` and `StringStart` should match when
  a line starts with spaces. In 3.0.0, the `xxxStart` expressions were not
  really treated like expressions in their own right, but as modifiers to the
  following expression when used like `LineStart() + expr`, so that if there
  were whitespace on the line before `expr` (which would match in versions prior
  to 3.0.0), the match would fail.

  3.0.0 implemented this by automatically promoting `LineStart() + expr` to
  `AtLineStart(expr)`, which broke existing parsers that did not expect `expr` to
  necessarily be right at the start of the line, but only be the first token
  found on the line. This was reported as a regression in Issue 317.

  In 3.0.2, pyparsing reverts to the previous behavior, but will retain the new
  `AtLineStart` and `AtStringStart` expression classes, so that parsers can chose
  whichever behavior applies in their specific instance. Specifically:

      # matches expr if it is the first token on the line
      # (allows for leading whitespace)
      LineStart() + expr

      # matches only if expr is found in column 1
      AtLineStart(expr)

- Performance enhancement to `one_of` to always generate an internal `Regex`,
  even if `caseless` or `as_keyword` args are given as `True` (unless explicitly
  disabled by passing `use_regex=False`).

- `IndentedBlock` class now works with `recursive` flag. By default, the
  results parsed by an `IndentedBlock` are grouped. This can be disabled by constructing
  the `IndentedBlock` with `grouped=False`.


Version 3.0.1 -
---------------
- Fixed bug where `Word(max=n)` did not match word groups less than length 'n'.
  Thanks to Joachim Metz for catching this!

- Fixed bug where `ParseResults` accidentally created recursive contents.
  Joachim Metz on this one also!

- Fixed bug where `warn_on_multiple_string_args_to_oneof` warning is raised
  even when not enabled.

diffstat:

 devel/py-pyparsing/Makefile |  4 ++--
 devel/py-pyparsing/distinfo |  8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diffs (25 lines):

diff -r 58dc50e90034 -r 4861a5368208 devel/py-pyparsing/Makefile
--- a/devel/py-pyparsing/Makefile       Tue Nov 02 02:21:16 2021 +0000
+++ b/devel/py-pyparsing/Makefile       Tue Nov 02 06:13:46 2021 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.21 2021/11/01 18:58:56 wiz Exp $
+# $NetBSD: Makefile,v 1.22 2021/11/02 06:13:46 adam Exp $
 
-DISTNAME=      pyparsing-3.0.0
+DISTNAME=      pyparsing-3.0.4
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=p/pyparsing/}
diff -r 58dc50e90034 -r 4861a5368208 devel/py-pyparsing/distinfo
--- a/devel/py-pyparsing/distinfo       Tue Nov 02 02:21:16 2021 +0000
+++ b/devel/py-pyparsing/distinfo       Tue Nov 02 06:13:46 2021 +0000
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.22 2021/11/01 18:58:56 wiz Exp $
+$NetBSD: distinfo,v 1.23 2021/11/02 06:13:46 adam Exp $
 
-BLAKE2s (pyparsing-3.0.0.tar.gz) = c4bf931eacef276d0c04776e027d9ae97989327298a7d6dce50f07b17ef62dd4
-SHA512 (pyparsing-3.0.0.tar.gz) = ff726bd33549b419909fc2f1398e92b6acc7d72ab112b2e850db68fce218f602cc31e6736e3e692f5c51ad089168e4b84476a9a2527aed5d86b064557f83fc72
-Size (pyparsing-3.0.0.tar.gz) = 875599 bytes
+BLAKE2s (pyparsing-3.0.4.tar.gz) = e03172614d725f9899c71298be0151f2286c969cf029768e177bdc1739ea8443
+SHA512 (pyparsing-3.0.4.tar.gz) = 5dd7f36f90b3d54e744fc214e702fd23c21b1c6910e1e93aeea87e9e9293b5c8b7a6946aa21d7a6d60b2b25e28d782b847ab36a22ca04ec4ef60c03a1eecedb2
+Size (pyparsing-3.0.4.tar.gz) = 879722 bytes



Home | Main Index | Thread Index | Old Index