Skip to content

Conversation

@dependabot-preview
Copy link
Contributor

Bumps pyparsing from 2.1.10 to 2.4.1.1.

Release notes

Sourced from pyparsing's releases.

Pyparsing 2.4.1.1

This is a re-release of version 2.4.1 to restore the release history
in PyPI, since the 2.4.1 release was deleted.

There are 3 known issues in this release, which are fixed in
the upcoming 2.4.2:

  • 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. Change code like

    cmd = Or(Word(alphas))
    

    to

    cmd = Or([Word(alphas)])
    

    (Note that this is not the recommended style for constructing
    Or expressions.)

  • Some newly-added __diag__ switches are enabled by default,
    which may give rise to noisy user warnings for existing parsers.
    You can disable them using:

    import pyparsing as pp
    pp.__diag__.warn_multiple_tokens_in_named_alternation = False
    pp.__diag__.warn_ungrouped_named_tokens_in_collection = False
    pp.__diag__.warn_name_set_on_empty_Forward = False
    pp.__diag__.warn_on_multiple_string_args_to_oneof = False
    pp.__diag__.enable_debug_on_named_expressions = False
    

    In 2.4.2 these will all be set to False by default.

Pyparsing 2.4.1

For a minor point release, this release contains many new features!

  • A new shorthand notation has been added for repetition expressions: expr[min, max], with ... valid as a min or max value:
    • expr[...] is equivalent to OneOrMore(expr)
    • expr[0, ...] is equivalent to ZeroOrMore(expr)
... (truncated)
Changelog

Sourced from pyparsing's changelog.

==========
Change Log

Version 2.4.2a1 - July, 2019

It turns out I got the meaning of [...] absolutely backwards,
so I've deleted 2.4.1 and am repushing this release as 2.4.2a1
for people to give it a try before I can call it ready to go.

The expr[...] notation was pushed out to be synonymous with
OneOrMore(expr), but this is really counter to most Python
notations (and even other internal pyparsing notations as well).
It should have been defined to be equivalent to ZeroOrMore(expr).

It also seems that I introduced a problem by enabling some noisy
diagnostics, and added a very subtle ParserElement-as-
unintentional-iterator bug, so 2.4.1 really needs to be unreleased.
So sorry, everyone!

(Updated)

  • A new shorthand notation has been added for repetition
    expressions: expr[min, max], with '...' valid as a min
    or max value:

    • expr[...] and expr[0, ...] are equivalent to ZeroOrMore(expr)
    • expr[1, ...] is equivalent to OneOrMore(expr)
    • expr[n, ...] or expr[n,] is equivalent
      to expr*n + ZeroOrMore(expr)
      (read as "n or more instances of expr")
    • expr[..., n] is equivalent to expr*(0, n)
    • expr[m, n] is equivalent to expr*(m, n)
      Note that expr[..., n] and expr[m, n] do not raise an exception
      if more than n exprs exist in the input stream. If this
      behavior is desired, then write expr[..., n] + ~expr.

    Better interpretation of [...] as ZeroOrMore raised by crowsonkb,
    thanks for keeping me in line!

  • 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.

    Example:

    import pyparsing as pp
    pp.__diag__.warn_multiple_tokens_in_named_alternation = True
    
  • Fixed bug introduced by the use of getitem for repetition,
    overlooking Python's legacy implementation of iteration

... (truncated)
Commits
  • 1c1405d Add unit test for #103; also make CHANGES blurb and HowToUse notes a little c...
  • 7eb54f0 More accurate description of bugs and their respective fixes
  • c1a136d Fixed faux iteration behavior implicit with using getitem, found while in...
  • 9f9ec78 Merge branch 'pyparsing_2.4.x'
  • a64494d Version 2.4.2a1 - changing [...] notation to ZeroOrMore, not OneOrMore
  • 1363860 Update version in prep for new 2.5.x work
  • 07d82bb Fix latent bug if adding a parse action after having cleared parse actions wi...
  • a6203b1 Update coding styles; better comments, attribution of example file
  • 33ca34c Change example to use addCondition instead of parse action that raises ParseE...
  • de00f57 Missing bits in CONTRIBUTING file
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Note: This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit.

You can always request more updates by clicking Bump now in your Dependabot dashboard.

Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it). To ignore the version in this PR you can just close it
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Pull request limits (per update run and/or open at any time)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

Finally, you can contact us by mentioning @dependabot.

Bumps [pyparsing](https://github.com/pyparsing/pyparsing) from 2.1.10 to 2.4.1.1.
- [Release notes](https://github.com/pyparsing/pyparsing/releases)
- [Changelog](https://github.com/pyparsing/pyparsing/blob/master/CHANGES)
- [Commits](pyparsing/pyparsing@pyparsing_2.1.10...pyparsing_2.4.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
@dependabot-preview dependabot-preview bot added the dependencies Pull requests that update a dependency file label Jul 25, 2019
@dependabot-preview
Copy link
Contributor Author

Superseded by #9.

@dependabot-preview dependabot-preview bot deleted the dependabot/pip/pyparsing-2.4.1.1 branch July 30, 2019 06:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant