Commit Graph

819 Commits

Author SHA1 Message Date
Florian Bruhin
45d2046b96 test requirements: Update Werkzeug to 0.11.12 2016-12-26 16:50:51 +01:00
Florian Bruhin
40c397ebaf test requirements: Update Flask to 0.12 2016-12-22 08:11:09 +01:00
Florian Bruhin
154748d56e test requirements: Update hypothesis to 3.6.1 2016-12-20 21:40:46 +01:00
Florian Bruhin
135f99c467 test requirements: Update CherryPy to 8.1.3 2016-12-19 08:13:37 +01:00
Florian Bruhin
3f61c7871c pylint requirements: Update astroid to 1.4.9 2016-12-19 08:12:21 +01:00
Florian Bruhin
28ccd03acd tox/test requirements: Update py to 1.4.32 2016-12-19 08:11:05 +01:00
Florian Bruhin
caa3df1595 requirement updates 2016-12-14 20:32:00 +01:00
Florian Bruhin
587e782738 Blacklist pytest 3.0.5
See https://github.com/pytest-dev/pytest/issues/2118
2016-12-05 22:40:09 +01:00
Florian Bruhin
6f90d93306 test requirements: Update pytest to 3.0.5 2016-12-05 16:17:51 +01:00
Florian Bruhin
af766ade48 requirements: Update requests to 2.12.3 2016-12-02 09:43:05 +01:00
Florian Bruhin
18ac35e7b8 test requirements: Add new pytest-xvfb deps 2016-11-30 20:31:34 +01:00
Florian Bruhin
506fe42957 requirements: Update requests to 2.12.2 2016-11-30 20:30:58 +01:00
Florian Bruhin
1ecda5a993 test requirements: Update pytest-xvfb to 1.0.0 2016-11-30 15:20:47 +01:00
Florian Bruhin
99fed71001 test/vulture requirements: Update vulture to 0.11 2016-11-29 09:23:00 +01:00
Florian Bruhin
856ae39673 flake8 requirements: Update flake8-pep1301 to 1.0 2016-11-29 07:29:47 +01:00
Florian Bruhin
df5fdb9864 test requirements: Update pytest-mock to 1.5.0 2016-11-22 22:50:58 +01:00
Florian Bruhin
9649884add tox requirements: Update tox to 2.5.0 2016-11-16 22:16:40 +01:00
Florian Bruhin
acd13eed49 pytest requirements: Update pytest-faulthandler to 1.3.1 2016-11-16 22:16:13 +01:00
Florian Bruhin
4fc2f93b7a codecov/pylint requirements: Update requests to 2.12.1 2016-11-16 22:15:37 +01:00
Florian Bruhin
e9a8201aa1 cxfreeze requirements: Blacklist >= 5.0.0
See #1004
2016-11-16 07:48:37 +01:00
Florian Bruhin
f274e198e4 tox requirements: Update virtualenv to 15.1.0 2016-11-16 07:16:37 +01:00
Florian Bruhin
2f5f17e121 pylint/codecov requirements: Update requests to 2.12.0 2016-11-15 23:52:53 +01:00
Florian Bruhin
bc3f96ce9a flake8 requirement: Update pycodestyle to 2.2.0 2016-11-15 10:51:21 +01:00
Florian Bruhin
2142bc23d4 test requirements: Update pytest to 3.0.4 2016-11-13 01:48:37 +01:00
Florian Bruhin
22cd42c515 test requirements: Update Mako to 1.0.6 2016-11-10 06:56:01 +01:00
Florian Bruhin
7e6edaf93d flake8: Get rid of 'hacking' plugin
It doesn't seem to be intended to be used outside OpenStack, and I'm not
sure if it even works properly in our setup...
2016-11-08 07:07:17 +01:00
Florian Bruhin
55541753e7 flake8 requirements: Update pycodestyle to 2.1.0 2016-11-05 23:58:04 +01:00
Florian Bruhin
be0fe8897b test requirements: Update pytest-bdd to 2.18.1 2016-11-05 23:55:50 +01:00
Florian Bruhin
3a87319830 flake8 requirements: Update flake8-tidy-imports to 1.0.3 2016-11-05 23:55:33 +01:00
Florian Bruhin
18e5334905 test requirements: Update glob2 to 0.5 2016-11-04 23:44:12 +01:00
Florian Bruhin
dc772350bf test requirements: Update pytest-mock to 1.4.0 2016-11-04 06:34:45 +01:00
Florian Bruhin
75a3b9ab1b test requirements: Update Mako to 1.0.5 2016-11-03 07:24:56 +01:00
Florian Bruhin
b0e0b1d073 Get rid of requirements-pip.txt
While pinning setuptools/pip versions is still somewhat desirable, we
can't pin it everywhere easily, and the current solution will break
stuff on Windows.
2016-11-03 07:22:31 +01:00
Florian Bruhin
b11a1e92cc test requirements: Update pytest-rerunfailures to 2.1.0 2016-11-02 10:12:10 +01:00
Florian Bruhin
f2bf5cc442 test requirements: Update hypothesis to 3.6.0 2016-10-31 16:12:34 +01:00
Florian Bruhin
a6b0ef18d5 test requirements: Update xdis to 3.2.1 2016-10-31 06:39:23 +01:00
Florian Bruhin
664506c050 pip requirements: Update setuptools to 28.7.1 2016-10-30 19:09:24 +01:00
Florian Bruhin
85005a44c0 pip requirements: Update setuptools to 28.7.0 2016-10-30 00:40:03 +02:00
Florian Bruhin
829867ed11 test requirements: Update pytest-mock to 1.3.0 2016-10-30 00:39:17 +02:00
Florian Bruhin
37d5991fff flake8 requirements: Update packaging to 16.8 2016-10-30 00:39:00 +02:00
Florian Bruhin
d939a16950 flake8 requirements: Update flake8-pep3101 to 0.6 2016-10-30 00:37:03 +02:00
Florian Bruhin
1493bfe766 Revert "pip requirements: Update setuptools to 28.6.2"
This reverts commit 17f7bafc1c.

Turns out I was confused and that version doesn't even exist yet...
2016-10-27 06:46:18 +02:00
Florian Bruhin
17f7bafc1c pip requirements: Update setuptools to 28.6.2 2016-10-27 06:12:52 +02:00
Florian Bruhin
fa45536367 pyroma requirements: Update pyroma to 2.2 2016-10-27 06:09:57 +02:00
Florian Bruhin
634cad7f15 flake8 reqs: Update flake8-deprecated to 1.1 2016-10-27 06:09:43 +02:00
Florian Bruhin
1fb2dd2694 test requirements: Update uncompyle6 to 2.9.3 2016-10-26 19:16:38 +02:00
Florian Bruhin
ece3f3a2e1 Update to pytest-qt 2.1.0 2016-10-26 07:42:41 +02:00
Florian Bruhin
bd414c5f01 test requirements: Update xdis to 3.2.0 2016-10-26 07:38:05 +02:00
Florian Bruhin
872599065b pyinstaller requirements: Don't strip commit ID
See #1692
2016-10-25 08:18:01 +02:00
Florian Bruhin
650af3772a Use PyInstaller with QtWebEngine fix
See #1692
2016-10-25 06:58:29 +02:00
Florian Bruhin
fe70fddf9a test requirements: Update pytest-warnings to 0.2.0 2016-10-24 12:14:17 +02:00
Florian Bruhin
ebe656fdf9 pip requirements: Update setuptools to 28.6.1 2016-10-20 07:30:13 +02:00
Florian Bruhin
d853cdc120 pyroma requirements: Update pyroma to 2.1 2016-10-18 10:06:18 +02:00
Florian Bruhin
fe5daca351 pip requirements: Update setuptools to 28.6.0 2016-10-16 21:30:25 +02:00
Florian Bruhin
6a93eee14e pip requirements: Update setuptools to 28.5.0 2016-10-16 17:53:12 +02:00
Florian Bruhin
72ae9c133c test reqs: Update uncompyle6/xdis to 2.9.2/3.1.0 2016-10-16 17:27:28 +02:00
Florian Bruhin
8e879f9879 tox requirements: Update tox to 2.4.1 2016-10-14 06:48:38 +02:00
Florian Bruhin
d5a3d2e191 tox requirements: Update tox to 2.4.0 2016-10-13 11:30:51 +02:00
Florian Bruhin
90d868b033 test reqs: Update uncompile6/xdis to 2.9.1/3.0.2 2016-10-11 14:08:53 +02:00
Florian Bruhin
121b4bced5 test requirements: Update pytest-cov to 2.4.0 2016-10-11 14:08:04 +02:00
Florian Bruhin
d5f8181777 test requirements: Update uncompyle6 to 2.9.0 2016-10-10 15:44:08 +02:00
Florian Bruhin
a78fb6f5e4 test requirements: Update xdis to 3.0.0 2016-10-10 15:35:06 +02:00
Florian Bruhin
8670009c92 test requirements: Update uncompyle6 to 2.8.4 2016-10-10 08:11:58 +02:00
Florian Bruhin
422bbd0f2c pip requirements: Update setuptools to 28.3.0 2016-10-10 07:40:11 +02:00
Florian Bruhin
0a8133cc9f test requirements: Update xdis to 2.3.2 2016-10-07 07:32:45 +02:00
Florian Bruhin
15a2b6ba82 flake8 requirements: Update pyparsing to 2.1.10 2016-10-07 07:32:35 +02:00
Florian Bruhin
c9f3fbc855 test requirements: Update hypothesis to 3.5.3 2016-10-05 13:32:33 +02:00
Florian Bruhin
9ca4ff896d flake8 requirements: Update pydocstyle to 1.1.1 2016-10-05 07:11:20 +02:00
Florian Bruhin
f024cc2c59 pip requirements: Update setuptools to 28.2.0 2016-10-02 17:18:44 +02:00
Florian Bruhin
0c5e093c8a pip requirements: Update setuptools to 28.1.0 2016-10-02 10:22:39 +02:00
Florian Bruhin
7df7200797 test requirements: Update pytest to 3.0.3 2016-09-30 08:51:14 +02:00
Florian Bruhin
6df1df2c04 flake8 requirements: Blacklist pydocstyle 1.1.0
See https://gitlab.com/pycqa/flake8-docstrings/issues/16
2016-09-30 08:43:07 +02:00
Florian Bruhin
6f273398ce pip requirements: Update setuptools to 28.0.0 2016-09-28 22:45:10 +02:00
Florian Bruhin
b9f4013548 test requirements: Update CherryPy to 8.1.2 2016-09-28 22:44:07 +02:00
Florian Bruhin
b49aa2d535 test requirements: Update hypothesis to 3.5.2 2016-09-26 10:54:58 +02:00
Florian Bruhin
fbf65f677c tox requirements: Force pluggy 0.4.0 2016-09-26 06:57:21 +02:00
Florian Bruhin
02accf3e71 test requirements: Update pytest-bdd to 2.18.0 2016-09-25 15:53:21 +02:00
Florian Bruhin
6751c3f460 test requirements: Update hypothesis to 3.5.1
This also adds a few new dependencies as hypothesis >= 3.5.0 depends on
uncompyle6.
2016-09-25 15:52:18 +02:00
Florian Bruhin
d950762c58 pylint requirements: Update github3.py to 0.9.6 2016-09-25 15:45:34 +02:00
Florian Bruhin
c864071c71 pip requirements: Update setuptools to 27.3.0 2016-09-21 07:46:11 +02:00
Florian Bruhin
ad84691f5b flake8 reqs: Blacklist flake8-debugger 2.0.0
See https://github.com/JBKahn/flake8-debugger/issues/5
2016-09-20 09:40:36 +02:00
Florian Bruhin
ac4724807a test requirements: Update pytest-xvfb to 0.3.0 2016-09-15 16:40:07 +02:00
Florian Bruhin
035a7e3632 pip requirements: Update setuptools to 27.2.0 2016-09-15 15:01:56 +02:00
Florian Bruhin
606f4a7860 check-manifest reqs: Update check-manifest to 0.34 2016-09-15 15:01:20 +02:00
Florian Bruhin
e05196c4b2 pip requirements: Update setuptools to 27.1.2 2016-09-11 20:22:56 +02:00
Florian Bruhin
94a3047df2 flake8 requirements: Update pyparsing to 2.1.9 2016-09-11 20:22:22 +02:00
Florian Bruhin
3edd6d4834 flake8 requirements: Update flake8-mock to 0.3 2016-09-11 20:22:11 +02:00
Florian Bruhin
bb4d09ffd9 test requirements: Update CherryPy to 8.1.0 2016-09-05 11:08:20 +02:00
Florian Bruhin
7a98af4c2f test requirements: Update CherryPy to 8.0.1 2016-09-04 20:30:10 +02:00
Florian Bruhin
64b3980685 test requirements: Update CherryPy to 8.0.0 2016-09-02 19:13:37 +02:00
Florian Bruhin
55557b5c19 test requirements: Update pytest to 3.0.2 2016-09-02 07:00:19 +02:00
Florian Bruhin
3f279a3a31 flake8 requirements: Update pyflakes to 1.3.0 2016-09-01 23:00:00 +02:00
Florian Bruhin
f1588640a8 test requirements: Update Werkzeug to 0.11.11 2016-09-01 07:02:47 +02:00
Florian Bruhin
e12eb28635 pylint reqs: Update uritemplate.py to 3.0.2 2016-08-31 07:22:24 +02:00
Florian Bruhin
30ff2141b9 pylint reqs: Update uritemplate.py to 3.0.1
Deprecate in favor of uritemplate. This package is now a metapackage
that depends on uritemplate.
2016-08-30 06:35:48 +02:00
Florian Bruhin
bb2cddb846 pip requirements: Update setuptools to 26.1.1 2016-08-30 06:33:50 +02:00
Florian Bruhin
a8fd908143 check-manifest reqs: Update check-manifest to 0.33
Fix WindowsError due to git submodules in subdirectories
2016-08-30 06:30:17 +02:00
Florian Bruhin
bfbb2cc11f requirements: Update PyYAML to 3.12
- Wheel packages for Windows binaries.
- Adding an implicit resolver to a derived loader should not affect the
  base loader.
- Uniform representation for OrderedDict? across different versions of
  Python.
- Fixed comparison to None warning.
2016-08-29 07:31:31 +02:00
Florian Bruhin
ce4dcf9e80 test requirements: Update pytest-repeat to 0.4.1 2016-08-25 21:19:45 +02:00
Florian Bruhin
c2a1231f47 test requirements: Update pytest to 3.0.1
Fixes various 3.0.0 regressions.
2016-08-24 07:22:36 +02:00
Florian Bruhin
1bb8ab08fc Revert "Revert "test requirements: Update to pytest 3.0""
This reverts commit 762e13c870.
2016-08-22 07:24:17 +02:00
Florian Bruhin
762e13c870 Revert "test requirements: Update to pytest 3.0"
This reverts commit a5e4e88ac8.
2016-08-21 16:59:52 +02:00
Florian Bruhin
a5e4e88ac8 test requirements: Update to pytest 3.0
See #1877
2016-08-21 16:17:16 +02:00
Florian Bruhin
d21e482964 pip requirements: Update setuptools to 26.0.0 2016-08-21 16:12:07 +02:00
Florian Bruhin
e447e2de65 pylint-master requirements: Add editdistance 2016-08-20 20:54:22 +02:00
Florian Bruhin
c7abed7718 pylint requirements: Update uritemplate to 2.0.0
Relicense uritemplate.py as Apache 2 and BSD
2016-08-20 20:49:48 +02:00
Florian Bruhin
d51097972d pip requirements: Update setuptools to 25.4.0 2016-08-20 20:48:53 +02:00
Florian Bruhin
2946290df9 pylint requirements: Update uritemplate to 1.0.1
- Fix some minor packaging problems.
2016-08-19 18:54:25 +02:00
Florian Bruhin
0c1412a218 pylint requirements: Update uritemplate to 1.0.0 2016-08-18 12:44:13 +02:00
Florian Bruhin
939935c2d1 requirements: Update requests to 2.11.1
- Fixed a bug when using iter_content with decode_unicode=True for
  streamed bodies would raise AttributeError. This bug was introduced in
  2.11.
- Strip Content-Type and Transfer-Encoding headers from the header block
  when following a redirect that transforms the verb from POST/PUT to
  GET.
2016-08-18 12:43:48 +02:00
Florian Bruhin
fe44ac86dc requirements: Update check-manifest to 0.32
- New config/command line option to ignore bad ideas (ignore-bad-ideas)
- Files named .hgsigs are ignored by default. Contributed by Jakub Wilk.
2016-08-16 09:15:28 +02:00
Florian Bruhin
160d4de33f tests-git requirements: Pin PyYAML 2016-08-16 09:14:12 +02:00
Florian Bruhin
5c766ff7da test requirements: Update httpbin, unpin Flask
httpbin
=======

- Allow /redirect-to to work with multiple methods
- Allow MD5 or SHA-256 to be chosen as algorithms for HTTP Digest Auth
- Set a 10MB limit on /drip

Flask
=====

Version 0.11.1
--------------

Bugfix release, released on June 7th 2016.

- Fixed a bug that prevented ``FLASK_APP=foobar/__init__.py`` from
  working.

Version 0.11
------------

Released on May 29th 2016, codename Absinthe.

- Added support to serializing top-level arrays to
  :func:`flask.jsonify`. This introduces a security risk in ancient
  browsers. See :ref:`json-security` for details.
- Added before_render_template signal.
- Added `**kwargs` to :meth:`flask.Test.test_client` to support passing
  additional keyword arguments to the constructor of
  :attr:`flask.Flask.test_client_class`.
- Added ``SESSION_REFRESH_EACH_REQUEST`` config key that controls the
  set-cookie behavior.  If set to ``True`` a permanent session will be
  refreshed each request and get their lifetime extended, if set to
  ``False`` it will only be modified if the session actually modifies.
  Non permanent sessions are not affected by this and will always
  expire if the browser window closes.
- Made Flask support custom JSON mimetypes for incoming data.
- Added support for returning tuples in the form ``(response, headers)``
  from a view function.
- Added :meth:`flask.Config.from_json`.
- Added :attr:`flask.Flask.config_class`.
- Added :meth:`flask.Config.get_namespace`.
- Templates are no longer automatically reloaded outside of debug mode. This
  can be configured with the new ``TEMPLATES_AUTO_RELOAD`` config key.
- Added a workaround for a limitation in Python 3.3's namespace loader.
- Added support for explicit root paths when using Python 3.3's namespace
  packages.
- Added :command:`flask` and the ``flask.cli`` module to start the local
  debug server through the click CLI system.  This is recommended over the old
  ``flask.run()`` method as it works faster and more reliable due to a
  different design and also replaces ``Flask-Script``.
- Error handlers that match specific classes are now checked first,
  thereby allowing catching exceptions that are subclasses of HTTP
  exceptions (in ``werkzeug.exceptions``).  This makes it possible
  for an extension author to create exceptions that will by default
  result in the HTTP error of their choosing, but may be caught with
  a custom error handler if desired.
- Added :meth:`flask.Config.from_mapping`.
- Flask will now log by default even if debug is disabled.  The log format is
  now hardcoded but the default log handling can be disabled through the
  ``LOGGER_HANDLER_POLICY`` configuration key.
- Removed deprecated module functionality.
- Added the ``EXPLAIN_TEMPLATE_LOADING`` config flag which when enabled will
  instruct Flask to explain how it locates templates.  This should help
  users debug when the wrong templates are loaded.
- Enforce blueprint handling in the order they were registered for template
  loading.
- Ported test suite to py.test.
- Deprecated ``request.json`` in favour of ``request.get_json()``.
- Add "pretty" and "compressed" separators definitions in jsonify() method.
  Reduces JSON response size when JSONIFY_PRETTYPRINT_REGULAR=False by removing
  unnecessary white space included by default after separators.
- JSON responses are now terminated with a newline character, because it is a
  convention that UNIX text files end with a newline and some clients don't
  deal well when this newline is missing. See
  https://github.com/pallets/flask/pull/1262 -- this came up originally as a
  part of https://github.com/kennethreitz/httpbin/issues/168
- The automatically provided ``OPTIONS`` method is now correctly disabled if
  the user registered an overriding rule with the lowercase-version
  ``options``.
- ``flask.json.jsonify`` now supports the ``datetime.date`` type.
- Don't leak exception info of already catched exceptions to context teardown
  handlers.
- Allow custom Jinja environment subclasses.
- ``flask.g`` now has ``pop()`` and ``setdefault`` methods.
- Turn on autoescape for ``flask.templating.render_template_string`` by default.
- ``flask.ext`` is now deprecated.
- ``send_from_directory`` now raises BadRequest if the filename is invalid on
  the server OS.
- Added the ``JSONIFY_MIMETYPE`` configuration variable.
- Exceptions during teardown handling will no longer leave bad application
  contexts lingering around.

Version 0.10.2
--------------

(bugfix release, release date to be announced)

- Fixed broken `test_appcontext_signals()` test case.
- Raise an :exc:`AttributeError` in :func:`flask.helpers.find_package` with a
  useful message explaining why it is raised when a PEP 302 import hook is used
  without an `is_package()` method.
- Fixed an issue causing exceptions raised before entering a request or app
  context to be passed to teardown handlers.
- Fixed an issue with query parameters getting removed from requests in
  the test client when absolute URLs were requested.
- Made `@before_first_request` into a decorator as intended.
- Fixed an etags bug when sending a file streams with a name.
- Fixed `send_from_directory` not expanding to the application root path
  correctly.
- Changed logic of before first request handlers to flip the flag after
  invoking.  This will allow some uses that are potentially dangerous but
  should probably be permitted.
- Fixed Python 3 bug when a handler from `app.url_build_error_handlers`
  reraises the `BuildError`.
2016-08-15 19:38:55 +02:00
Florian Bruhin
355388226b flake8 requirements: Update pyparsing to 2.1.8
- Fixed issue in the optimization to _trim_arity, when the full
  stacktrace is retrieved to determine if a TypeError is raised in
  pyparsing or in the caller's parse action. Code was traversing
  the full stacktrace, and potentially encountering UnicodeDecodeError.

- Fixed bug in ParserElement.inlineLiteralsUsing, causing infinite
  loop with Suppress.

- Fixed bug in Each, when merging named results from multiple
  expressions in a ZeroOrMore or OneOrMore. Also fixed bug when
  ZeroOrMore expressions were erroneously treated as required
  expressions in an Each expression.

- Added a few more inline doc examples.

- Improved use of runTests in several example scripts.
2016-08-15 19:37:09 +02:00
Florian Bruhin
69d772cbee requirements: Update setuptools to 25.2.0 2016-08-12 23:32:10 +02:00
Florian Bruhin
273b7c01ca flake8 requirements: Update pyparsing to 2.1.7
- Fixed regression reported by Andrea Censi (surfaced in PyContracts
  tests) when using ParseSyntaxExceptions (raised when using operator '-')
  with packrat parsing.

- Minor fix to oneOf, to accept all iterables, not just space-delimited
  strings and lists. (If you have a list or set of strings, it is
  not necessary to concat them using ' '.join to pass them to oneOf,
  oneOf will accept the list or set or generator directly.)
2016-08-11 19:26:19 +02:00
Florian Bruhin
81eb53a152 test reqs: Update pytest-rerunfailures to 2.0.1
- Prepare CLI options to pytest 3.0, to avoid a deprecation warning.
- Fix error due to missing CHANGES.rst when creating the source
  distribution by adding a MANIFEST.in.
2016-08-10 11:26:19 +02:00
Florian Bruhin
a39e38e29b requiremnents-tests-git: Pin Flask to 0.11.0
This wasn't actually an issue while testing as we turned off BDD tests
due to pytest-bdd not being pytest 3.0 compatible.
2016-08-10 11:22:37 +02:00
Florian Bruhin
c54f1fe1bb test requirements: Update pytest-xvfb to 0.2.1
This uses /tmp as hardcoded temp dir like X11 does.
2016-08-09 22:11:45 +02:00
Florian Bruhin
3b8189d638 test requirements: Update pytest-repeat to 0.4.0
Fix deprecation warning present in pytest 3.0 for type argument in addoption
2016-08-09 20:53:37 +02:00
Florian Bruhin
ee24bdb1c8 flake8 requirements: Update pyparsing to 2.1.6
- *Major packrat upgrade*, inspired by patch provided by Tal Einat -
  many, many, thanks to Tal for working on this! Tal's tests show
  faster parsing performance (2X in some tests), *and* memory reduction
  from 3GB down to ~100MB! Requires no changes to existing code using
  packratting. (Uses OrderedDict, available in Python 2.7 and later.
  For Python 2.6 users, will attempt to import from ordereddict
  backport. If not present, will implement pure-Python Fifo dict.)

- Minor API change - to better distinguish between the flexible
  numeric types defined in pyparsing_common, I've changed "numeric"
  (which parsed numbers of different types and returned int for ints,
  float for floats, etc.) and "number" (which parsed numbers of int
  or float type, and returned all floats) to "number" and "fnumber"
  respectively. I hope the "f" prefix of "fnumber" will be a better
  indicator of its internal conversion of parsed values to floats,
  while the generic "number" is similar to the flexible number syntax
  in other languages. Also fixed a bug in pyparsing_common.numeric
  (now renamed to pyparsing_common.number), integers were parsed and
  returned as floats instead of being retained as ints.

- Fixed bug in upcaseTokens and downcaseTokens introduced in 2.1.5,
  when the parse action was used in conjunction with results names.
  Reported by Steven Arcangeli from the dql project, thanks for your
  patience, Steven!

- Major change to docs! After seeing some comments on reddit about
  general issue with docs of Python modules, and thinking that I'm a
  little overdue in doing some doc tuneup on pyparsing, I decided to
  following the suggestions of the redditor and add more inline examples
  to the pyparsing reference documentation. I hope this addition
  will clarify some of the more common questions people have, especially
  when first starting with pyparsing/Python.

- Deprecated ParseResults.asXML. I've never been too happy with this
  method, and it usually forces some unnatural code in the parsers in
  order to get decent tag names. The amount of guesswork that asXML
  has to do to try to match names with values should have been a red
  flag from day one. If you are using asXML, you will need to implement
  your own ParseResults->XML serialization. Or consider migrating to
  a more current format such as JSON (which is very easy to do:
  results_as_json = json.dumps(parse_result.asDict()) Hopefully, when
  I remove this code in a future version, I'll also be able to simplify
  some of the craziness in ParseResults, which IIRC was only there to try
  to make asXML work.

- Updated traceParseAction parse action decorator to show the repr
  of the input and output tokens, instead of the str format, since
  str has been simplified to just show the token list content.

  (The change to ParseResults.__str__ occurred in pyparsing 2.0.4, but
  it seems that didn't make it into the release notes - sorry! Too
  many users, especially beginners, were confused by the
  "([token_list], {names_dict})" str format for ParseResults, thinking
  they were getting a tuple containing a list and a dict. The full form
  can be seen if using repr().)

  For tracing tokens in and out of parse actions, the more complete
  repr form provides important information when debugging parse actions.
2016-08-08 23:54:42 +02:00
Florian Bruhin
2aa5804418 requirements: Update requests to 2.11.0
Improvements

- Added support for the ALL_PROXY environment variable.
- Reject header values that contain leading whitespace or newline characters to
  reduce risk of header smuggling.

Bugfixes

- Fixed occasional TypeError when attempting to decode a JSON response that
  occurred in an error case. Now correctly returns a ValueError.
- Requests would incorrectly ignore a non-CIDR IP address in the NO_PROXY
  environment variables: Requests now treats it as a specific IP.
- Fixed a bug when sending JSON data that could cause us to encounter obscure
  OpenSSL errors in certain network conditions (yes, really).
- Added type checks to ensure that iter_content only accepts integers and None
  for chunk sizes.
- Fixed issue where responses whose body had not been fully consumed would have
  the underlying connection closed but not returned to the connection pool,
  which could cause Requests to hang in situations where the HTTPAdapter had
  been configured to use a blocking connection pool.

Miscellaneous

- Updated bundled urllib3 to 1.16.
- Some previous releases accidentally accepted integers as acceptable header
  values. This release does not.
2016-08-08 23:52:49 +02:00
Florian Bruhin
ded2143761 test requirements: Update pytest-cov to 2.3.1
- Fixed regression causing spurious errors when xdist was used.
- Fixed DeprecationWarning about incorrect addoption use.
- Fixed deprecated use of funcarg fixture API.
2016-08-08 15:20:04 +02:00
Florian Bruhin
a18104529a tox requirements: Update virtualenv to 15.0.3 2016-08-07 11:38:22 +02:00
Florian Bruhin
8206efc0c2 requirements: Update setuptools to 25.1.6 2016-08-07 11:37:19 +02:00
Florian Bruhin
747be14118 Also add qutebrowser dependencies to tests-git req 2016-08-05 14:32:41 +02:00
Florian Bruhin
959b076236 Add requirements-test-git.txt
This is useful to track some breakage in test dependencies before stuff
actually goes haywire.
2016-08-05 14:29:00 +02:00
Florian Bruhin
2114230739 requirements: Update setuptools to 25.1.4 2016-08-05 12:42:08 +02:00
Florian Bruhin
7b7ff53fc1 test requirements: Update pytest-mock to 1.2
- Try to import mock first instead of unittest.mock. This gives the user
  flexibility to install a newer mock version from PyPI instead of using
  the one available in the Python distribution.
- mock.sentinel is now aliased as mocker.sentinel for convenience.
2016-08-03 09:27:50 +02:00
Florian Bruhin
d3192077b4 test requirements: Update beautifulsoup4 to 4.5.1
* Fixed a reported (but not duplicated) bug involving processing
  instructions fed into the lxml HTML parser.
2016-08-03 09:27:24 +02:00
Florian Bruhin
53b0cf85ef pylint requirements: Add github3.py 2016-08-02 22:45:08 +02:00
Florian Bruhin
0345e62348 requirements: Update setuptools to 25.1.3 2016-08-02 16:34:35 +02:00
Florian Bruhin
e99d75c18d requirements: Update setuptools to 25.1.2 2016-08-02 09:45:11 +02:00
Florian Bruhin
12f506073a flake8/pylint reqs: Update mccabe to 0.5.2
When opening files ourselves, make sure we always name the file variable
2016-08-01 10:06:08 +02:00
Florian Bruhin
2e40bd3a36 tox: Update pytest-qt to 2.0.0
See #1702.

Breaking Changes

With pytest-qt 2.0, we changed some defaults to values we think are much
better, however this required some backwards-incompatible changes:

- pytest-qt now defaults to using PyQt5 if PYTEST_QT_API is not set.
  Before, it preferred PySide which is using the discontinued Qt4.
- Python 3 versions prior to 3.4 are no longer supported.
- The @pytest.mark.qt_log_ignore mark now defaults to extend=True, i.e.
  extends the patterns defined in the config file rather than overriding
  them. You can pass extend=False to get the old behaviour of overriding
  the patterns.
- qtbot.waitSignal now defaults to raising=True and raises an exception
  on timeouts. You can set qt_wait_signal_raising = false in your config
  to get back the old behaviour.
- PYTEST_QT_FORCE_PYQT environment variable is no longer supported. Set
  PYTEST_QT_API to the appropriate value instead or the new qt_api
  configuration option in your pytest.ini file.

New Features

- From this version onward, pytest-qt is licensed under the MIT license.
- New qtmodeltester fixture to test QAbstractItemModel subclasses.
- waitSignal and waitSignals can receive an optional callback that can
  evaluate if the arguments of emitted signals should resume execution
  or not.
- Now which Qt binding pytest-qt will use can be configured by the
  qt_api config option.
- While pytestqt.qt_compat is an internal module and shouldn't be
  imported directly, it is known that some test suites did import it.
  This module now uses a lazy-load mechanism to load Qt classes and
  objects, so the old symbols (QtCore, QApplication, etc.) are no longer
  available from it.

Other Changes

- Exceptions caught by pytest-qt in sys.excepthook are now also printed
  to stderr, making debugging them easier from within an IDE.
2016-07-29 09:12:06 +02:00
Florian Bruhin
f218d5d4b6 Try harder to pin pip/setuptools 2016-07-29 09:03:31 +02:00
Florian Bruhin
3aa5eb86fb requirements: Update mccabe to 0.5.1
- Set default maximum complexity to -1 on the class itself
2016-07-28 15:55:41 +02:00
Florian Bruhin
263ecee1a3 flake8 reqs: Update flake8-string-format to 0.2.3
Properly register with Flake8 so it will be selected on Flake8 3.x by
default and it can be selected on Flake8 2.x.
2016-07-27 19:41:24 +02:00
Florian Bruhin
7605a4fb0c tests: Use pytest-warnings to handle warnings 2016-07-27 18:28:08 +02:00
Florian Bruhin
2970bbcf03 codeov/test requirements: Update coverage to 4.2
Version 4.2
------------

- Since concurrency=multiprocessing uses subprocesses, options specified
  on the coverage.py command line will not be communicated down to them.
  Only options in the configuration file will apply to the subprocesses.
  Previously, the options didn't apply to the subprocesses, but there
  was no indication. Now it is an error to use
  --concurrency=multiprocessing and other run-affecting options on the
  command line. This prevents failures like those reported in issue 495.
- Filtering the HTML report is now faster, thanks to Ville Skyttä.

Version 4.2b1
-------------

Work from the PyCon 2016 Sprints!

- BACKWARD INCOMPATIBILITY: the coverage combine command now ignores an
  existing .coverage data file. It used to include that file in its
  combining. This caused confusing results, and extra tox "clean" steps.
  If you want the old behavior, use the new coverage combine --append
  option.
- The concurrency option can now take multiple values, to support
  programs using multiprocessing and another library such as eventlet.
  This is only possible in the configuration file, not from the command
  line. The configuration file is the only way for sub-processes to all
  run with the same options.
- Using a concurrency setting of multiprocessing now implies --parallel
  so that the main program is measured similarly to the sub-processes.
- When using automatic subprocess measurement, running coverage commands
  would create spurious data files. This is now fixed.
- A new configuration option, report:sort, controls what column of the
  text report is used to sort the rows.
- The HTML report has a more-visible indicator for which column is being
  sorted.
- If the HTML report cannot find the source for a file, the message now
  suggests using the -i flag to allow the report to continue.
- When reports are ignoring errors, there's now a warning if a file
  cannot be parsed, rather than being silently ignored.
- A new option for coverage debug is available: coverage debug config
  shows the current configuration.
- Running coverage as a module (python -m coverage) no longer shows the
  program name as __main__.py.
- The test_helpers module has been moved into a separate pip-installable
  package: unittest-mixins.
2016-07-27 06:37:02 +02:00
Florian Bruhin
94f006a675 pylint requirements: Update astroid to 1.4.8
* Add `returns` into the proper order in FunctionDef._astroid_fields

  The order is important, since it determines the last child,
  which in turn determines the last line number of a scoped node.
2016-07-27 06:32:29 +02:00
Florian Bruhin
a6af9d7d35 flake8 reqs: Undo accidental pep8 downgrade 2016-07-26 16:51:45 +02:00
Florian Bruhin
d19c7012a5 flake8 reqs: Update flake8-docstrings to 1.0.2
- Use pycodestyle to get standard-in.
2016-07-26 16:51:19 +02:00
Florian Bruhin
b30773aa68 flake8 requirements: Add comment for pep8 pin 2016-07-26 16:14:21 +02:00
Florian Bruhin
54b9ead0d0 flake8 reqs: Update flake8-docstrings to 1.0.1
1.0.1
-----

Make sure this works out of the box (is enabled by default) with
Flake8 3.0

1.0.0
-----

Switch dependency name to pydocstyle. pep257 was renamed to pydocstyle,
this update switches the requirement to that new package name. Since
we’re swapping out dependencies, we’ve issued a major version bump.
2016-07-26 16:12:23 +02:00
Florian Bruhin
ded733c674 test requirements: Update CherryPy to 7.1.0
Implement systemd's socket activation mechanism for CherryPy servers,
based on work sponsored by Endless Computers.

Socket Activation allows one to setup a system so that systemd will sit
on a port and start services 'on demand' (a little bit like inetd and
xinetd used to do).
2016-07-25 22:59:28 +02:00
Florian Bruhin
c618983b3d flake8 requirements: Update flake8-tuple to 0.2.12
flake8>=3.0.0 compatibility
2016-07-25 18:07:41 +02:00
Florian Bruhin
b8ea3d3c39 flake8 requirements: Pin flake8 properly 2016-07-25 18:07:31 +02:00
Florian Bruhin
3efb41f743 flake8 requirements: Filter to flake8 < 3.0 2016-07-25 16:39:30 +02:00
Florian Bruhin
9f45a27a2a test requirements: Update CherryPy to 7.0.0
7.0.0
-----

Removed the long-deprecated backward compatibility for
legacy config keys in the engine. Use the config for the
namespaced-plugins instead:

 - autoreload_on -> autoreload.on
 - autoreload_frequency -> autoreload.frequency
 - autoreload_match -> autoreload.match
 - reload_files -> autoreload.files
 - deadlock_poll_frequency -> timeout_monitor.frequency

6.2.1
-----

Fix KeyError in Bus.publish when signal handlers set in config.
2016-07-25 13:06:32 +02:00
Florian Bruhin
811361dbbe test requirements: Update beautifulsoup4 to 4.5.0
* Beautiful Soup is no longer compatible with Python 2.6. This
  actually happened a few releases ago, but it's now official.

* Beautiful Soup will now work with versions of html5lib greater than
  0.99999999.

* If a search against each individual value of a multi-valued
  attribute fails, the search will be run one final time against the
  complete attribute value considered as a single string. That is, if
  a tag has class="foo bar" and neither "foo" nor "bar" matches, but
  "foo bar" does, the tag is now considered a match.

  This happened in previous versions, but only when the value being
  searched for was a string. Now it also works when that value is
  a regular expression, a list of strings, etc.

* Fixed a bug that deranged the tree when a whitespace element was
  reparented into a tag that contained an identical whitespace
  element.

* Added support for CSS selector values that contain quoted spaces,
  such as tag[style="display: foo"].

* Corrected handling of XML processing instructions.

* Corrected an encoding error that happened when a BeautifulSoup
  object was copied.

* The contents of <textarea> tags will no longer be modified when the
  tree is prettified.

* When a BeautifulSoup object is pickled but its tree builder cannot
  be pickled, its .builder attribute is set to None instead of being
  destroyed. This avoids a performance problem once the object is
  unpickled.

* Specify the file and line number when warning about a
  BeautifulSoup object being instantiated without a parser being
  specified.

* The `limit` argument to `select()` now works correctly, though it's
  not implemented very efficiently.

* Fixed a Python 3 ByteWarning when a URL was passed in as though it
  were markup. Thanks to James Salter for a patch and
  test.

* We don't run the check for a filename passed in as markup if the
  'filename' contains a less-than character; the less-than character
  indicates it's most likely a very small document.
2016-07-20 14:07:01 +02:00
Florian Bruhin
d271c31edf pylint requirements: Update pylint to 1.6.4
* Recurse into all the ancestors when checking if an object is an exception

  Since we were going only into the first level, we weren't inferring
  when a class used a metaclass which defined a base Exception class
  for the aforementioned class.
2016-07-19 19:22:25 +02:00
Florian Bruhin
4161f4d6eb test requirements: Update CherryPy to 6.2.0
* Added tool to automatically convert request params based on type
  annotations (primarily in Python 3). For example:

    @cherrypy.tools.params()
    def resource(self, limit: int):
        assert isinstance(limit, int)
2016-07-19 09:36:51 +02:00
Florian Bruhin
70f14329e3 pylint requirements: Update pylint to 1.6.3
* Do not crash when inferring uninferable exception types for docparams
  extension
2016-07-19 09:24:51 +02:00
Florian Bruhin
f597b052c6 test requirements: Update CherryPy to 6.1.1
Fix issue where autoreload fails when the host interpreter for CherryPy
was launched using ``python -m``.
2016-07-17 12:00:54 +02:00
Florian Bruhin
321e5319c6 pylint requirements: Update pylint to 1.6.2
* Do not crash when printing the help of options with default regular
  expressions
* More granular versions for deprecated modules.
* Do not crash in docparams when we can't infer the exception types.
2016-07-15 11:06:46 +02:00
Florian Bruhin
a8dc940b73 test/vulture reqs: Update vulture to 0.10
* Detect unused function and method arguments.
* Detect unused *args and **kwargs parameters.
* Change license from GPL to MIT.
2016-07-14 23:17:39 +02:00
Florian Bruhin
2848ab1904 test requirements: Update CherryPy to 6.1.0
* Combined wsgiserver2 and wsgiserver3 modules into a single module,
  `cherrypy.wsgiserver`.
2016-07-14 07:07:00 +02:00
Florian Bruhin
a436468026 test requirements: Update hypothesis to 3.4.2
- Test functions defined using @given can now be called from other
  threads
- Attempting to delete a settings property would previously have
  silently done the wrong thing. Now it raises an AttributeError.
- Creating a settings object with a custom database_file parameter was
  silently getting ignored and the default was being used instead. Now
  it’s not.
2016-07-13 20:21:20 +02:00
Florian Bruhin
4328169274 flake8 requirements: Get rid of ebb-lint
We've had many checks disabled - these are the ones we actually lose:

    L104
    Docstrings must use Napoleon, not reStructuredText fields.

    L205
    __init__.py is not allowed to contain function or class definitions.

    L206
    Implicit relative imports are not allowed.

    L208
    Pokémon exception handling is always a mistake. If the intent is
    really to catch and ignore exceptions, explicitly name which
    exception types to silence.

    L209
    return, del, raise, assert, print (in python 2, without
    print_function) yield, and yield from are statements, not functions,
    and as such, do not require parentheses.

    L210
    Instead of intentionally relying on the side effects of map, filter,
    or a comprehension, write an explicit for loop.

    L211
    Using map or filter with a lambda as the first argument is always
    better written as list comprehension or generator expression. An
    expression is more readable and extensible, and less importantly,
    doesn't incur as much function call overhead.

    L212
    Using @staticmethod is always wrong.

    L301
    Files must end with a trailing newline.

    L303
    noqa is ignored, and as such, # noqa comments should be deleted to
    reduce pointless noise.

However, most of those are also checked by pylint (and the rest I don't
really care about), and ebb-lint increases flake8's runtime a lot
(45s -> almost 2min).
2016-07-13 07:24:10 +02:00
Florian Bruhin
038f803180 flake8 requirements: Update flake8-putty to 0.4.0
- Microsoft Windows filename selector fixes, with Appveyor CI testing
- Allow multiple codes to be disabled by per-line comments
- Allow comment after each rule line
- Prevent use with flake8 v3
- Support both pep8 and pycodestyle in test suite
2016-07-12 14:16:04 +02:00
Florian Bruhin
63b8d225e8 pylint requirements: pylint 1.6
Closes #1632.

new: mccabe
new: isort
deleted: colorama

astroid 1.4.7
-------------

* Stop saving assignment locals in ExceptHandlers, when the context is a store.

  This fixes a tripping case, where the RHS of a ExceptHandler can be redefined
  by the LHS, leading to a local save. For instance, ``except KeyError, exceptions.IndexError``
  could result in a local save for IndexError as KeyError, resulting in potential unexpected
  inferences. Since we don't lose a lot, this syntax gets prohibited.

pylint 1.6.0
------------

* Added a new extension, `pylint.extensions.mccabe`, for warning
  about complexity in code.

* Deprecate support for --optimize-ast.
* Deprecate support for the HTML output.
* Deprecate support for --output-files.

* Fixed a documentation error for the check_docs extension.

* Made the list of property-defining decorators configurable.

* Fix a bug where the top name of a qualified import was detected as unused variable.

* bad-builtin is now an extension check.

* generated-members support qualified name through regular expressions.

  For instance, one can specify a regular expression as --generated-members=astroid.node_classes.*
  for ignoring every no-member error that is accessed as in `astroid.node_classes.missing.object`.

* Add the ability to ignore files based on regex matching, with the new ``--ignore-patterns``
  option.

  This allows for multiple ignore patterns to be specified. Rather than
  clobber the existing ignore option, we introduced a new one called
  ignore-patterns.

* Added a new error, 'trailing-newlines', which is emitted when a file
  has trailing new lines.

* Add a new option, 'redefining-builtins-modules', for controlling the modules
  which can redefine builtins, such as six.moves and future.builtins.

* 'reimported' is emitted when the same name is imported from different module.

* Add a new recommendation checker, 'consider-iterating-dictionary', which is emitted
  which is emitted when a dictionary is iterated through .keys().

* Use the configparser backport for Python 2

  This fixes a problem we were having with comments inside values, which is fixed
  in Python 3's configparser.

* A new error was added, 'invalid-length-returned', when the `__len__`
  special method returned something else than a non-negative number.

* Switch to using isort internally for wrong-import-order.

* check_docs extension can find constructor parameters in __init__.

* Don't warn about invalid-sequence-index if the indexed object has unknown base
  classes.

* Don't crash when checking, for super-init-not-called, a method defined in an if block.

* Do not emit import-error or no-name-in-module for fallback import blocks by default.

  Until now, we warned with these errors when a fallback import block (a TryExcept block
  that contained imports for Python 2 and 3) was found, but this gets cumbersome when
  trying to write compatible code. As such, we don't check these blocks by default,
  but the analysis can be enforced by using the new ``--analyse-fallback-block`` flag.

pylint 1.6.1
------------

* Use environment markers for supporting conditional dependencies.
2016-07-11 13:00:08 +02:00
Florian Bruhin
216d8c3c13 test requirements: Update hypothesis to 3.4.1
On Windows when running two Hypothesis processes in parallel (e.g. using
pytest-xdist) they could race with each other and one would raise an
exception due to the non-atomic nature of file renaming on Windows and
the fact that you can't rename over an existing file. This is now fixed.
2016-07-11 12:45:47 +02:00
Florian Bruhin
60cc72b5a6 test requirements: Update pytest-cov to 2.3.0
- Add support for specifying output location for html, xml, and annotate
  report.
- Fix bug hiding test failure when cov-fail-under failed.
- For coverage >= 4.0, match the default behaviour of coverage report
  and error if coverage fails to find the source instead of just
  printing a warning.
- Fixed bug occurred when bare --cov parameter was used with xdist.
- Add support for skip_covered and added --cov-report=term-skip-covered
  command line options.
2016-07-06 00:18:13 +02:00
Florian Bruhin
294560ec6d flake8 requirements: Update flake8-tuple to 0.2.11
- fixed: non exists file raise IOError
- fixed: compatibility with older versions of flake8
2016-07-06 00:16:43 +02:00
Florian Bruhin
30131f0ec4 flake8 reqs: Update flake8-tidy-imports to 1.0.2
- Fixed I201 rule to detect banned imports like from x import y.
2016-07-05 08:39:18 +02:00
Florian Bruhin
eb990d4bd5 Revert "flake8 reqs: Remove obsolete comment"
This reverts commit 3a481a2fa5.
2016-07-05 08:35:58 +02:00
Florian Bruhin
3a481a2fa5 flake8 reqs: Remove obsolete comment 2016-07-03 16:09:53 +02:00
Florian Bruhin
dce3e0fb78 flake8 reqs: Update flake8-pep3101 to 0.4
- Rename pep8 to pycodestyle.
- Add support for python 3.5.
- Add flake8 pypi classifier.
- Drop python 3.3 and 3.4 support (only testing it probably works just
  fine).
- Fix travis and coveralls to work properly with python 3.5.
2016-07-03 16:09:16 +02:00
Florian Bruhin
596a3841dd flake8 reqs: Update flake8-future-import tp 0.4.3
- Restore old option name behaviour that an option like min-version in
  the tox.ini is recognized.
2016-07-03 16:06:28 +02:00
Florian Bruhin
39fee34b91 flake8 reqs: Update flake8-tidy-imports to 1.0.1
- I201 rule that allows you to configure complaining about certain
  modules being imported, e.g. if you are moving from Python 2 to 3 you
  could stop urlparse being imported in favour of
  six.moves.urllib.parse.
2016-07-01 21:58:18 +02:00
Florian Bruhin
1c2aca5e82 flake8 reqs: Blacklist flake8-future-import 0.4.2
0.4.2 ignores config options for flake8 2.6.2:
https://github.com/xZise/flake8-future-import/issues/8#issuecomment-229921673
2016-07-01 13:18:39 +02:00
Florian Bruhin
b527cf53d2 flake8 requirements: Update flake8-tuple to 0.2.10
pep8 -> pycodestyle
2016-06-30 18:33:58 +02:00
Florian Bruhin
1209d4192f test requirements: Update pytest-repeat to 0.3.0 2016-06-30 17:56:19 +02:00
Florian Bruhin
8d9a699b5b test requirements: Update to pytest-bdd 2.17.0
This also allows us to have dynamic pyqt>=5.3.1 etc. tags.
2016-06-30 14:02:30 +02:00
Florian Bruhin
03fbacd93c requirements: Update vulture to 0.9
* Don't flag attributes as unused if they are used as global variables in
  another module.
* Don't consider "True" and "False" variable names.
* Abort with error message when invoked on .pyc files.

This means we can remove the whitelisted globals in run_vulture.py and
the associated xfailing test.

We also needed to adjust run_vulture.py slightly as the file attribute
got renamed to filename.
2016-06-29 23:44:39 +02:00
Florian Bruhin
cd136b7b33 flake8 reqs: Update flake8-copyright to 0.2.0
Add flake8 v3.x compatibility
2016-06-28 20:48:52 +02:00
Florian Bruhin
72e5bf35e1 flake8 requirements: Update pep8-naming to 0.4.1 2016-06-26 15:13:12 +02:00
Florian Bruhin
eda6fc6e17 flake8 requirements: Update flake8 to 2.6.2
- Update the config files to search for to include setup.cfg and
  tox.ini. This was broken in 2.5.5 when we stopped passing config_file
  to our Style Guide
2016-06-26 00:22:41 +02:00
Florian Bruhin
d8a01d84b3 test requirements: Update CherryPy to 6.0.2
* Correct additional typos.
2016-06-24 11:17:03 +02:00
Florian Bruhin
2b285740d9 Update flake8 requirements
flake8 2.6.0
------------

- Switch to pycodestyle as all future pep8 releases will use that
  package name
- Allow for Windows users on select versions of Python to use --jobs and
  multiprocessing
- Update bounds on McCabe
- Update bounds on PyFlakes and blacklist known broken versions
- Handle new PyFlakes warning with a new error code: F405

flake8-copyright 0.1.1
----------------------

- Set line & column to 1,1 to avoid a flake8 error
- Support multi-year copyright notices

flake8-docstrings 0.2.8
-----------------------

- Try to import pydocstyle (not pycodestyle) as pep257
- Import either pycodestyle or pep8 to use stdin_get_value. This fixes
  the problem for newer Flake8’s (2.6.0+) and older ones.

pycodestyle 2.0.0
-----------------

Announcements:

- Repository renamed to `pycodestyle`
- Added joint Code of Conduct as member of PyCQA

Changes:

- Added tox test support for Python 3.5 and pypy3
- Added check E275 for whitespace on `from ... import ...` lines
- Added W503 to the list of codes ignored by default ignore list
- Removed use of project level `.pep8` configuration file

Bugs:

- Fixed bug with treating `~` operator as binary
- Identify binary operators as unary

Other changes
-------------

- Unpin mccabe as the flake8 requirement got updated
- Pin pep8 as an older version gets installed otherwise
- DIsable D403 warning (false-positivies)
2016-06-20 07:16:59 +02:00
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
278093afae Add requirements-qutebrowser.txt-raw 2016-06-08 00:03:07 +02:00
Florian Bruhin
4bae659fbe Re-add requests to pylint envs
This is needed because there's a script using requests
2016-06-08 00:02:43 +02:00
Florian Bruhin
cfb4ebb312 Add missing replace to requirements-pylint.txt-raw 2016-06-07 23:47:10 +02:00
Florian Bruhin
164d7bea4b recompile_requirements: Add replace command 2016-06-07 23:40:00 +02:00
Florian Bruhin
19037e8b75 Remove old .in requirements file 2016-06-07 23:32:35 +02:00
Florian Bruhin
81ccaff9c6 requirements: Update filter for Flask 2016-06-07 23:26:04 +02:00
Florian Bruhin
0819ed36f0 Update requirements README.md 2016-06-07 23:21:50 +02:00
Florian Bruhin
1c6b4da706 Use #@ as chars 2016-06-07 23:21:50 +02:00
Florian Bruhin
6249436bde Rename raw-requirements files
This hopefully means they're not picked up on requires.io.
2016-06-07 23:21:50 +02:00
Florian Bruhin
7571040316 Also ignore MarkupSafe dependency 2016-06-07 23:10:33 +02:00
Florian Bruhin
34a6451806 Add special #! commands to recompile_requirements 2016-06-07 23:08:14 +02:00
Florian Bruhin
136cb19814 reqs: Comment out ignored dependencies 2016-06-07 22:53:17 +02:00
Florian Bruhin
1a26c8c61f Add a script to compile requirement files 2016-06-07 22:45:59 +02:00
Florian Bruhin
b759f481c4 test requirements: Update decorator to 4.0.10
- Improved the documentation thanks to Tony Goodchild (zearin) who also
  provided a much better CSS than the one I was using.
2016-06-07 08:24:53 +02:00
Florian Bruhin
5004a571c4 test requirements: Update CherryPy to 6.0.1
* Correct typos in ``@cherrypy.expose`` decorators.
2016-06-07 08:24:12 +02:00
Florian Bruhin
64fc1a3277 Revert "test requirements: Add pdbpp"
This reverts commit c43bfffd5c.
It uses setuptools_scm which causes... problems.
2016-06-07 06:21:54 +02:00
Florian Bruhin
9787e54238 Revert "test requirements: Also add pdbpp dependencies"
This reverts commit d77b9bff49.
2016-06-07 06:21:50 +02:00
Florian Bruhin
d77b9bff49 test requirements: Also add pdbpp dependencies 2016-06-06 23:22:28 +02:00
Florian Bruhin
c43bfffd5c test requirements: Add pdbpp
pdb sometimes segfaults for some reason - pdbpp works fine and gives us
nicer debugging.
2016-06-06 23:20:44 +02:00
Florian Bruhin
a5f12430ad pylint reqs: Update pylint/astroid to 1.4.6/1.5.6
pylint:

* config files with BOM markers can now be read.
* epylint.py_run does not crash on big files, using .communicate()
  instead of .wait()

astroid:

* Fix a crash which occurred when the class of a namedtuple could not be
  inferred.
* Functional form of enums support accessing values through __call__.
* Brain tips for the ssl library.
2016-06-06 17:14:59 +02:00
Florian Bruhin
753036067d test requirements: Update CherryPy to 6.0.0
* Setuptools is now required to build CherryPy. Pure distutils installs
  are no longer supported. This change allows CherryPy to depend on
  other packages and re-use code from them. It's still possible to
  install pre-built CherryPy packages (wheels) using pip without
  Setuptools.
* Back out changes attempting to fix redirects with Unicode URLs, as it
  also had the unintended consequence of causing the 'Location' to be
  ``bytes`` on Python 3.
* ``cherrypy.expose`` now works on classes.
* ``cherrypy.config`` decorator is now used throughout the code
  internally.
2016-06-06 08:25:41 +02:00
Florian Bruhin
2df85e75cb test requirements: Update CherryPy to 5.6.0
* ``@cherrypy.expose`` now will also set the exposed
  attribute on a class.
* Rewrote all tutorials and internal usage to prefer
  the decorator usage of ``expose`` rather than setting
  the attribute explicitly.
* Removed test-specific code from tutorials.
2016-06-05 23:15:29 +02:00
Florian Bruhin
546c172e5e test requirements: Update CherryPy to 5.5.0
* Fix for filenames with semicolons and quote characters in filenames
  found in headers.
* Added decorator for registering tools.
* Use simpler encoding rules for SCRIPT_NAME and PATH_INFO environment
  variables in CherryPy Tree allowing non-latin characters to pass even
  when ``wsgi.version`` is not ``u.0``.
* Ensure that multipart fields are decoded even when cached in a file.
2016-06-05 20:44:04 +02:00
Florian Bruhin
24db93f3eb test req: Update pytest-mock to 1.1
- From this version onward, pytest-mock is licensed under the MIT
  license.
- Now the plugin also adds introspection information on differing call
  arguments when calling helper methods such as assert_called_once_with.
  The extra introspection information is similar to pytest's and can be
  disabled with the mock_traceback_monkeypatch option.
- mocker.stub() now allows passing in the name for the constructed Mock
  object instead of having to set it using the internal _mock_name
  attribute directly. This is useful for debugging as the name is used
  in the mock's repr string as well as related assertion failure
  messages.
- Monkey patching mock module for friendlier tracebacks is automatically
  disabled with the --tb=native option. The underlying mechanism used to
  suppress traceback entries from mock module does not work with that
  option anyway plus it generates confusing messages on Python 3.5 due
  to exception chaining.
- mock.call is now aliased as mocker.call for convenience.
2016-06-02 11:19:22 +02:00
Florian Bruhin
1b9a0367e7 flake8 req: Update sortedcontainers to 1.5.3 2016-06-02 11:18:49 +02:00
Florian Bruhin
a19bb40b50 requirements: Update codecov to 2.0.5
- fix detecting merge commits on all CI, not just Travis
- Use %20 for encoding spaces [appveyor]
2016-06-02 11:16:52 +02:00
Florian Bruhin
b3c91d4b81 tox: Update pytest to 2.9.2
* skip tests where one parameterize dimension was empty
* Fix Xfail does not work with condition keyword argument.
* Fix win32 path issue when puttinging custom config file with absolute
  path in ``pytest.main("-c your_absolute_path")``.
* Fix maximum recursion depth detection when raised error class is not
  aware of unicode/encoded bytes.
* Fix ``pytest.mark.skip`` mark when used in strict mode.
* Minor improvements and fixes to the documentation.
* Fix ``--fixtures`` to show all fixture definitions as opposed to just
  one per fixture name.
2016-05-31 23:41:24 +02:00
Florian Bruhin
5c02f3655a requirements: Also update mccabe for pylint-master 2016-05-31 07:57:53 +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
800d069764 requirements: Blacklist Flask 0.11.0
See https://github.com/pallets/flask/issues/1825
2016-05-29 18:20:48 +02:00
Florian Bruhin
f10754fa77 Remove MarkupSafe pin in requirements-tests.txt
We already have that pinned in requirements.txt
2016-05-29 17:50:13 +02:00
Florian Bruhin
7180a6df0b requirements: Update pytest dependency pins
This adds MarkupSafe and removes termcolor and wheel.
2016-05-29 17:34:19 +02:00
Florian Bruhin
d008b2a86c requirements: Pin all pylint dependencies 2016-05-29 17:34:16 +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