|
|
|
|
Changelog for python38-pyparsing-3.0.7-qubes.2.13.noarch.rpm :
* Thu Feb 03 2022 Arun Persaud - specfile: * update copyright year- update to version 3.0.7: * Fixed bug #345, in which delimitedList changed expressions in place using expr.streamline(). Reported by Kim Gräsman, thanks! * Fixed bug #346, when a string of word characters was passed to WordStart or WordEnd instead of just taking the default value. Originally posted as a question by Parag on StackOverflow, good catch! * Fixed bug #350, in which White expressions could fail to match due to unintended whitespace-skipping. Reported by Fu Hanxi, thank you! * Fixed bug #355, when a QuotedString is defined with characters in its quoteChar string containing regex-significant characters such as ., *, ?, [, ], etc. * Fixed bug in ParserElement.run_tests where comments would be displayed using with_line_numbers. * Added optional \"min\" and \"max\" arguments to `delimited_list`. PR submitted by Marius, thanks! * Added new API change note in `whats_new_in_pyparsing_3_0_0`, regarding a bug fix in the `bool()` behavior of `ParseResults`. * Prior to pyparsing 3.0.x, the `ParseResults` class implementation of `__bool__` would return `False` if the `ParseResults` item list was empty, even if it contained named results. In 3.0.0 and later, `ParseResults` will return `True` if either the item list is not empty *or * if the named results dict is not empty. * Minor enhancement to Word generation of internal regular expression, to emit consecutive characters in range, such as \"ab\", as \"ab\", not \"a-b\". * Fixed character ranges for search terms using non-Western characters in booleansearchparser, PR submitted by tc-yu, nice work! * Additional type annotations on public methods. * Wed Nov 24 2021 Matthias Fehring - requires jinja2 for testing * Wed Nov 24 2021 Matthias Fehring - requires railroad-diagrams for testing * Wed Nov 24 2021 Matthias Fehring - update to 3.0.6: * Added suppress_warning() method to individually suppress a warning on a specific ParserElement. Used to refactor original_text_for to preserve internal results names, which, while undocumented, had been adopted by some projects. * Fix bug when delimited_list was called with a str literal instead of a parse expression.- changes from 3.0.5: * Added return type annotations for col, line, and lineno. * Fixed bug when warn_ungrouped_named_tokens_in_collection warning was raised when assigning a results name to an original_text_for expression. (Issue #110, would raise warning in packaging.) * Fixed internal bug where ParserElement.streamline() would not return self if already streamlined. * Changed run_tests() output to default to not showing line and column numbers. If line numbering is desired, call with with_line_numbers=True. Also fixed minor bug where separating line was not included after a test failure.- changes from 3.0.4: * Fixed bug in which Dict classes did not correctly return tokens as nested ParseResults * Documented API-changing side-effect of converting ParseResults to use __slots__ to pre-define instance attributes. * 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.- changes from 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. * Added header column labeling > 100 in with_line_numbers - some input lines are longer than others.- changes from 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 (gh#pyparsing/pyparsing/issues#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. * 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.- changes from 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.- changes from 3.0.0 * A consolidated list of all the changes in the 3.0.0 release can be found in docs/whats_new_in_3_0_0.rst. (https://github.com/pyparsing/pyparsing/blob/master/docs/whats_new_in_3_0_0.rst)- disable build for python2, not supported anymore * Thu Jun 17 2021 Ben Greiner - Add Provides: for python *dist(pyparsing): work around boo#1186870 * Wed Jun 03 2020 pgajdosAATTsuse.com- unittest2 -> pytest * Tue May 05 2020 Dirk Mueller - update to 2.4.7: . Each bug with Regex expressions . And expressions not properly constructing with generator . Traceback abbreviation . Bug in delta_time example . Fix regexen in pyparsing_common.real and .sci_real . Avoid FutureWarning on Python 3.7 or later . Cleanup output in runTests if comments are embedded in test string * Tue Feb 11 2020 Ondřej Súkup - update to 2.4.6 * Fixed typos in White mapping of whitespace characters, to use correct \"\\u\" prefix instead of \"u\". * fix bug in left-associative ternary operators defined using infixNotation. First reported on StackOverflow by user Jeronimo. * Backport of pyparsing_test namespace from 3.0.0, including TestParseResultsAsserts mixin class defining unittest-helper methods: . def assertParseResultsEquals( self, result, expected_list=None, expected_dict=None, msg=None) . def assertParseAndCheckList( self, expr, test_string, expected_list, msg=None, verbose=True) . def assertParseAndCheckDict( self, expr, test_string, expected_dict, msg=None, verbose=True) . def assertRunTestResults( self, run_tests_report, expected_parse_results=None, msg=None) . def assertRaisesParseException(self, exc_type=ParseException, msg=None) * Sat Nov 16 2019 Arun Persaud - update to version 2.4.5: * Fixed encoding when setup.py reads README.rst to include the project long description when uploading to PyPI. A stray unicode space in README.rst prevented the source install on systems whose default encoding is not \'utf-8\'.- changes from version 2.4.4: * Unresolved symbol reference in 2.4.3 release was masked by stdout buffering in unit tests, thanks for the prompt heads-up, Ned Batchelder!- changes from version 2.4.3: * Fixed a bug in ParserElement.__eq__ that would for some parsers create a recursion error at parser definition time. Thanks to Michael Clerx for the assist. (Addresses issue #123) * Fixed bug in indentedBlock where a block that ended at the end of the input string could cause pyaprsing to loop forever. Raised as part of discussion on StackOverflow with geckos. * Backports from pyparsing 3.0.0: + __diag__.enable_all_warnings() + Fixed bug in PrecededBy which caused infinite recursion, issue [#127] + support for using regex-compiled RE to construct Regex expressions * Wed Oct 16 2019 Tomáš Chvátal - Do not pull in setuptools dependency at all to avoid cycles * Tue Aug 06 2019 Thomas Bechtold - 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.- update to 2.4.1: - A new shorthand notation has been added for repetition expressions: expr[min, max], with \'...\' valid as a min - \'...\' can also be used as short hand for SkipTo when used in adding parse expressions to compose an And expression. - \'...\' can also be used as a \"skip forward in case of error\" expression - Improved exception messages to show what was actually found, not just what was expected. - Added diagnostic switches to help detect and warn about common parser construction mistakes, or enable additional parse debugging. Switches are attached to the pyparsing.__diag__ namespace object - Added ParseResults.from_dict classmethod, to simplify creation of a ParseResults with results names using a dict, which may be nested. This makes it easy to add a sub-level of named items to the parsed tokens in a parse action. - Added asKeyword argument (default=False) to oneOf, to force keyword-style matching on the generated expressions. - ParserElement.runTests now accepts an optional \'file\' argument to redirect test output to a file-like object (such as a StringIO, or opened file). Default is to write to sys.stdout. - conditionAsParseAction is a helper method for constructing a parse action method from a predicate function that simply returns a boolean result. Useful for those places where a predicate cannot be added using addCondition, but must be converted to a parse action (such as in infixNotation). May be used as a decorator if default message and exception types can be used. See ParserElement.addCondition for more details about the expected signature and behavior for predicate condition methods. - While investigating issue #93, I found that Or and addCondition could interact to select an alternative that is not the longest match. This is because Or first checks all alternatives for matches without running attached parse actions or conditions, orders by longest match, and then rechecks for matches with conditions and parse actions. Some expressions, when checking with conditions, may end up matching on a shorter token list than originally matched, but would be selected because of its original priority. This matching code has been expanded to do more extensive searching for matches when a second-pass check matches a smaller list than in the first pass. - Fixed issue #87, a regression in indented block. Reported by Renz Bagaporo, who submitted a very nice repro example, which makes the bug-fixing process a lot easier, thanks! - Fixed MemoryError issue #85 and #91 with str generation for Forwards. Thanks decalage2 and Harmon758 for your patience. - Modified setParseAction to accept None as an argument, indicating that all previously-defined parse actions for the expression should be cleared. - Modified pyparsing_common.real and sci_real to parse reals without leading integer digits before the decimal point, consistent with Python real number formats. Original PR #98 submitted by ansobolev. - Modified runTests to call postParse function before dumping out the parsed results - allows for postParse to add further results, such as indications of additional validation success/failure. - Updated statemachine example: refactored state transitions to use overridden classmethods; added Mixin class to simplify definition of application classes that \"own\" the state object and delegate to it to model state-specific properties and behavior. - Added example nested_markup.py, showing a simple wiki markup with nested markup directives, and illustrating the use of \'...\' for skipping over input to match the next expression. (This example uses syntax that is not valid under Python 2.) - Rewrote delta_time.py example (renamed from deltaTime.py) to fix some omitted formats and upgrade to latest pyparsing idioms, beginning with writing an actual BNF. - With the help and encouragement from several contributors, including Matěj Cepl and Cengiz Kaygusuz, I\'ve started cleaning up the internal coding styles in core pyparsing, bringing it up to modern coding practices from pyparsing\'s early development days dating back to 2003. Whitespace has been largely standardized along PEP8 guidelines, removing extra spaces around parentheses, and adding them around arithmetic operators and after colons and commas. I was going to hold off on doing this work until after 2.4.1, but after cleaning up a few trial classes, the difference was so significant that I continued on to the rest of the core code base. This should facilitate future work and submitted PRs, allowing them to focus on substantive code changes, and not get sidetracked by whitespace issues. * Thu Apr 18 2019 Ondřej Súkup - 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 \'\ \' 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 * Thu Apr 11 2019 Thomas Bechtold - Do not BuildRequire python-unittest2 when no tests are executed. This breaks a build cycle for pyparsing->unittest2->traceback2->pbr-> Pygments->pytest->setuptools_scm->packaging which needs pyparsing * Thu Jan 17 2019 Dominique Leuenberger - 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. * Tue Jan 08 2019 opensuse-packagingAATTopensuse.org- 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 * Mon Jan 07 2019 Matěj Cepl - Add nose_to_unittest.patch to avoid nose BR and rewrite tests to work (gh#pyparsing/pyparsing#64)
|
|
|