- update to 2.4.2:
- Updated the shorthand notation that has been added for repetition
expressions: expr[min, max], with '...' valid as a min or max value
- The defaults on all the `__diag__` switches have been set to False,
to avoid getting alarming warnings. To use these diagnostics, set
them to True after importing pyparsing.
- Fixed bug introduced by the use of __getitem__ for repetition,
overlooking Python's legacy implementation of iteration
by sequentially calling __getitem__ with increasing numbers until
getting an IndexError. Found during investigation of problem
reported by murlock, merci!
- Changed [...] to emit ZeroOrMore instead of OneOrMore.
- Removed code that treats ParserElements like iterables.
- Change all __diag__ switches to False.
- update to 2.4.1.1:
- API change adding support for `expr[...]` - the original
code in 2.4.1 incorrectly implemented this as OneOrMore.
Code using this feature under this relase should explicitly
use `expr[0, ...]` for ZeroOrMore and `expr[1, ...]` for
OneOrMore. In 2.4.2 you will be able to write `expr[...]`
equivalent to `ZeroOrMore(expr)`.
- Bug if composing And, Or, MatchFirst, or Each expressions
using an expression. This only affects code which uses
explicit expression construction using the And, Or, etc.
classes instead of using overloaded operators '+', '^', and
so on. If constructing an And using a single expression,
you may get an error that "cannot multiply ParserElement by
0 or (0, 0)" or a Python `IndexError`.
- Some newly-added `__diag__` switches are enabled by default,
which may give rise to noisy user warnings for existing parsers.
OBS-URL: https://build.opensuse.org/request/show/721168
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=33
- Updated the shorthand notation that has been added for repetition
expressions: expr[min, max], with '...' valid as a min or max value
- The defaults on all the `__diag__` switches have been set to False,
to avoid getting alarming warnings. To use these diagnostics, set
them to True after importing pyparsing.
- Fixed bug introduced by the use of __getitem__ for repetition,
overlooking Python's legacy implementation of iteration
by sequentially calling __getitem__ with increasing numbers until
getting an IndexError. Found during investigation of problem
reported by murlock, merci!
- Changed [...] to emit ZeroOrMore instead of OneOrMore.
- Removed code that treats ParserElements like iterables.
- Change all __diag__ switches to False.
- update to 2.4.1.1:
- API change adding support for `expr[...]` - the original
code in 2.4.1 incorrectly implemented this as OneOrMore.
Code using this feature under this relase should explicitly
use `expr[0, ...]` for ZeroOrMore and `expr[1, ...]` for
OneOrMore. In 2.4.2 you will be able to write `expr[...]`
equivalent to `ZeroOrMore(expr)`.
- Bug if composing And, Or, MatchFirst, or Each expressions
using an expression. This only affects code which uses
explicit expression construction using the And, Or, etc.
classes instead of using overloaded operators '+', '^', and
so on. If constructing an And using a single expression,
you may get an error that "cannot multiply ParserElement by
0 or (0, 0)" or a Python `IndexError`.
- Some newly-added `__diag__` switches are enabled by default,
which may give rise to noisy user warnings for existing parsers.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=64
- update to 2.4.0
- drop nose_to_unittest.patch
- drop _service
* Adds a pyparsing.__compat__ object for specifying compatibility with
future breaking changes.
* Conditionalizes the API-breaking behavior, based on the value
pyparsing.__compat__.collect_all_And_tokens. By default, this value
will be set to True, reflecting the new bugfixed behavior.
* User code that is dependent on the pre-bugfix behavior can restore
it by setting this value to False.
* Updated unitTests.py and simple_unit_tests.py to be compatible with
"python setup.py test".
* Fixed bug in runTests handling '\n' literals in quoted strings.
* Added tag_body attribute to the start tag expressions generated by
makeHTMLTags, so that you can avoid using SkipTo to roll your own
tag body expression:
* indentedBlock failure handling was improved
* Address Py2 incompatibility in simpleUnitTests, plus explain() and
Forward str() cleanup
* Fixed docstring with embedded '\w', which creates SyntaxWarnings in Py3.8.
* Added example parser for rosettacode.org tutorial compiler.
* Added example to show how an HTML table can be parsed into a
collection of Python lists or dicts, one per row.
* Updated SimpleSQL.py example to handle nested selects, reworked
'where' expression to use infixNotation.
* Added include_preprocessor.py, similar to macroExpander.py.
* Examples using makeHTMLTags use new tag_body expression when
retrieving a tag's body text.
* Updated examples that are runnable as unit tests
OBS-URL: https://build.opensuse.org/request/show/695770
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=32
- drop nose_to_unittest.patch
- drop _service
* Adds a pyparsing.__compat__ object for specifying compatibility with
future breaking changes.
* Conditionalizes the API-breaking behavior, based on the value
pyparsing.__compat__.collect_all_And_tokens. By default, this value
will be set to True, reflecting the new bugfixed behavior.
* User code that is dependent on the pre-bugfix behavior can restore
it by setting this value to False.
* Updated unitTests.py and simple_unit_tests.py to be compatible with
"python setup.py test".
* Fixed bug in runTests handling '\n' literals in quoted strings.
* Added tag_body attribute to the start tag expressions generated by
makeHTMLTags, so that you can avoid using SkipTo to roll your own
tag body expression:
* indentedBlock failure handling was improved
* Address Py2 incompatibility in simpleUnitTests, plus explain() and
Forward str() cleanup
* Fixed docstring with embedded '\w', which creates SyntaxWarnings in Py3.8.
* Added example parser for rosettacode.org tutorial compiler.
* Added example to show how an HTML table can be parsed into a
collection of Python lists or dicts, one per row.
* Updated SimpleSQL.py example to handle nested selects, reworked
'where' expression to use infixNotation.
* Added include_preprocessor.py, similar to macroExpander.py.
* Examples using makeHTMLTags use new tag_body expression when
retrieving a tag's body text.
* Updated examples that are runnable as unit tests
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=62
- BuildIgnore python[23]-pyparsing: python-packaging requires it
for some actions it could perform, but we don't make use of these
here. Ignoring this dependency allows us to break open a
BuildCycle.
- Update to version 2.3.0+git.1546912853.bf348d6:
* Update CHANGES to include note on fixing issue #65; generalized the note about the decaf language example; added sample code from the statemachine examples.
* Unit test to test fix for issue #65
* Fix inconsistency between Keyword(caseless=True) and CaselessKeyword (issue #65)
* Fix typo: 'chemcialFormulas.py' -> 'chemicalFormulas.py'
* Convert exception logging to use ParseException.explain()
* Add experimental ParseException.explain() method, to return a multiline string showing the parse expressions leading to a parsing failure
* Clean up CHANGES notes for new examples
* Add document signoff and library book state examples;
* Update statemachine demo code to Py3
* Update Lucene grammar example, but remove from Travis-CI acceptance scripts
OBS-URL: https://build.opensuse.org/request/show/666937
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=31
* Update CHANGES to include note on fixing issue #65; generalized the note about the decaf language example; added sample code from the statemachine examples.
* Unit test to test fix for issue #65
* Fix inconsistency between Keyword(caseless=True) and CaselessKeyword (issue #65)
* Fix typo: 'chemcialFormulas.py' -> 'chemicalFormulas.py'
* Convert exception logging to use ParseException.explain()
* Add experimental ParseException.explain() method, to return a multiline string showing the parse expressions leading to a parsing failure
* Clean up CHANGES notes for new examples
* Add document signoff and library book state examples;
* Update statemachine demo code to Py3
* Update Lucene grammar example, but remove from Travis-CI acceptance scripts
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=57
- Update to 2.3.0:
* Updates to migrate source repo to GitHub
* Fix deprecation warning in Python 3.7 re: importing collections.abc
* Fix Literal/Keyword bug raising IndexError instead of ParseException
* Added simple_unit_tests.py, as a collection of easy-to-follow unit
* tests for various classes and features of the pyparsing library.
* Primary intent is more to be instructional than actually rigorous
* testing. Complex tests can still be added in the unitTests.py file.
* New features added to the Regex class
- Fix URL to point to existing github
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=43
- Bumped minor version number to reflect compatibility issues with
OneOrMore and ZeroOrMore bugfixes in 2.1.10. (2.1.10 fixed a bug
that was introduced in 2.1.4, but the fix could break code
written against 2.1.4 - 2.1.9.)
- Updated setup.py to address recursive import problems now
that pyparsing is part of 'packaging' (used by setuptools).
Patch submitted by Joshua Root, much thanks!
- Fixed KeyError issue reported by Yann Bizeul when using packrat
parsing in the Graphite time series database, thanks Yann!
- Fixed incorrect usages of '\' in literals, as described in
https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior
Patch submitted by Ville Skyttä - thanks!
- Minor internal change when using '-' operator, to be compatible
with ParserElement.streamline() method.
- Expanded infixNotation to accept a list or tuple of parse actions
to attach to an operation.
- New unit test added for dill support for storing pyparsing parsers.
Ordinary Python pickle can be used to pickle pyparsing parsers as
long as they do not use any parse actions. The 'dill' module is an
extension to pickle which *does* support pickling of attached
- drop desetuptoolize.patch: this is not needed
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=38
- Update to version 2.0.1:
- Removed use of "nonlocal" that prevented using this version of
pyparsing with Python 2.6 and 2.7. This will make it easier to
install for packages that depend on pyparsing, under Python
versions 2.6 and later. Those using older versions of Python
will have to manually install pyparsing 1.5.7.
- Fixed implementation of <<= operator to return self; reported by
Luc J. Bourhis, with patch fix by Mathias Mamsch - thanks, Luc
and Mathias!
- Changes from version 2.0.0:
- Rather than release another combined Python 2.x/3.x release
I've decided to start a new major version that is only
compatible with Python 3.x (and consequently Python 2.7 as
well due to backporting of key features). This version will
be the main development path from now on, with little follow-on
development on the 1.5.x path.
- Operator '<<' is now deprecated, in favor of operator '<<=' for
attaching parsing expressions to Forward() expressions. This is
being done to address precedence of operations problems with '<<'.
Operator '<<' will be removed in a future version of pyparsing.
- remove nonsensical tarball
OBS-URL: https://build.opensuse.org/request/show/199401
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pyparsing?expand=0&rev=16
- Removed use of "nonlocal" that prevented using this version of
pyparsing with Python 2.6 and 2.7. This will make it easier to
install for packages that depend on pyparsing, under Python
versions 2.6 and later. Those using older versions of Python
will have to manually install pyparsing 1.5.7.
- Fixed implementation of <<= operator to return self; reported by
Luc J. Bourhis, with patch fix by Mathias Mamsch - thanks, Luc
and Mathias!
- Changes from version 2.0.0:
- Rather than release another combined Python 2.x/3.x release
I've decided to start a new major version that is only
compatible with Python 3.x (and consequently Python 2.7 as
well due to backporting of key features). This version will
be the main development path from now on, with little follow-on
development on the 1.5.x path.
- Operator '<<' is now deprecated, in favor of operator '<<=' for
attaching parsing expressions to Forward() expressions. This is
being done to address precedence of operations problems with '<<'.
Operator '<<' will be removed in a future version of pyparsing.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyparsing?expand=0&rev=26