Commit Graph

8 Commits

Author SHA1 Message Date
Florian Bruhin
f8301b185e flake8 requirements: Update flake8 to 2.5.5
- Fix setuptools integration when parsing config files
- Don't pass the user's config path as the config_file when creating a
  StyleGuide
2016-06-15 09:02:15 +02:00
Florian Bruhin
b099f64efa flake8 requirements: Update pyparsing to 2.1.5
- Added ParserElement.split() generator method, similar to re.split().
  Includes optional arguments maxsplit (to limit the number of splits),
  and includeSeparators (to include the separating matched text in the
  returned output, default=False).

- Added a new parse action construction helper tokenMap, which will
  apply a function and optional arguments to each element in a
  ParseResults. So this parse action:

      def lowercase_all(tokens):
          return [str(t).lower() for t in tokens]
      OneOrMore(Word(alphas)).setParseAction(lowercase_all)

  can now be written:

      OneOrMore(Word(alphas)).setParseAction(tokenMap(str.lower))

  Also simplifies writing conversion parse actions like:

      integer = Word(nums).setParseAction(lambda t: int(t[0]))

  to just:

      integer = Word(nums).setParseAction(tokenMap(int))

  If additional arguments are necessary, they can be included in the
  call to tokenMap, as in:

      hex_integer = Word(hexnums).setParseAction(tokenMap(int, 16))

- Added more expressions to pyparsing_common:
  . IPv4 and IPv6 addresses (including long, short, and mixed forms
    of IPv6)
  . MAC address
  . ISO8601 date and date time strings (with named fields for year, month, etc.)
  . UUID (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
  . hex integer (returned as int)
  . fraction (integer '/' integer, returned as float)
  . mixed integer (integer '-' fraction, or just fraction, returned as float)
  . stripHTMLTags (parse action to remove tags from HTML source)
  . parse action helpers convertToDate and convertToDatetime to do custom parse
    time conversions of parsed ISO8601 strings

- runTests now returns a two-tuple: success if all tests succeed,
  and an output list of each test and its output lines.

- Added failureTests argument (default=False) to runTests, so that
  tests can be run that are expected failures, and runTests' success
  value will return True only if all tests *fail* as expected. Also,
  parseAll now defaults to True.

- New example numerics.py, shows samples of parsing integer and real
  numbers using locale-dependent formats:

    4.294.967.295,000
    4 294 967 295,000
    4,294,967,295.000
2016-06-14 09:48:14 +02:00
Florian Bruhin
1a26c8c61f Add a script to compile requirement files 2016-06-07 22:45:59 +02:00
Florian Bruhin
1b9a0367e7 flake8 req: Update sortedcontainers to 1.5.3 2016-06-02 11:18:49 +02:00
Florian Bruhin
100d284cdd requirements: Update mccabe to 0.5.0
- PyCon 2016 PDX release
- Add support for Flake8 3.0
2016-05-30 23:50:11 +02:00
Florian Bruhin
0c611d4d85 requirements: Update flake8-future-import to 0.4.1
- Do not ignore imports which are present and have been added after the
  minimum version
- Ignore imports which became mandatory with the minimum version
2016-05-30 23:47:35 +02:00
Florian Bruhin
afb88a9560 requirements: Update flake8-future-import to 0.4.0
- Add two older future imports
- Issue an error when a future import does not exist
- Define which is the oldest Python version to be supported so that
  already mandatory features can be ignored and not yet supported
  features default to forbidden (ignoring the lower error code).
- Use return code of 1 if errors occurred
2016-05-30 12:57:57 +02:00
Florian Bruhin
6f6303e0a6 Use requirements files for tox dependencies
While this makes things a little more complicated and means we'll need to use
`-r` to recreate tox environments, it has several advantages:

- Full support from requires.io (including PRs)
- Workaround for https://bitbucket.org/hpk42/tox/issues/332/ so we can update
  virtualenv/pip
2016-05-29 16:53:54 +02:00