Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Update #1355

Merged
merged 40 commits into from
Nov 6, 2017
Merged

Initial Update #1355

merged 40 commits into from
Nov 6, 2017

Conversation

pyup-bot
Copy link
Contributor

@pyup-bot pyup-bot commented Nov 6, 2017

This is my first visit to this fine repo so I have bundled all updates in a single pull request to make things easier for you to merge.

Close this pull request and delete the branch if you want me to start with single pull requests right away

Here's the executive summary:

Updates

Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need.

bravado_core 4.10.1 » 4.10.1 PyPI | Changelog | Repo
flake8 3.5.0 » 3.5.0 PyPI | Changelog | Repo
mock 2.0.0 » 2.0.0 PyPI | Repo
pytest 3.2.3 » 3.2.3 PyPI | Changelog | Repo | Homepage
pytest-cache 1.0 » 1.0 PyPI | Changelog | Repo | Docs
pytest-capturelog 0.7 » 0.7 PyPI | Repo
pytest-cover 3.0.0 » 3.0.0 PyPI | Changelog | Repo
pytest-sugar 0.9.0 » 0.9.0 PyPI | Changelog | Homepage
SQLAlchemy 1.1.15 » 1.1.15 PyPI | Changelog | Homepage
python-memcached 1.58 » 1.58 PyPI | Homepage
tox 2.9.1 » 2.9.1 PyPI | Changelog | Docs
WebTest 2.0.29 » 2.0.29 PyPI | Changelog | Homepage
werkzeug 0.12.2 » 0.12.2 PyPI | Changelog | Homepage
wheel 0.30.0 » 0.30.0 PyPI | Changelog | Repo
zest.releaser 6.12.5 » 6.12.5 PyPI | Changelog | Docs
zope.sqlalchemy 0.7.7 » 0.7.7 PyPI | Changelog | Homepage
setuptools 35.0.2 » 36.6.0 PyPI | Changelog | Repo
docutils 0.12 » 0.14 PyPI | Changelog | Homepage | Bugtracker
Sphinx 1.5.6 » 1.6.5 PyPI | Changelog | Homepage
sphinx_rtd_theme 0.2.4 » 0.2.4 PyPI | Changelog | Repo
sphinxcontrib-httpdomain 1.5.0 » 1.5.0 PyPI | Repo | Docs
kinto-redis 1.2.0 » 1.2.0 PyPI | Changelog | Repo
cornice 3.0.0 » 3.0.0 PyPI | Changelog | Repo | Docs
pyramid 1.9.1 » 1.9.1 PyPI | Changelog | Homepage
bcrypt 3.1.3 » 3.1.4 PyPI | Repo
certifi 2017.7.27.1 » 2017.11.5 PyPI | Homepage
cffi 1.11.0 » 1.11.2 PyPI | Changelog | Docs
jsonpointer 1.12 » 1.14 PyPI | Repo
newrelic 2.94.0.79 » 2.96.0.80 PyPI | Changelog | Homepage | Bugtracker
psycopg2 2.7.3.1 » 2.7.3.2 PyPI | Changelog | Homepage
raven 6.2.1 » 6.3.0 PyPI | Changelog | Repo
simplejson 3.11.1 » 3.12.0 PyPI | Changelog | Repo
waitress 1.0.2 » 1.1.0 PyPI | Changelog | Repo

Changelogs

bravado_core -> 4.10.1

4.10.1


  • Don't remove unrecognized configs; fixes compatibility with bravado - PR 218.

4.10.0


  • New config internally_dereference_refs that can significantly speed up unmarshalling. Currently disabled by default - PR 204.
  • Added support for new extension x-sensitive to scrub sensitive values from validation errors. Please check the documentation <http://bravado-core.readthedocs.io/en/latest/models.htmlsensitive-data>_ for further details - PR 213.
  • Fixed an issue that would cause validation errors if obj_type was None - PR 196.
  • Fixed handling of defaults for array parameters - PR 199.
  • Performance improvements - PR 207.

4.9.1


  • Properly marshal a model even if it's not created from the same Spec instance - PR 194.

4.9.0


  • type is no longer required. By default, validation will not be performed if type is omitted. This is configurable with default_type_to_object - Issue 166, 192, PR 183, 193

4.8.4


  • Make sure all models are properly tagged when flattening the spec - PR 191.

4.8.3


  • Improve spec flattening: recognize response objects and expose un-referenced models - PR 184.
  • Fix a bug when marshalling properties with no spec that have the value None - PR 189.

4.8.2


  • Fix marshalling of null values for properties with x-nullable set to true - Issue 185, PR 186. Thanks Jan Baraniewski for the contribution!
  • Add _asdict() method to each model, similar to what namedtuples have - PR 188.

4.8.1


  • Make unmarshalling objects roughly 30% faster - PR 182.

4.8.0


  • Add support for Swagger spec flattening - PR 177.
  • Fix handling of API calls that return non-JSON content (specifically text content) - PR 175. Thanks mostrows2 for your contribution!
  • Fix error message text when trying to unmarshal an invalid model - PR 179.

4.7.3


  • Fix support for object composition (allOf) for data passed in the request body - PR 167. Thanks Zi Li for your contribution!
  • Return the default value for an optional field missing in the response - PR 171.

4.7.2


  • Fix unmarshalling of null values for properties with no spec - Issue 163, PR 165.

4.7.1


  • Fix backward-incompatible Model API change which renames all model methods to have a single underscore infront of them. A deprecation warning has been added - Issue 160, PR 161. Thanks Adam Ever-Hadani for the contribution!

4.7.0


  • Added support for nullable fields in the format validator - PR 143. Thanks Adam Ever-Hadani
  • Add include_missing_properties configuration - PR 152
  • Consider default when unmarshalling - PR 154
  • Add discriminator support - PR 128, 159. Thanks Michael Jared Lumpe for your contribution
  • Make sure pre-commit hooks are installed and run when running tests - PR 155, 158

4.6.1


  • Fix unmarshalling empty array types - PR 148
  • Removed support for Python 2.6 - PR 147

