Skip to content

Roadmap

Paul McGuire edited this page Oct 7, 2018 · 12 revisions

This page will serve as a notice for planned release of features and bug-fixes in upcoming releases. I may not list every little change planned, just the main release drivers. Dates are omitted on purpose.

Pyparsing 3.0.0

  • drop support for Python 2.x
  • PEP8 the API (will break lots of stuff)

Pyparsing 2.3.0

  • fixing inconsistencies in ParseResults structure-building and exceptions which may break some current code:

    • convert IndexError's raised in parse actions to ParseExceptions that wrap the original IndexError Since IndexError sometimes occurs as part of pyparsing's normal parsing logic, IndexErrors that are raised during a parse action may get reinterpreted as parsing errors. To retain the information from the IndexError, these exceptions will now be raised as ParseExceptions that reference the original IndexError.
    • fix issue with ParseResults returned from a parse action in another level of ParseResults Occurs when a parse action is called and it returns the same tokens passed in: def parseAction(parse_string, locn, tokens): ... return tokens In this case, the return statement is unnecessary, since pyparsing will use the current tokens ParseResults if the parse action returns None. To prepare for this fix, remove any return statements in your parse actions that simply return the given tokens.
  • add PrecededBy for lookbehind expression (complement to FollowedBy)

  • add unicode forms of printables, alphas, nums, etc.; probably as part of a pyparsing_unicode namespace class, similar to pyparsing_common

  • migrate docstrings from epydoc to sphinx, to support upload to readthedocs; maybe publish epydoc2sphinx pyparsing example in examples directory

  • conditionAsParseAction

  • drop support for Python 2.6

Pyparsing 2.2.2 (released September 30, 2018)

  • add LICENSE and CODE_OF_CONDUCT files to repo, and include in source tarball on PyPI
  • fix ParseResult returned from SkipTo to be consistent

Pyparsing 2.2.1 (released in September, 2018)

  • main emphasis is migrating source control over to GitHub, with proper mods to setup.py for right 'pip install' behavior, now that many pivotal modules depend on pyparsing
  • fix DeprecationWarning in Python 3.7