4.6.0


  • Security Requirement validation (for ApiKey) - PR 124
  • Allow self as name for model property, adds new "create" alternate model constructor - Issue 125, PR 126.
  • Allow overriding of security specs - PR 121
  • Adds minimal support for responses with text/* content_type.

4.5.1


  • Add marshal and unmarshal methods to models - PR 113, 120.

4.5.0


  • Support for model composition through the allOf property - Issue 7, PR 63, 110. Thanks David Bartle for the initial contribution!
  • Fix issue with header parameter values being non-string types - PR 115.

4.4.0


  • Adds support for security scheme definitions, mostly focusing on the "apiKey" type - PR 112.

4.3.2


  • Fixes around unmarshalling, x-nullable and required behavior - Issue 108, PR 109. Big thanks to Zachary Roadhouse for the report and pull request!
  • Fix AttributeError when trying to unmarshal a required array param that's not present - PR 111.

4.3.1


  • Check if a parameter is bool-type before assuming it's a string - PR 107. Thanks to Nick DiRienzo for the pull request!

4.3.0


  • Add support for x-nullable - Issue 47, PR 64 and 103. Thanks to Andreas Hug for the pull request!
  • Fix support for vendor extensions at the path level - PR 95, 106. Thanks to Mikołaj Siedlarek for the initial pull request!

4.2.5


  • Add basepython python2.7 for flake8, docs, and coverage tox commands

4.2.4


  • coverage v4.2 was incompatible and was breaking the build. Added --append for the fix.

4.2.3


  • Accept tuples as a type list as well.

4.2.2


  • Fix marshalling of an optional array query parameter when not passed in the
    service call - PR 87

4.2.1


  • Fix optional enums in request params - Issue 77
  • Fix resolving refs during validation - Issue 82

4.2.0


  • More robust handling of operationId which contains non-standard chars - PR 76
  • Provide a client ingestible version of spec_dict with x-scope metadata removed. Accessible as Spec.client_spec_dict - Issue 78

4.1.0


  • Better handling of query parameters that don't have a value - Issue 68
  • Allow marshalling of objects which are subclasses of dict - PR 61
  • Fix boolean query params to support case-insensetive true/false and 0/1 - Issue 70
  • Support for Swagger specs in yaml format - Issue 42
  • Fix validation of server side request parameters when collectionFormat=multi and item type is not string - Issue 66
  • Fix unmarshaling of server side request parameters when collectionFormat=multi and cardinality is one - PR 75

4.0.1


  • Fix unmarshalling of an optional array query parameter when not passed in the
    query string.

4.0.0


  • Support for recursive $refs - Issue 35
  • Requires swagger-spec-validator 2.0.1
  • Unqualified $refs no longer supported.
    Bad: {"$ref": "User"}
    Good: {"$ref": "/definitions/User"}
  • Automatic tagging of models is only supported in the root swagger spec file.
    If you have models defined in $ref targets that are in other files, you must
    manually tag them with 'x-model' for them to be available as python types.
    See Model Discovery <http://bravado-core.readthedocs.org/en/latest/models.htmlmodel-discovery>_
    for more info.

3.1.1


  • Fix the creation of operations that contain shared parameters for a given endpoint.

3.1.0


  • Added http headers to bravado_core.response.IncomingResponse.

3.0.2


  • Added docs on how to use user-defined formats <http://bravado-core.readthedocs.org/en/latest/formats.html>_.
  • Added docs on how to configure <http://bravado-core.readthedocs.org/en/latest/config.html>_ bravado-core.
  • formats added as a config option

3.0.1


  • Automatically tag models in external $refs - Issue 45 - see Model Discovery <http://bravado-core.readthedocs.org/en/latest/models.htmlmodel-discovery>_ for more info.

3.0.0


  • User-defined formats are now scoped to a Swagger spec - Issue 50 (this is a non-backwards compatible change)
  • Deprecated bravado_core.request.RequestLike and renamed to bravado_core.request.IncomingRequest
  • Added make docs target and updated docs (still needs a lot of work though)

2.4.1


  • Fixed validation of user-defined formats - Issue 48

2.4.0


  • Support relative '$ref' external references in swagger.json
  • Fix dereferencing of jsonref when given in a list

2.3.0


  • Raise MatchingResponseNotFound instead of SwaggerMappingError
    when a response can't be matched to the Swagger schema.

2.2.0


  • Add reason to IncomingResponse

2.1.0


  • Handle user defined formats for serialization and validation.

2.0.0


  • Move http invocation to bravado
  • Fix unicode in model docstrings
  • Require swagger-spec-validator 1.0.12 to pick up bug fixes

1.1.0


  • Better unicode support
  • Python 3 support

1.0.0rc2


  • Fixed file uploads when marshaling a request
  • Renamed ResponseLike to IncomingResponse
  • Fixed repr of a model when it has an attr with a unicode value

1.0.0rc1


  • Use basePath when matching an operation to a request
  • Refactored exception hierarchy
  • Added use_models config option

0.1.0


  • Initial release

flake8 -> 3.5.0

3.5.0


You can view the 3.5.0 milestone_ on GitLab for more details.

New Dependency Information

  • Allow for PyFlakes 1.6.0 (See also GitLab359_)
  • Start using new PyCodestyle checks for bare excepts and ambiguous identifier
    (See also GitLab361_)

Features

  • Print out information about configuring VCS hooks (See also GitLab335_)
  • Allow users to develop plugins "local" to a repository without using
    setuptools. See our documentation on local plugins for more information.
    (See also GitLab357_)

Bugs Fixed

  • Catch and helpfully report UnicodeDecodeError\ s when parsing
    configuration files. (See also GitLab358_)

.. all links
.. _3.5.0 milestone:
https://gitlab.com/pycqa/flake8/milestones/20

.. issue links
.. _GitLab335:
https://gitlab.com/pycqa/flake8/issues/335
.. _GitLab357:
https://gitlab.com/pycqa/flake8/issues/357
.. _GitLab358:
https://gitlab.com/pycqa/flake8/issues/358
.. _GitLab359:
https://gitlab.com/pycqa/flake8/issues/359
.. _GitLab361:
https://gitlab.com/pycqa/flake8/issues/361

.. merge request links

3.4.1


You can view the 3.4.1 milestone_ on GitLab for more details.

  • Fix minor regression when users specify only a --select list with items
    in the enabled/extended select list. (See also GitLab354_)

.. all links
.. _3.4.1 milestone:
https://gitlab.com/pycqa/flake8/milestones/19

.. issue links
.. _GitLab354:
https://gitlab.com/pycqa/flake8/issues/354

.. merge request links

3.4.0


You can view the 3.4.0 milestone_ on GitLab for more details.

  • Refine logic around --select and --ignore when combined with the
    default values for each. (See also GitLab318_)
  • Handle spaces as an alternate separate for error codes, e.g.,
    --ignore 'E123 E234'. (See also GitLab329_)
  • Filter out empty select and ignore codes, e.g., --ignore E123,,E234.
    (See also GitLab330_)
  • Specify dependencies appropriately in setup.py (See also Gitlab341_)
  • Fix bug in parsing --quiet and --verbose from config files.
    (See also GitLab!193_)
  • Remove unused import of os in the git hook template (See also
    GitLab!194_)

.. all links
.. _3.4.0 milestone:
https://gitlab.com/pycqa/flake8/milestones/18

.. issue links
.. _GitLab318:
https://gitlab.com/pycqa/flake8/issues/318
.. _GitLab329:
https://gitlab.com/pycqa/flake8/issues/329
.. _GitLab330:
https://gitlab.com/pycqa/flake8/issues/330
.. _GitLab341:
https://gitlab.com/pycqa/flake8/issues/341

.. merge request links
.. _GitLab!193:
https://gitlab.com/pycqa/flake8/merge_requests/193
.. _GitLab!194:
https://gitlab.com/pycqa/flake8/merge_requests/194

3.3.0


You can view the 3.3.0 milestone_ on GitLab for more details.

  • Add support for Python 3.6 (via dependencies). Note Flake8 does not
    guarantee that all plugins will support Python 3.6.
  • Added unique error codes for all missing PyFlakes messages. (14 new
    codes, see "Error / Violation Codes")
  • Dramatically improve the performance of Flake8. (See also GitLab!156_)
  • Display the local file path instead of the temporary file path when
    using the git hook. (See also GitLab244_)
  • Add methods to Report class that will be called when Flake8 starts and
    finishes processing a file. (See also GitLab251_)
  • Fix problem where hooks should only check *.py files. (See also
    GitLab268_)
  • Fix handling of SyntaxErrors that do not include physical line information.
    (See also GitLab279_)
  • Update upper bound on PyFlakes to allow for PyFlakes 1.5.0. (See also
    GitLab290_)
  • Update setuptools integration to less eagerly deduplicate packages.
    (See also GitLab295_)
  • Force flake8 --version to be repeatable between invocations. (See also
    GitLab297_)

.. all links
.. _3.3.0 milestone:
https://gitlab.com/pycqa/flake8/milestones/16

.. issue links
.. _GitLab244:
https://gitlab.com/pycqa/flake8/issues/244
.. _GitLab251:
https://gitlab.com/pycqa/flake8/issues/251
.. _GitLab268:
https://gitlab.com/pycqa/flake8/issues/268
.. _GitLab279:
https://gitlab.com/pycqa/flake8/issues/279
.. _GitLab290:
https://gitlab.com/pycqa/flake8/issues/290
.. _GitLab295:
https://gitlab.com/pycqa/flake8/issues/295
.. _GitLab297:
https://gitlab.com/pycqa/flake8/issues/297

.. merge request links
.. _GitLab!156:
https://gitlab.com/pycqa/flake8/merge_requests/156

3.2.1


You can view the 3.2.1 milestone_ on GitLab for more details.

  • Fix subtle bug when deciding whether to report an on-by-default's violation
    (See also GitLab257_)
  • Fix another bug around SyntaxErrors not being reported at the right column
    and row (See also GitLab259_ and GitLab237_ for a related, previously
    fixed bug)
  • Fix regression from 2.x where we run checks against explicitly provided
    files, even if they don't match the filename patterns. (See also
    GitLab266_)

.. links
.. _3.2.1 milestone:
https://gitlab.com/pycqa/flake8/milestones/15
.. _GitLab237:
https://gitlab.com/pycqa/flake8/issues/237
.. _GitLab257:
https://gitlab.com/pycqa/flake8/issues/257
.. _GitLab259:
https://gitlab.com/pycqa/flake8/issues/259
.. _GitLab266:
https://gitlab.com/pycqa/flake8/issues/266

3.2.0


You can view the 3.2.0 milestone_ on GitLab for more details.

  • Allow for pycodestyle 2.2.0 which fixes a bug in E305 (See also
    GitLab256_)

.. links
.. _3.2.0 milestone:
https://gitlab.com/pycqa/flake8/milestones/14
.. _GitLab256:
https://gitlab.com/pycqa/flake8/issues/256

3.1.1


You can view the 3.1.1 milestone_ on GitLab for more details.

  • Do not attempt to install/distribute a man file with the Python package;
    leave this for others to do. (See also GitLab254_)
  • Fix packaging bug where wheel version constraints specified in setup.cfg did
    not match the constraints in setup.py. (See also GitLab255_)

.. links
.. _3.1.1 milestone:
https://gitlab.com/pycqa/flake8/milestones/13
.. _GitLab254:
https://gitlab.com/pycqa/flake8/issues/254
.. _GitLab255:
https://gitlab.com/pycqa/flake8/issues/255

3.1.0


You can view the 3.1.0 milestone_ on GitLab for more details.

  • Add --bug-report flag to make issue reporters' lives easier.
  • Collect configuration files from the current directory when using our Git
    hook. (See also GitLab210, GitLab218, GitLab223_)
  • Avoid unhandled exceptions when dealing with SyntaxErrors. (See also
    GitLab214, GitLab238)
  • Exit early if the value for --diff is empty. (See also GitLab226_)
  • Handle empty --stdin-display-name values. (See also GitLab235_)
  • Properly report the column number of Syntax Errors. We were assuming that
    all reports of column numbers were 0-indexed, however, SyntaxErrors report
    the column number as 1-indexed. This caused us to report a column number
    that was 1 past the actual position. Further, when combined with
    SyntaxErrors that occur at a newline, this caused the position to be
    visually off by two. (See also GitLab237_)
  • Fix the behaviour of --enable-extensions. Previously, items specified
    here were still ignored due to the fact that the off-by-default extension
    codes were being left in the ignore list. (See also GitLab239_)
  • Fix problems around --select and --ignore behaviour that prevented
    codes that were neither explicitly selected nor explicitly ignored from
    being reported. (See also GitLab242_)
  • Truly be quiet when the user specifies -q one or more times. Previously,
    we were showing the if the user specified -q and --show-source. We
    have fixed this bug. (See also GitLab245_)
  • Add new File Processor attribute, previous_unindented_logical_line to
    accommodate pycodestyle 2.1.0. (See also GitLab246_)
  • When something goes wrong, exit non-zero. (See also GitLab248,
    GitLab209
    )
  • Add --tee as an option to allow use of --output-file and printing to
    standard out.
  • Allow the git plugin to actually be lazy when collecting files.
  • Allow for pycodestyle 2.1 series and pyflakes 1.3 series.

.. links
.. _3.1.0 milestone:
https://gitlab.com/pycqa/flake8/milestones/12
.. _GitLab209:
https://gitlab.com/pycqa/flake8/issues/209
.. _GitLab210:
https://gitlab.com/pycqa/flake8/issues/210
.. _GitLab214:
https://gitlab.com/pycqa/flake8/issues/214
.. _GitLab218:
https://gitlab.com/pycqa/flake8/issues/218
.. _GitLab223:
https://gitlab.com/pycqa/flake8/issues/223
.. _GitLab226:
https://gitlab.com/pycqa/flake8/issues/226
.. _GitLab235:
https://gitlab.com/pycqa/flake8/issues/235
.. _GitLab237:
https://gitlab.com/pycqa/flake8/issues/237
.. _GitLab238:
https://gitlab.com/pycqa/flake8/issues/238
.. _GitLab239:
https://gitlab.com/pycqa/flake8/issues/239
.. _GitLab242:
https://gitlab.com/pycqa/flake8/issues/242
.. _GitLab245:
https://gitlab.com/pycqa/flake8/issues/245
.. _GitLab246:
https://gitlab.com/pycqa/flake8/issues/246
.. _GitLab248:
https://gitlab.com/pycqa/flake8/issues/248

3.0.4


  • Side-step a Pickling Error when using Flake8 with multiprocessing on Unix
    systems. (See also GitLab164_)
  • Fix an Attribute Error raised when dealing with Invalid Syntax. (See also
    GitLab203_)
  • Fix an unhandled Syntax Error when tokenizing files. (See also
    GitLab205_)

.. links
.. _GitLab164:
https://gitlab.com/pycqa/flake8/issues/164
.. _GitLab203:
https://gitlab.com/pycqa/flake8/issues/203
.. _GitLab205:
https://gitlab.com/pycqa/flake8/issues/205

3.0.3


  • Disable --jobs for any version of Python on Windows.
    (See also this Python bug report_)
  • Raise exception when entry_point in plugin not callable.
    This raises an informative error when a plugin fails to load because its
    entry_point is not callable, which can happen with a plugin which is buggy or
    not updated for the current version of flake8. This is nicer than raising a
    PicklingError about failing to pickle a module (See also GitLab164_)
  • Fix noqa comments followed by a : and explanation broken by
    3.0.0 (See also GitLab178_)
  • Always open our output file in append mode so we do not overwrite log
    messages. (See also GitLab193_)
  • When normalizing path values read from configuration, keep in context the
    directory where the configuration was found so that relative paths work.
    (See also GitLab194_)
  • Fix issue where users were unable to ignore plugin errors that were on
    by default. (See also GitLab195_)
  • Fix our legacy API StyleGuide's init_report method to actually override
    the previous formatter. (See also GitLab200_)

.. links
.. _GitLab164:
https://gitlab.com/pycqa/flake8/issues/164
.. _GitLab178:
https://gitlab.com/pycqa/flake8/issues/178
.. _GitLab193:
https://gitlab.com/pycqa/flake8/issues/193
.. _GitLab194:
https://gitlab.com/pycqa/flake8/issues/193
.. _GitLab195:
https://gitlab.com/pycqa/flake8/issues/195
.. _GitLab200:
https://gitlab.com/pycqa/flake8/issues/200
.. _this Python bug report:
https://bugs.python.org/issue27649

3.0.2


  • Fix local config file discovery. (See also GitLab181_)
  • Fix indexing of column numbers. We accidentally were starting column indices
    at 0 instead of 1.
  • Fix regression in handling of errors like E402 that rely on a combination of
    attributes. (See also GitLab186_)

.. links
.. _GitLab181:
https://gitlab.com/pycqa/flake8/issues/181
.. _GitLab186:
https://gitlab.com/pycqa/flake8/issues/186

3.0.1


  • Fix regression in handling of noqa for multiline strings.
    (See also GitLab177_)
  • Fix regression in handling of --output-file when not also using
    --verbose. (See also GitLab180_)
  • Fix regression in handling of --quiet. (See also GitLab180_)
  • Fix regression in handling of --statistics. (See also GitLab180_)

.. links
.. _GitLab177:
https://gitlab.com/pycqa/flake8/issues/177
.. _GitLab180:
https://gitlab.com/pycqa/flake8/issues/180

3.0.0


  • Drop explicit support for Pythons 2.6, 3.2, and 3.3.
  • Remove dependence on pep8/pycodestyle for file processing, plugin
    dispatching, and more. We now control all of this while keeping backwards
    compatibility.
  • --select and --ignore can now both be specified and try to find the
    most specific rule from each. For example, if you do --select E --ignore E123 then we will report everything that starts with E except for
    E123. Previously, you would have had to do --ignore E123,F,W which
    will also still work, but the former should be far more intuitive.
  • Add support for in-line noqa comments to specify only the error
    codes to be ignored, e.g., noqa: E123,W503
  • Add entry-point for formatters as well as a base class that new formatters
    can inherit from. See the documentation for more details.
  • Add detailed verbose output using the standard library logging module.
  • Enhance our usage of optparse for plugin developers by adding new parameters
    to the add_option that plugins use to register new options.
  • Update --install-hook to require the name of version control system hook
    you wish to install a Flake8.
  • Stop checking sub-directories more than once via the setuptools command
  • When passing a file on standard-in, allow the caller to specify
    --stdin-display-name so the output is properly formatted
  • The Git hook now uses sys.executable to format the shebang line.
    This allows Flake8 to install a hook script from a virtualenv that points to
    that virtualenv's Flake8 as opposed to a global one (without the virtualenv
    being sourced).
  • Print results in a deterministic and consistent ordering when used with
    multiprocessing
  • When using --count, the output is no longer written to stderr.
  • AST plugins can either be functions or classes and all plugins can now
    register options so long as there are callable attributes named as we
    expect.
  • Stop forcibly re-adding .tox, .eggs, and *.eggs to
    --exclude. Flake8 2.x started always appending those three patterns
    to any exclude list (including the default and any user supplied list).
    Flake8 3 has stopped adding these in, so you may see errors when upgrading
    due to these patterns no longer being forcibly excluded by default if you
    have your own exclude patterns specified.

To fix this, add the appropriate patterns to your exclude patterns list.

.. note::

 This item was added in November of 2016, as a result of a bug
 report.

2.6.2


  • Bug Fix packaging error during release process.

2.6.1


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

2.6.0


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

2.5.5


  • Bug Fix setuptools integration when parsing config files
  • Bug Don't pass the user's config path as the config_file when creating a
    StyleGuide

2.5.4


  • Bug Missed an attribute rename during the v2.5.3 release.

2.5.3


  • Bug Actually parse output_file and enable_extensions from config
    files

2.5.2


  • Bug Parse output_file and enable_extensions from config files
  • Improvement Raise upper bound on mccabe plugin to allow for version
    0.4.0

2.5.1


  • Bug Properly look for .flake8 in current working directory
    (GitLab103_)
  • Bug Monkey-patch pep8.stdin_get_value to cache the actual value in
    stdin. This helps plugins relying on the function when run with
    multiprocessing. (GitLab105, GitLab107)

.. _GitLab103: https://gitlab.com/pycqa/flake8/issues/103
.. _GitLab105: https://gitlab.com/pycqa/flake8/issues/105
.. _GitLab107: https://gitlab.com/pycqa/flake8/issues/107

2.5.0


  • Improvement Raise cap on PyFlakes for Python 3.5 support
  • Improvement Avoid deprecation warnings when loading extensions
    (GitLab59, GitLab90)
  • Improvement Separate logic to enable "off-by-default" extensions
    (GitLab67_)
  • Bug Properly parse options to setuptools Flake8 command (GitLab!41_)
  • Bug Fix exceptions when output on stdout is truncated before Flake8
    finishes writing the output (GitLab69_)
  • Bug Fix error on OS X where Flake8 can no longer acquire or create new
    semaphores (GitLab74_)

.. _GitLab!41: https://gitlab.com/pycqa/flake8/merge_requests/41
.. _GitLab59: https://gitlab.com/pycqa/flake8/issues/59
.. _GitLab67: https://gitlab.com/pycqa/flake8/issues/67
.. _GitLab69: https://gitlab.com/pycqa/flake8/issues/69
.. _GitLab74: https://gitlab.com/pycqa/flake8/issues/74
.. _GitLab90: https://gitlab.com/pycqa/flake8/issues/90

2.4.1


  • Bug Do not raise a SystemError unless there were errors in the
    setuptools command. (GitLab39, GitLab!23)
  • Bug Do not verify dependencies of extensions loaded via entry-points.
  • Improvement Blacklist versions of pep8 we know are broken

.. _GitLab39: https://gitlab.com/pycqa/flake8/issues/39
.. _GitLab!23: https://gitlab.com/pycqa/flake8/merge_requests/23

2.4.0


  • Bug Print filenames when using multiprocessing and -q option.
    (GitLab31_)
  • Bug Put upper cap on dependencies. The caps for 2.4.0 are:
  • pep8 < 1.6 (Related to GitLab35_)
  • mccabe < 0.4
  • pyflakes < 0.9

See also GitLab32_

  • Bug Files excluded in a config file were not being excluded when flake8
    was run from a git hook. (GitHub2_)
  • Improvement Print warnings for users who are providing mutually
    exclusive options to flake8. (GitLab8, GitLab!18)
  • Feature Allow git hook configuration to live in .git/config.
    See the updated VCS hooks docs_ for more details. (GitLab!20_)

.. _GitHub2: PyCQA/flake8#2
.. _GitLab8: https://gitlab.com/pycqa/flake8/issues/8
.. _GitLab31: https://gitlab.com/pycqa/flake8/issues/31
.. _GitLab32: https://gitlab.com/pycqa/flake8/issues/32
.. _GitLab35: https://gitlab.com/pycqa/flake8/issues/35
.. _GitLab!18: https://gitlab.com/pycqa/flake8/merge_requests/18
.. _GitLab!20: https://gitlab.com/pycqa/flake8/merge_requests/20
.. _VCS hooks docs: https://flake8.readthedocs.org/en/latest/vcs.html

2.3.0


  • Feature: Add --output-file option to specify a file to write to
    instead of stdout.
  • Bug Fix interleaving of output while using multiprocessing
    (GitLab17_)

.. _GitLab17: https://gitlab.com/pycqa/flake8/issues/17

2.2.5


  • Flush standard out when using multiprocessing
  • Make the check for " flake8: noqa" more strict

2.2.4


  • Fix bugs triggered by turning multiprocessing on by default (again)

Multiprocessing is forcibly disabled in the following cases:

  • Passing something in via stdin
  • Analyzing a diff
  • Using windows
  • Fix --install-hook when there are no config files present for pep8 or
    flake8.
  • Fix how the setuptools command parses excludes in config files
  • Fix how the git hook determines which files to analyze (Thanks Chris
    Buccella!)

2.2.3


  • Actually turn multiprocessing on by default

2.2.2


  • Re-enable multiprocessing by default while fixing the issue Windows users
    were seeing.

2.2.1


  • Turn off multiple jobs by default. To enable automatic use of all CPUs, use
    --jobs=auto. Fixes 155 and 154.

2.2.0


  • New option doctests to run Pyflakes checks on doctests too
  • New option jobs to launch multiple jobs in parallel
  • Turn on using multiple jobs by default using the CPU count
  • Add support for python -m flake8 on Python 2.7 and Python 3
  • Fix Git and Mercurial hooks: issues 88, 133, 148 and 149
  • Fix crashes with Python 3.4 by upgrading dependencies
  • Fix traceback when running tests with Python 2.6
  • Fix the setuptools command python setup.py flake8 to read
    the project configuration

2.1.0


  • Add FLAKE8_LAZY and FLAKE8_IGNORE environment variable support to git and
    mercurial hooks
  • Force git and mercurial hooks to repsect configuration in setup.cfg
  • Only check staged files if that is specified
  • Fix hook file permissions
  • Fix the git hook on python 3
  • Ignore non-python files when running the git hook
  • Ignore .tox directories by default
  • Flake8 now reports the column number for PyFlakes messages

2.0.0


  • Pyflakes errors are prefixed by an F instead of an E
  • McCabe complexity warnings are prefixed by a C instead of a W
  • Flake8 supports extensions through entry points
  • Due to the above support, we require setuptools
  • We publish the documentation <https://flake8.readthedocs.org/>_
  • Fixes 13: pep8, pyflakes and mccabe become external dependencies
  • Split run.py into main.py, engine.py and hooks.py for better logic
  • Expose our parser for our users
  • New feature: Install git and hg hooks automagically
  • By relying on pyflakes (0.6.1), we also fixed 45 and 35

1.7.0


  • Fixes part of 35: Exception for no WITHITEM being an attribute of Checker
    for Python 3.3
  • Support stdin
  • Incorporate phd's builtins pull request
  • Fix the git hook
  • Update pep8.py to the latest version

1.6.2


  • fixed the NameError: global name 'message' is not defined (46)

1.6.1


  • fixed the mercurial hook, a change from a previous patch was not properly
    applied
  • fixed an assumption about warnings/error messages that caused an exception
    to be thrown when McCabe is used

1.6


  • changed the signatures of the check_file function in flake8/run.py,
    skip_warning in flake8/util.py and the check, checkPath
    functions in flake8/pyflakes.py.
  • fix --exclude and --ignore command flags (14, 19)
  • fix the git hook that wasn't catching files not already added to the index
    (29)
  • pre-emptively includes the addition to pep8 to ignore certain lines.
    Add nopep8 to the end of a line to ignore it. (37)
  • check_file can now be used without any special prior setup (21)
  • unpacking exceptions will no longer cause an exception (20)
  • fixed crash on non-existent file (38)

1.5


  • fixed the stdin
  • make sure mccabe catches the syntax errors as warnings
  • pep8 upgrade
  • added max_line_length default value
  • added Flake8Command and entry points if setuptools is around
  • using the setuptools console wrapper when available

1.4


  • git_hook: Only check staged changes for compliance
  • use pep8 1.2

1.3.1


  • fixed support for Python 2.5

1.3


  • fixed false W402 warning on exception blocks.

1.2


  • added a git hook
  • now Python 3 compatible
  • mccabe and pyflakes have warning codes like pep8 now

1.1


  • fixed the value returned by --version
  • allow the flake8: header to be more generic
  • fixed the "hg hook raises 'physical lines'" bug
  • allow three argument form of raise
  • now uses setuptools if available, for 'develop' command

1.0


  • Deactivates by default the complexity checker
  • Introduces the complexity option in the HG hook and the command line.

0.9


  • update pep8 version to 0.6.1
  • mccabe check: gracefully handle compile failure

0.8


  • fixed hg hook
  • discard unexisting files on hook check

0.7


  • Fix pep8 initialization when run through Hg
  • Make pep8 short options work when run through the command line
  • Skip duplicates when controlling files via Hg

0.6


  • Fix the McCabe metric on some loops

pytest -> 3.2.3

3.2.3

=========================

Bug Fixes

  • Fix crash in tab completion when no prefix is given. (2748 <https://github.com/pytest-dev/pytest/issues/2748>_)
  • The equality checking function (__eq__) of MarkDecorator returns
    False if one object is not an instance of MarkDecorator. (2758 <https://github.com/pytest-dev/pytest/issues/2758>_)
  • When running pytest --fixtures-per-test: don't crash if an item has no
    fixtureinfo attribute (e.g. doctests) (2788 <https://github.com/pytest-dev/pytest/issues/2788>)

Improved Documentation

  • In help text of -k option, add example of using not to not select
    certain tests whose names match the provided expression. (1442 <https://github.com/pytest-dev/pytest/issues/1442>_)
  • Add note in parametrize.rst about calling metafunc.parametrize
    multiple times. (1548 <https://github.com/pytest-dev/pytest/issues/1548>_)

Trivial/Internal Changes

  • Set xfail_strict=True in pytest's own test suite to catch expected
    failures as soon as they start to pass. (2722 <https://github.com/pytest-dev/pytest/issues/2722>_)
  • Fix typo in example of passing a callable to markers (in example/markers.rst)
    (2765 <https://github.com/pytest-dev/pytest/issues/2765>_)

3.2.2

=========================

Bug Fixes

  • Calling the deprecated request.getfuncargvalue() now shows the source of
    the call. (2681 <https://github.com/pytest-dev/pytest/issues/2681>_)
  • Allow tests declared as staticmethod to use fixtures. (2699 <https://github.com/pytest-dev/pytest/issues/2699>_)
  • Fixed edge-case during collection: attributes which raised pytest.fail
    when accessed would abort the entire collection. (2707 <https://github.com/pytest-dev/pytest/issues/2707>_)
  • Fix ReprFuncArgs with mixed unicode and UTF-8 args. (2731 <https://github.com/pytest-dev/pytest/issues/2731>_)

Improved Documentation

  • In examples on working with custom markers, add examples demonstrating the
    usage of pytest.mark.MARKER_NAME.with_args in comparison with
    pytest.mark.MARKER_NAME.__call__ (2604 <https://github.com/pytest-dev/pytest/issues/2604>_)
  • In one of the simple examples, use pytest_collection_modifyitems() to skip
    tests based on a command-line option, allowing its sharing while preventing a
    user error when acessing pytest.config before the argument parsing. (2653 <https://github.com/pytest-dev/pytest/issues/2653>_)

Trivial/Internal Changes

  • Fixed minor error in 'Good Practices/Manual Integration' code snippet.
    (2691 <https://github.com/pytest-dev/pytest/issues/2691>_)
  • Fixed typo in goodpractices.rst. (2721 <https://github.com/pytest-dev/pytest/issues/2721>_)
  • Improve user guidance regarding --resultlog deprecation. (2739 <https://github.com/pytest-dev/pytest/issues/2739>_)

3.2.1

=========================

Bug Fixes

  • Fixed small terminal glitch when collecting a single test item. (2579 <https://github.com/pytest-dev/pytest/issues/2579>_)
  • Correctly consider / as the file separator to automatically mark plugin
    files for rewrite on Windows. (2591 <https://github.com/pytest- dev/pytest/issues/2591>_)
  • Properly escape test names when setting PYTEST_CURRENT_TEST environment
    variable. (2644 <https://github.com/pytest-dev/pytest/issues/2644>_)
  • Fix error on Windows and Python 3.6+ when sys.stdout has been replaced
    with a stream-like object which does not implement the full io module
    buffer protocol. In particular this affects pytest-xdist users on the
    aforementioned platform. (2666 <https://github.com/pytest- dev/pytest/issues/2666>_)

Improved Documentation

  • Explicitly document which pytest features work with unittest. (2626 <https://github.com/pytest-dev/pytest/issues/2626>_)

3.2.0

=========================

Deprecations and Removals

  • pytest.approx no longer supports >, >=, < and <=
    operators to avoid surprising/inconsistent behavior. See the docs <https://docs.pytest.org/en/latest/builtin.htmlpytest.approx>_ for more
    information. (2003 <https://github.com/pytest-dev/pytest/issues/2003>_)
  • All old-style specific behavior in current classes in the pytest's API is
    considered deprecated at this point and will be removed in a future release.
    This affects Python 2 users only and in rare situations. (2147 <https://github.com/pytest-dev/pytest/issues/2147>_)
  • A deprecation warning is now raised when using marks for parameters
    in pytest.mark.parametrize. Use pytest.param to apply marks to
    parameters instead. (2427 <https://github.com/pytest-dev/pytest/issues/2427>_)

Features

  • Add support for numpy arrays (and dicts) to approx. (1994 <https://github.com/pytest-dev/pytest/issues/1994>_)
  • Now test function objects have a pytestmark attribute containing a list
    of marks applied directly to the test function, as opposed to marks inherited
    from parent classes or modules. (2516 <https://github.com/pytest- dev/pytest/issues/2516>_)
  • Collection ignores local virtualenvs by default; --collect-in-virtualenv
    overrides this behavior. (2518 <https://github.com/pytest- dev/pytest/issues/2518>_)
  • Allow class methods decorated as staticmethod to be candidates for
    collection as a test function. (Only for Python 2.7 and above. Python 2.6
    will still ignore static methods.) (2528 <https://github.com/pytest- dev/pytest/issues/2528>_)
  • Introduce mark.with_args in order to allow passing functions/classes as
    sole argument to marks. (2540 <https://github.com/pytest- dev/pytest/issues/2540>_)
  • New cache_dir ini option: sets the directory where the contents of the
    cache plugin are stored. Directory may be relative or absolute path: if relative path, then
    directory is created relative to rootdir, otherwise it is used as is.
    Additionally path may contain environment variables which are expanded during
    runtime. (2543 <https://github.com/pytest-dev/pytest/issues/2543>_)
  • Introduce the PYTEST_CURRENT_TEST environment variable that is set with
    the nodeid and stage (setup, call and teardown) of the test
    being currently executed. See the documentation <https://docs.pytest.org/en/latest/example/simple.htmlpytest-current-test- environment-variable>_ for more info. (2583 <https://github.com/pytest- dev/pytest/issues/2583>_)
  • Introduced pytest.mark.filterwarnings mark which allows overwriting the
    warnings filter on a per test, class or module level. See the docs <https://docs.pytest.org/en/latest/warnings.htmlpytest-mark- filterwarnings>_ for more information. (2598 <https://github.com/pytest- dev/pytest/issues/2598>_)
  • --last-failed now remembers forever when a test has failed and only
    forgets it if it passes again. This makes it easy to fix a test suite by
    selectively running files and fixing tests incrementally. (2621 <https://github.com/pytest-dev/pytest/issues/2621>_)
  • New pytest_report_collectionfinish hook which allows plugins to add
    messages to the terminal reporting after collection has been finished
    successfully. (2622 <https://github.com/pytest-dev/pytest/issues/2622>_)
  • Added support for PEP-415's <https://www.python.org/dev/peps/pep-0415/>_
    Exception.__suppress_context__. Now if a raise exception from None is
    caught by pytest, pytest will no longer chain the context in the test report.
    The behavior now matches Python's traceback behavior. (2631 <https://github.com/pytest-dev/pytest/issues/2631>_)
  • Exceptions raised by pytest.fail, pytest.skip and pytest.xfail
    now subclass BaseException, making them harder to be caught unintentionally
    by normal code. (580 <https://github.com/pytest-dev/pytest/issues/580>_)

Bug Fixes

  • Set stdin to a closed PIPE in pytester.py.Testdir.popen() for
    avoid unwanted interactive pdb (2023 <https://github.com/pytest- dev/pytest/issues/2023>_)
  • Add missing encoding attribute to sys.std* streams when using
    capsys capture mode. (2375 <https://github.com/pytest- dev/pytest/issues/2375>_)
  • Fix terminal color changing to black on Windows if colorama is imported
    in a conftest.py file. (2510 <https://github.com/pytest- dev/pytest/issues/2510>_)
  • Fix line number when reporting summary of skipped tests. (2548 <https://github.com/pytest-dev/pytest/issues/2548>_)
  • capture: ensure that EncodedFile.name is a string. (2555 <https://github.com/pytest-dev/pytest/issues/2555>_)
  • The options --fixtures and --fixtures-per-test will now keep
    indentation within docstrings. (2574 <https://github.com/pytest- dev/pytest/issues/2574>_)
  • doctests line numbers are now reported correctly, fixing pytest-sugar122 <https://github.com/Frozenball/pytest-sugar/issues/122>. (2610 <https://github.com/pytest-dev/pytest/issues/2610>)
  • Fix non-determinism in order of fixture collection. Adds new dependency
    (ordereddict) for Python 2.6. (920 <https://github.com/pytest- dev/pytest/issues/920>_)

Improved Documentation

  • Clarify pytest_configure hook call order. (2539 <https://github.com/pytest-dev/pytest/issues/2539>_)
  • Extend documentation for testing plugin code with the pytester plugin.
    (971 <https://github.com/pytest-dev/pytest/issues/971>_)

Trivial/Internal Changes

  • Update help message for --strict to make it clear it only deals with
    unregistered markers, not warnings. (2444 <https://github.com/pytest- dev/pytest/issues/2444>_)
  • Internal code move: move code for pytest.approx/pytest.raises to own files in
    order to cut down the size of python.py (2489 <https://github.com/pytest- dev/pytest/issues/2489>_)
  • Renamed the utility function _pytest.compat._escape_strings to
    _ascii_escaped to better communicate the function's purpose. (2533 <https://github.com/pytest-dev/pytest/issues/2533>_)
  • Improve error message for CollectError with skip/skipif. (2546 <https://github.com/pytest-dev/pytest/issues/2546>_)
  • Emit warning about yield tests being deprecated only once per generator.
    (2562 <https://github.com/pytest-dev/pytest/issues/2562>_)
  • Ensure final collected line doesn't include artifacts of previous write.
    (2571 <https://github.com/pytest-dev/pytest/issues/2571>_)
  • Fixed all flake8 errors and warnings. (2581 <https://github.com/pytest- dev/pytest/issues/2581>_)
  • Added fix-lint tox environment to run automatic pep8 fixes on the code.
    (2582 <https://github.com/pytest-dev/pytest/issues/2582>_)
  • Turn warnings into errors in pytest's own test suite in order to catch
    regressions due to deprecations more promptly. (2588 <https://github.com/pytest-dev/pytest/issues/2588>_)
  • Show multiple issue links in CHANGELOG entries. (2620 <https://github.com/pytest-dev/pytest/issues/2620>_)

3.1.3

=========================

Bug Fixes

  • Fix decode error in Python 2 for doctests in docstrings. (2434 <https://github.com/pytest-dev/pytest/issues/2434>_)
  • Exceptions raised during teardown by finalizers are now suppressed until all
    finalizers are called, with the initial exception reraised. (2440 <https://github.com/pytest-dev/pytest/issues/2440>_)
  • Fix incorrect "collected items" report when specifying tests on the command-
    line. (2464 <https://github.com/pytest-dev/pytest/issues/2464>_)
  • deprecated_call in context-manager form now captures deprecation warnings
    even if the same warning has already been raised. Also, deprecated_call
    will always produce the same error message (previously it would produce
    different messages in context-manager vs. function-call mode). (2469 <https://github.com/pytest-dev/pytest/issues/2469>_)
  • Fix issue where paths collected by pytest could have triple leading /
    characters. (2475 <https://github.com/pytest-dev/pytest/issues/2475>_)
  • Fix internal error when trying to detect the start of a recursive traceback.
    (2486 <https://github.com/pytest-dev/pytest/issues/2486>_)

Improved Documentation

  • Explicitly state for which hooks the calls stop after the first non-None
    result. (2493 <https://github.com/pytest-dev/pytest/issues/2493>_)

Trivial/Internal Changes

  • Create invoke tasks for updating the vendored packages. (2474 <https://github.com/pytest-dev/pytest/issues/2474>_)
  • Update copyright dates in LICENSE, README.rst and in the documentation.
    (2499 <https://github.com/pytest-dev/pytest/issues/2499>_)

3.1.2

=========================

Bug Fixes

  • Required options added via pytest_addoption will no longer prevent using
    --help without passing them. (1999)
  • Respect python_files in assertion rewriting. (2121)
  • Fix recursion error detection when frames in the traceback contain objects
    that can't be compared (like numpy arrays). (2459)
  • UnicodeWarning is issued from the internal pytest warnings plugin only
    when the message contains non-ascii unicode (Python 2 only). (2463)
  • Added a workaround for Python 3.6 WindowsConsoleIO breaking due to Pytests's
    FDCapture. Other code using console handles might still be affected by the
    very same issue and might require further workarounds/fixes, i.e. colorama.
    (2467)

Improved Documentation

  • Fix internal API links to pluggy objects. (2331)
  • Make it clear that pytest.xfail stops test execution at the calling point
    and improve overall flow of the skipping docs. (810)

3.1.1

=========================

Bug Fixes

  • pytest warning capture no longer overrides existing warning filters. The
    previous behaviour would override all filters and caused regressions in test
    suites which configure warning filters to match their needs. Note that as a
    side-effect of this is that DeprecationWarning and
    PendingDeprecationWarning are no longer shown by default. (2430)
  • Fix issue with non-ascii contents in doctest text files. (2434)
  • Fix encoding errors for unicode warnings in Python 2. (2436)
  • pytest.deprecated_call now captures PendingDeprecationWarning in
    context manager form. (2441)

Improved Documentation

  • Addition of towncrier for changelog management. (2390)

3.1.0

==================

New Features

  • The pytest-warnings plugin has been integrated into the core and now pytest automatically
    captures and displays warnings at the end of the test session.

.. warning::

This feature may disrupt test suites which apply and treat warnings themselves, and can be
disabled in your pytest.ini:

.. code-block:: ini

 [pytest]
 addopts = -p no:warnings

See the warnings documentation page <https://docs.pytest.org/en/latest/warnings.html>_ for more
information.

Thanks nicoddemus_ for the PR.

  • Added junit_suite_name ini option to specify root <testsuite> name for JUnit XML reports (533_).
  • Added an ini option doctest_encoding to specify which encoding to use for doctest files.
    Thanks wheerd_ for the PR (2101_).
  • pytest.warns now checks for subclass relationship rather than
    class equality. Thanks lesteve_ for the PR (2166_)
  • pytest.raises now asserts that the error message matches a text or regex
    with the match keyword argument. Thanks Kriechi_ for the PR.
  • pytest.param can be used to declare test parameter sets with marks and test ids.
    Thanks RonnyPfannschmidt_ for the PR.

Changes

  • remove all internal uses of pytest_namespace hooks,
    this is to prepare the removal of preloadconfig in pytest 4.0
    Thanks to RonnyPfannschmidt_ for the PR.
  • pytest now warns when a callable ids raises in a parametrized test. Thanks fogo_ for the PR.
  • It is now possible to skip test classes from being collected by setting a
    __test__ attribute to False in the class body (2007). Thanks
    to syre
    for the report and lwm_ for the PR.
  • Change junitxml.py to produce reports that comply with Junitxml schema.
    If the same test fails with failure in call and then errors in teardown
    we split testcase element into two, one containing the error and the other
    the failure. (2228) Thanks to kkoukiou for the PR.
  • Testcase reports with a url attribute will now properly write this to junitxml.
    Thanks fushi_ for the PR (1874_).
  • Remove common items from dict comparision output when verbosity=1. Also update
    the truncation message to make it clearer that pytest truncates all
    assertion messages if verbosity < 2 (1512).
    Thanks mattduck
    for the PR
  • --pdbcls no longer implies --pdb. This makes it possible to use
    addopts=--pdbcls=module.SomeClass on pytest.ini. Thanks davidszotten_ for
    the PR (1952_).
  • fix 2013_: turn RecordedWarning into namedtuple,
    to give it a comprehensible repr while preventing unwarranted modification.
  • fix 2208_: ensure a iteration limit for pytest.compat.get_real_func.
    Thanks RonnyPfannschmidt
    for the report and PR.
  • Hooks are now verified after collection is complete, rather than right after loading installed plugins. This
    makes it easy to write hooks for plugins which will be loaded during collection, for example using the
    pytest_plugins special variable (1821).
    Thanks nicoddemus
    for the PR.
  • Modify pytest_make_parametrize_id() hook to accept argname as an
    additional parameter.
    Thanks unsignedint_ for the PR.
  • Add venv to the default norecursedirs setting.
    Thanks The-Compiler_ for the PR.
  • PluginManager.import_plugin now accepts unicode plugin names in Python 2.
    Thanks reutsharabani_ for the PR.
  • fix 2308: When using both --lf and --ff, only the last failed tests are run.
    Thanks ojii
    for the PR.
  • Replace minor/patch level version numbers in the do

@Natim
Copy link
Member

Natim commented Nov 6, 2017

  • flake8 new bare expect rule
  • Docs sphinx update

@Natim
Copy link
Member

Natim commented Nov 6, 2017

Ok let's do it !!!!

@Natim Natim merged commit 9cb9456 into master Nov 6, 2017
@Natim Natim deleted the pyup-initial-update branch November 6, 2017 15:09
glasserc added a commit to glasserc/kinto that referenced this pull request Nov 9, 2017
glasserc added a commit that referenced this pull request Nov 9, 2017
Fix pyramid requirement in setup.py to match #1355
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants