Skip to content
This repository has been archived by the owner on Nov 7, 2019. It is now read-only.

Scheduled weekly dependency update for week 09 #610

Merged
merged 30 commits into from
Mar 13, 2019

Conversation

pyup-bot
Copy link
Contributor

@pyup-bot pyup-bot commented Mar 4, 2019

Update gunicorn from 19.8.1 to 19.9.0.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update psycopg2-binary from 2.7.5 to 2.7.7.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update bcrypt from 3.1.4 to 3.1.6.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update XlsxWriter from 1.1.1 to 1.1.5.

Changelog

1.1.5

--------------------------------

* This version removes support for end of life Pythons 2.5, 2.6, 3.1, 3.2 and
3.3. For older, unsupported versions of Python use version 1.1.4 of
XlsxWriter.

1.1.4

--------------------------------

* Fix for issues where zipfile.py raises "ZIP does not support timestamps
before 1980" exception.
Issue `535 <https://github.com/jmcnamara/XlsxWriter/issues/535>`_.

1.1.3

-------------------------------

* Fix handling of ``'num_format': '0'`` in duplicate formats.
Issue `584 <https://github.com/jmcnamara/XlsxWriter/issues/584>`_.

1.1.2

-------------------------------

* Fix for issue where ``in_memory`` files weren't compressed.
Issue `573 <https://github.com/jmcnamara/XlsxWriter/issues/573>`_.

* Fix ``write()`` so that it handles array formulas as documented.
Issue `418 <https://github.com/jmcnamara/XlsxWriter/issues/418>`_.

* Fix for issue with special characters in worksheet table functions.
Issue `442 <https://github.com/jmcnamara/XlsxWriter/issues/442>`_.

* Added warnings for input issues in :func:`write_rich_string()` such as blank
strings, double formats or insufficient parameters.
Issue `425 <https://github.com/jmcnamara/XlsxWriter/issues/425>`_.
Links

Update zeep from 3.1.0 to 3.2.0.

Changelog

3.2.0

------------------
- Fix abstract message check for NoneType before attempting to access parts
- Improve support for 'Chameleon' XSD schemas (879, 888)
- Fix resolving qualified references (879)
- Fix issue with duplicate soap:body tags when multiple parts used (879)
- Fix Choice with unbound Any element (871)
- Add xsd_ignore_sequence_order flag (880)
- Add support for timestamp token in WSS headers (817)
- Accept strings for xsd.DateTime (886)
Links

Update bleach from 3.0.0 to 3.1.0.

Changelog

3.1.0

---------------------------------

**Security fixes**

None

**Backwards incompatible changes**

None

**Features**

* Add ``recognized_tags`` argument to the linkify ``Linker`` class. This
fixes issues when linkifying on its own and having some tags get escaped.
It defaults to a list of HTML5 tags. Thank you, Chad Birch! (409)

**Bug fixes**

* Add ``six>=1.9`` to requirements. Thank you, Dave Shawley (416)

* Fix cases where attribute names could have invalid characters in them.
(419)

* Fix problems with ``LinkifyFilter`` not being able to match links
across ``&``. (422)

* Fix ``InputStreamWithMemory`` when the ``BleachHTMLParser`` is
parsing ``meta`` tags. (431)

* Fix doctests. (357)

3.0.2

----------------------------------

**Security fixes**

None

**Backwards incompatible changes**

None

**Features**

None

**Bug fixes**

* Merge ``Characters`` tokens after sanitizing them. This fixes issues in the
``LinkifyFilter`` where it was only linkifying parts of urls. (374)

3.0.1

---------------------------------

**Security fixes**

None

**Backwards incompatible changes**

None

**Features**

* Support Python 3.7. It supported Python 3.7 just fine, but we added 3.7 to
the list of Python environments we test so this is now officially supported.
(377)

**Bug fixes**

* Fix ``list`` object has no attribute ``lower`` in ``clean``. (398)
* Fix ``abbr`` getting escaped in ``linkify``. (400)
Links

Update django-allauth from 0.38.0 to 0.39.1.

Changelog

0.39.1

*******************

Note worthy changes
-------------------

- The ``linkedin_oauth2`` provider now gracefully deals with old V1
data that might still be present in ``SocialAccount.extra_data``.

0.39.0

*******************

Note worthy changes
-------------------

- New providers: JupyterHub (OAuth2), Steam (OpenID)

- Refactor translations: Portuguese (Portugal).

- Add testing for Django 2.2 (no code changes required)

Backwards incompatible changes
------------------------------

- ``linkedin_oauth2``: As the LinkedIn V1 API is deprecated, the user info
endpoint has been moved over to use the API V2. The format of the user
``extra_data`` is different and the profile picture is absent by default.
Links

Update django-autoslug from 1.9.3 to 1.9.4.

Changelog

1.9.4

-----------------

New features:

- Add `manager_name` kwarg to enable using custom managers from abstract models
- Add compatibility for Django versions 1.10, 1.11, 2.0, and 2.1
- Transfer project to new maintainer
Links

Update django-filter from 1.1.0 to 2.1.0.

Changelog

2.1

-----------------------

* Fixed a regression in ``FilterView`` introduced in 2.0. An empty ``QuerySet`` was
incorrectly used whenever the FilterSet was unbound (i.e. when there were
no GET parameters).  The correct, pre-2.0 behaviour is now restored.

A workaround was to set ``strict=False`` on the ``FilterSet``. This is no
longer necessary, so you may restore `strict` behaviour as desired.

* Added ``IsoDateTimeFromToRangeFilter``. Allows From-To filtering using
ISO-8601 formatted dates.

2.0

-----------------------

2.0 introduced a number of small changes and tidy-ups.
Please see the migration guide:

https://django-filter.readthedocs.io/en/master/guide/migration.htmlmigrating-to-2-0

* Added testing for Python 3.7 (944)
* Improve exception message for invalid filter result (943)
* Test QueryDict against CSV filters (937)
* Add `renderer` argument to `render()` method of `BooleanWidget` (923)
* Fix lookups for reverse relationships (915)
* Refactor backend filterset instantiation (865)
* Improve view-related attribute name consistency (867)
* Fix distinct call for range filters (855)
* Fix empty value check for CSV range (854)
* Rework DateRangeFilter (852)
* Added testing for Django 2.1
* Rework 'lookup types' handling into LookupChoiceFilter (851)
* Add linting and docs builds to CI (850)
* Use DRF BooleanFilter for NullBooleanField (844)
* Added Brazilian locale (841)
* List Django as a dependency in setup.py (846)
* Keep coverage reports files off version control. (924)
* Update migration docs (866)
* Added  be, cs and uk translations. Updated de and ru (861)
* Slovak translation (886)
* Added Django 2.0 support. (836)
* Fix warnings build (829)
* Add greek translation (827)
* Replaced super(ClassName, self) with super() (821)
* Fixed doc URL in utils.deprecate(). (820)
* Added danish translation to django-filter (809)
* Rework validation, add queryset filter method (788)
* Fix Schema warnings (803)
* Update {Range,LookupType}Widgets to use suffixes (770)
* Method signature improvements (800)
* Remove more deprecations (801)
* Drop python 2, Django<1.11 support (797)
* Remove 'Meta.together' option (791)
* [2.x] Remove some deprecations (795)
Links

Update djangorestframework from 3.8.2 to 3.9.2.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update easy-thumbnails from 2.5 to 2.6.

Changelog

2.6.0

------------------

* Added testing for Django 2.2 (no code changes required).
Links

Update python-dateutil from 2.7.3 to 2.8.0.

Changelog

2.8.0

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

Data updates
------------

- Updated tzdata version to to 2018i.


Features
--------

- Added support for ``EXDATE`` parameters when parsing ``rrule`` strings.
Reported by mlorant (gh issue 410), fixed by nicoe (gh pr 859).
- Added support for sub-minute time zone offsets in Python 3.6+.
Fixed by cssherry (gh issue 582, pr 763)
- Switched the ``tzoffset``, ``tzstr`` and ``gettz`` caches over to using weak
references, so that the cache expires when no other references to the
original ``tzinfo`` objects exist. This cache-expiry behavior is not
guaranteed in the public interface and may change in the future. To improve
performance in the case where transient references to the same time zones
are repeatedly created but no strong reference is continuously held, a
smaller "strong value" cache was also added. Weak value cache implemented by
cs-cordero (gh pr 672, 801), strong cache added by
Gökçen Nurlu (gh issue 691, gh pr 761)


Bugfixes
--------

- Added time zone inference when initializing an ``rrule`` with a specified
``UNTIL`` but without an explicitly specified ``DTSTART``; the time zone
of the generated ``DTSTART`` will now be taken from the ``UNTIL`` rule.
Reported by href (gh issue 652). Fixed by absreim (gh pr 693).
- Fixed an issue where ``parser.parse`` would raise ``Decimal``-specific errors
instead of a standard ``ValueError`` if certain malformed values were parsed
(e.g. ``NaN`` or infinite values). Reported and fixed by
amureki (gh issue 662, gh pr 679).
- Fixed issue in ``parser`` where a ``tzinfos`` call explicitly returning
``None`` would throw a ``ValueError``.
Fixed by parsethis (gh issue 661, gh pr 681)
- Fixed incorrect parsing of certain dates earlier than 100 AD when repesented
in the form "%B.%Y.%d", e.g. "December.0031.30". (gh issue 687, pr 700)
- Add support for ISO 8601 times with comma as the decimal separator in the
``dateutil.parser.isoparse`` function. (gh pr 721)
- Changed handling of ``T24:00`` to be compliant with the standard. ``T24:00``
now represents midnight on the *following* day.
Fixed by cheukting (gh issue 658, gh pr 751)
- Fixed an issue where ``isoparser.parse_isotime`` was unable to handle the
``24:00`` variant representation of midnight. (gh pr 773)
- Added support for more than 6 fractional digits in `isoparse`.
Reported and fixed by jayschwa (gh issue 786, gh pr 787).
- Added 'z' (lower case Z) as valid UTC time zone in isoparser.
Reported by cjgibson (gh issue 820). Fixed by Cheukting (gh pr 822)
- Fixed a bug with base offset changes during DST in ``tzfile``, and refactored
the way base offset changes are detected. Originally reported on
StackOverflow by MartinThoma. (gh issue 812, gh pr 810)
- Fixed error condition in ``tz.gettz`` when a non-ASCII timezone is passed on
Windows in Python 2.7. (gh issue 802, pr 861)
- Improved performance and inspection properties of ``tzname`` methods.
(gh pr 811)
- Removed unnecessary binary_type compatibility shims.
Added by jdufresne (gh pr 817)
- Changed ``python setup.py test`` to print an error to ``stderr`` and exit
with 1 instead of 0. Reported and fixed by hroncok (gh pr 814)
- Added a ``pyproject.toml`` file with build requirements and an explicitly
specified build backend. (gh issue 736, gh prs 746, 863)


Documentation changes
---------------------

- Added documentation for the ``rrule.rrulestr`` function.
Fixed by prdickson (gh issue 623, gh pr 762)
- Added documentation for ``dateutil.tz.gettz``.
Fixed by weatherpattern (gh issue 647, gh pr 704)
- Add documentation for the ``dateutil.tz.win`` module and mocked out certain
Windows-specific modules so that autodoc can still be run on non-Windows
systems. (gh issue 442, pr 715)
- Added changelog to documentation. (gh issue 692, gh pr 707)
- Changed order of keywords in the ``rrule`` docstring.
Reported and fixed by rmahajan14 (gh issue 686, gh pr 695).
- Improved documentation on the use of ``until`` and ``count`` parameters in
``rrule``. Fixed by lucaferocino (gh pr 755).
- Added an example of how to use a custom ``parserinfo`` subclass to parse
non-standard datetime formats in the examples documentation for ``parser``.
Added by prdickson (gh 753)
- Added doctest examples to ``tzfile`` documentation.
Patch by weatherpattern (gh pr 671)
- Updated the documentation for ``relativedelta``'s ``weekday`` arguments.
Fixed by kvn219 huangy22 and ElliotJH (gh pr 673)
- Improved explanation of the order that ``relativedelta`` components are
applied in. Fixed by kvn219 huangy22 and ElliotJH (gh pr 673)
- Expanded the description and examples in the ``relativedelta`` class.
Contributed by andrewcbennett (gh pr 759)
- Improved the contributing documentation to clarify where to put new changelog
files. Contributed by andrewcbennett (gh pr 757)
- Fixed a broken doctest in the ``relativedelta`` module.
Fixed by nherriot (gh pr 758).
- Changed the default theme to ``sphinx_rtd_theme``, and changed the sphinx
configuration accordingly. (gh pr 707)
- Reorganized ``dateutil.tz`` documentation and fixed issue with the
``dateutil.tz`` docstring. (gh pr 714)
- Cleaned up malformed RST in the ``tz`` documentation.
(gh issue 702, gh pr 706)
- Corrected link syntax and updated URL to https for ISO year week number
notation in ``relativedelta`` examples. (gh issue 670, pr 711)


Misc
----

- GH 674, GH 688, GH 699, GH 720, GH 723, GH 726, GH 727, GH 740,
GH 750, GH 760, GH 767, GH 772, GH 773, GH 780, GH 784, GH 785,
GH 791, GH 799, GH 813, GH 836, GH 839, GH 857

2.7.5

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

Data updates
------------

- Update tzdata to 2018g

2.7.4

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

Data updates
------------

- Updated tzdata version to 2018f.
Links

Update raven from 6.9.0 to 6.10.0.

Changelog

6.10.0

------

* [Core] Fixed stackframes in some situations being in inverse order.
* [Flask] Fix wrong exception handling logic (accidentally relied on Flask internals).
* [Core] No longer send NaN local vars as non-standard JSON.
Links

Update rules from 1.3 to 2.0.1.

Changelog

2.0.1

- Fixed issue with using ``rules`` in ``CreateView`` CBV

2.0.0

- Removed support for Python 2.6 and 3.3
- Removed support for Django versions before 1.11
- Removed ``SkipPredicate`` exception and ``skip`` method of ``Predicate``
- Removed ``replace_rule`` and related APIs
- Added ``set_rule`` and related APIs to safely replace a rule without having
to ensure one already exists
- Added compatibility with Django v2.1
- Re-introduced support for PyPy and PyPy 3
- Changed Python and Django supported versions policy to exclude end-of-life
versions. Support for EOL'd versions will be dropped in minor version
updates of ``rules`` from now on.

1.4.0

- Fixed masking AttributeErrors raised from CBV get_object
- Fixed compatibility with `inspect` in newer Python 3 versions
- Added ability to replace rules and permissions
Links

Update django-debug-toolbar from 1.10.1 to 1.11.

Changelog

1.11

-----------------

* Use ``defer`` on all ``<script>`` tags to avoid blocking HTML parsing,
removed inline JavaScript.
* Stop inlining images in CSS to avoid Content Security Policy errors
altogether.
* Reformatted the code using `black <https://github.com/ambv/black>`__.
* Added the Django mail panel to the list of third-party panels.
* Convert system check errors to warnings to accomodate exotic
configurations.
* Fixed a crash when explaining raw querysets.
* Fixed an obscure unicode error with binary data fields.
* Added MariaDB and Python 3.7 builds to the CI.
Links

Update Faker from 0.9.1 to 1.0.2.

Changelog

1.0.2

--------------------------------------------------------------------------------------

* Fix state abbreviations for ``id_ID`` to be 2-letters. Thanks dt-ap.
* Fix format for ``city_with_postcode`` on ``de_DE`` locale. Thanks TZanke.
* Update ``person`` providers for ``zh_CN``. Thanks TimeFinger.
* Implement ``zipcode_in_state`` and aliases in ``en_US`` locale for generating
a zipcode for a specified state. Thanks mattyg.
* Group first names by gender on ``zh_CN`` provider. Thanks TimeFinger.

1.0.1

* 1 minor enhancement
 * Added safe_email method to get someaddressexample.com [Kazimierz Kiełkowicz]
* 1 bug fix:
 * Use the locale fallback properly when parsing string formats

1.0.0

* 2 major enhancements
 * Moved all formats to locale files
 * Stopped interfering with I18n's global settings for fallbacks
* 3 minor bug fixes:
 * Ruby 1.9.2 fixes [eMxyzptlk]
 * UTF8 fixes [maxmiliano]
 * Updated IPv4 generator to return valid addresses [Sylvain Desbureaux]
* Many minor enhancements:
 * Added bork locale for bork-ified lorem [johnbentcope]
 * Added IPv6 address generator [jc00ke]
 * Removed deprecation warnings for Arrayrand [chrismarshall]
 * Added German translation and I18n improvments [Matthias Kühnert]
 * Added Dutch translation [moretea]
 * Added Lat/Long generator [Andy Callaghan]
 * Added buzzword-laden title generator [supercleanse]
 * Added optional extended wordlist for lorem [chriskottom]
 * Updated German translation [Jan Schwenzien]
 * Locale improvements [suweller]
 * Added limit to lorem generator [darrenterhune]
 * Added Brazilian Portuguese translation [maxmiliano]
 * Added Australian translation [madeindata]
 * Added Canadian translation [igbanam]
 * Added Norwegian translation [kytrinyx]
 * Lots of translation-related cleanup [kytrinyx]

0.9.5

* 1 minor bug fix:
 * Fixed YAML [Aaron Patterson]
* 3 minor enhancements:
 * Added default rake task to run all tests [Aaron Patterson]
 * Removed shuffle method [Aaron Patterson]
 * Use psych if present [Aaron Patterson]

0.9.4

* 1 minor bug fix:
 * Stopped getting in the way of Rails' late locale loading

0.9.3

* 1 minor enhancement:
 * Added a faker namespace for translations

0.9.2

* 1 bug fix:
 * Stopped stomping on I18n load path
Links

Update flake8 from 3.5.0 to 3.7.7.

Changelog

3.7.7

-------------------

You can view the `3.7.7 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix crahes in plugins causing ``flake8`` to hang while unpickling errors (See
also `GitLab!308`_, `GitLab505`_)


.. all links
.. _3.7.7 milestone:
 https://gitlab.com/pycqa/flake8/milestones/30

.. issue links
.. _GitLab505:
 https://gitlab.com/pycqa/flake8/issues/505

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

3.7.6

-------------------

You can view the `3.7.6 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix ``--per-file-ignores`` for multi-letter error codes (See also
`GitLab!303`_, `GitLab507`_)

- Improve flake8 speed when only 1 filename is passed (See also `GitLab!305`_)


.. all links
.. _3.7.6 milestone:
 https://gitlab.com/pycqa/flake8/milestones/29

.. issue links
.. _GitLab507:
 https://gitlab.com/pycqa/flake8/issues/507

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

3.7.5

-------------------

You can view the `3.7.5 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix reporting of pyflakes "referenced before assignment" error (See also
`GitLab!301`_, `GitLab503`_)


.. all links
.. _3.7.5 milestone:
 https://gitlab.com/pycqa/flake8/milestones/28

.. issue links
.. _GitLab503:
 https://gitlab.com/pycqa/flake8/issues/503

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

3.7.4

-------------------

You can view the `3.7.4 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix performance regression with lots of ``per-file-ignores`` and errors
(See also `GitLab!299`_, `GitLab501`_)


.. all links
.. _3.7.4 milestone:
 https://gitlab.com/pycqa/flake8/milestones/27

.. issue links
.. _GitLab501:
 https://gitlab.com/pycqa/flake8/issues/501

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

3.7.3

-------------------

You can view the `3.7.3 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix imports of ``typing`` in python 3.5.0 / 3.5.1 (See also `GitLab!294`_,
`GitLab498`_)

- Fix ``flake8 --statistics`` (See also `GitLab!295`_, `GitLab499`_)

- Gracefully ignore ``flake8-per-file-ignores`` plugin if installed (See also
`GitLab!297`_, `GitLab495`_)

- Improve error message for malformed ``per-file-ignores`` (See also
`GitLab!298`_, `GitLab489`_)


.. all links
.. _3.7.3 milestone:
 https://gitlab.com/pycqa/flake8/milestones/26

.. issue links
.. _GitLab489:
 https://gitlab.com/pycqa/flake8/issues/489
.. _GitLab495:
 https://gitlab.com/pycqa/flake8/issues/495
.. _GitLab498:
 https://gitlab.com/pycqa/flake8/issues/498
.. _GitLab499:
 https://gitlab.com/pycqa/flake8/issues/499

.. merge request links
.. _GitLab!294:
 https://gitlab.com/pycqa/flake8/merge_requests/294
.. _GitLab!295:
 https://gitlab.com/pycqa/flake8/merge_requests/295
.. _GitLab!297:
 https://gitlab.com/pycqa/flake8/merge_requests/297
.. _GitLab!298:
 https://gitlab.com/pycqa/flake8/merge_requests/298

3.7.2

-------------------

You can view the `3.7.2 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix broken ``flake8 --diff`` (regressed in 3.7.0) (See also `GitLab!292`_,
`GitLab490`_)

- Fix typo in plugin exception reporting (See also `GitLab!275`_,
`GitLab491`_)

- Fix ``AttributeError`` while attempting to use the legacy api (regressed in
3.7.0) (See also `GitLab!293`_, `GitLab497`_)

.. all links
.. _3.7.2 milestone:
 https://gitlab.com/pycqa/flake8/milestones/25

.. issue links
.. _GitLab490:
 https://gitlab.com/pycqa/flake8/issues/490
.. _GitLab491:
 https://gitlab.com/pycqa/flake8/issues/491
.. _GitLab497:
 https://gitlab.com/pycqa/flake8/issues/497

.. merge request links
.. _GitLab!292:
 https://gitlab.com/pycqa/flake8/merge_requests/292
.. _GitLab!275:
 https://gitlab.com/pycqa/flake8/merge_requests/275
.. _GitLab!293:
 https://gitlab.com/pycqa/flake8/merge_requests/293

3.7.1

-------------------

You can view the `3.7.1 milestone`_ on GitLab for more details.

Bugs Fixed
~~~~~~~~~~

- Fix capitalized filenames in ``per-file-ignores`` setting (See also
`GitLab!290`_, `GitLab488`_)

.. all links
.. _3.7.1 milestone:
 https://gitlab.com/pycqa/flake8/milestones/24

.. issue links
.. _GitLab488:
 https://gitlab.com/pycqa/flake8/issues/488

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

3.7.0

-------------------

You can view the `3.7.0 milestone`_ on GitLab for more details.

New Dependency Information
~~~~~~~~~~~~~~~~~~~~~~~~~~

- Add dependency on ``entrypoints`` >= 0.3, < 0.4 (See also `GitLab!264`_,
`GitLab!288`_)

- Pyflakes has been updated to >= 2.1.0, < 2.2.0 (See also `GitLab!283`_,
`GitLab!285`_)

- pycodestyle has been updated to >= 2.5.0, < 2.6.0 (See also `GitLab!287`_)

Features
~~~~~~~~

- Add support for ``per-file-ignores`` (See also `GitLab!259`_, `GitLab156`_,
`GitLab!281`_, `GitLab471`_)

- Enable use of ``float`` and ``complex`` option types (See also `GitLab!261`_,
`GitLab452`_)

- Improve startup performance by switching from ``pkg_resources`` to
``entrypoints`` (See also `GitLab!264`_)

- Add metadata for use through the `pre-commit`_ git hooks framework (See also
`GitLab!268`_, `GitLab!284`_)

- Allow physical line checks to return more than one result (See also
`GitLab!269`_)

- Allow `` noqa:X123`` comments without space between the colon and codes
list (See also `GitLab!273`_, `GitLab470`_)

- Remove broken and unused ``flake8.listen`` plugin type (See also
`GitLab!274`_, `GitLab480`_)

.. all links
.. _3.7.0 milestone:
 https://gitlab.com/pycqa/flake8/milestones/23
.. _pre-commit:
 https://pre-commit.com/

.. issue links
.. _GitLab156:
 https://gitlab.com/pycqa/flake8/issues/156
.. _GitLab452:
 https://gitlab.com/pycqa/flake8/issues/452
.. _GitLab470:
 https://gitlab.com/pycqa/flake8/issues/470
.. _GitLab471:
 https://gitlab.com/pycqa/flake8/issues/471
.. _GitLab480:
 https://gitlab.com/pycqa/flake8/issues/480

.. merge request links
.. _GitLab!259:
 https://gitlab.com/pycqa/flake8/merge_requests/259
.. _GitLab!261:
 https://gitlab.com/pycqa/flake8/merge_requests/261
.. _GitLab!264:
 https://gitlab.com/pycqa/flake8/merge_requests/264
.. _GitLab!268:
 https://gitlab.com/pycqa/flake8/merge_requests/268
.. _GitLab!269:
 https://gitlab.com/pycqa/flake8/merge_requests/269
.. _GitLab!273:
 https://gitlab.com/pycqa/flake8/merge_requests/273
.. _GitLab!274:
 https://gitlab.com/pycqa/flake8/merge_requests/274
.. _GitLab!281:
 https://gitlab.com/pycqa/flake8/merge_requests/281
.. _GitLab!283:
 https://gitlab.com/pycqa/flake8/merge_requests/283
.. _GitLab!284:
 https://gitlab.com/pycqa/flake8/merge_requests/284
.. _GitLab!285:
 https://gitlab.com/pycqa/flake8/merge_requests/285
.. _GitLab!287:
 https://gitlab.com/pycqa/flake8/merge_requests/287
.. _GitLab!288:
 https://gitlab.com/pycqa/flake8/merge_requests/288

3.6.0

-------------------

You can view the `3.6.0 milestone`_ on GitLab for more details.

New Dependency Information
~~~~~~~~~~~~~~~~~~~~~~~~~~

- pycodestyle has been updated to >= 2.4.0, < 2.5.0 (See also `GitLab381`_,
`GitLab415`_, `GitLab!212`_, `GitLab!230`_, `GitLab!231`_)

- Pyflakes has been updated to >= 2.0.0, < 2.1.0 (See also `GitLab422`_,
`GitLab!239`_)

- flake8 requires python 2.x >= 2.7 or python 3.x >= 3.4 (See also
`GitLab!225`_)

Features
~~~~~~~~

- Add ``paths`` to allow local plugins to exist outside of ``sys.path`` (See
also `GitLab379`_, `GitLab!211`_)

- Copy ``setup.cfg`` files to the temporary git hook execution directory (See
also `GitLab!215`_)

- Only skip a file if `` flake8: noqa`` is on a line by itself (See also
`GitLab453`_, `GitLab!219`_)

- Provide a better user experience for broken plugins (See also `GitLab!221`_)

- Report ``E902`` when a file passed on the command line does not exist (See
also `GitLab405`_, `GitLab!227`_)

- Add ``--extend-ignore`` for extending the default ``ignore`` instead of
overriding it (See also `GitLab365`_, `GitLab!233`_)

Bugs Fixed
~~~~~~~~~~

- Respect a formatter's newline setting when printing (See also `GitLab!222`_)

- Fix leaking of processes in the legacy api (See also `GitLab410`_,
`GitLab!228`_)

- Fix a ``SyntaxWarning`` for an invalid escape sequence (See also
`GitLab!244`_)

- Fix ``DeprecationWarning`` due to import of ``abc`` classes from the
``collections`` module (See also `GitLab!249`_)

- Defer ``setuptools`` import to improve flake8 startup time (See also
`GitLab!250`_)

- Fix inconsistent line endings in ``FileProcessor.lines`` when running under
python 3.x (See also `GitLab457`_, `GitLab!255`_)


.. all links
.. _3.6.0 milestone:
 https://gitlab.com/pycqa/flake8/milestones/21

.. issue links
.. _GitLab365:
 https://gitlab.com/pycqa/flake8/issues/365
.. _GitLab379:
 https://gitlab.com/pycqa/flake8/issues/379
.. _GitLab381:
 https://gitlab.com/pycqa/flake8/issues/381
.. _GitLab405:
 https://gitlab.com/pycqa/flake8/issues/405
.. _GitLab410:
 https://gitlab.com/pycqa/flake8/issues/410
.. _GitLab415:
 https://gitlab.com/pycqa/flake8/issues/415
.. _GitLab422:
 https://gitlab.com/pycqa/flake8/issues/422
.. _GitLab453:
 https://gitlab.com/pycqa/flake8/issues/453
.. _GitLab457:
 https://gitlab.com/pycqa/flake8/issues/457

.. merge request links
.. _GitLab!211:
 https://gitlab.com/pycqa/flake8/merge_requests/211
.. _GitLab!212:
 https://gitlab.com/pycqa/flake8/merge_requests/212
.. _GitLab!215:
 https://gitlab.com/pycqa/flake8/merge_requests/215
.. _GitLab!219:
 https://gitlab.com/pycqa/flake8/merge_requests/219
.. _GitLab!221:
 https://gitlab.com/pycqa/flake8/merge_requests/221
.. _GitLab!222:
 https://gitlab.com/pycqa/flake8/merge_requests/222
.. _GitLab!225:
 https://gitlab.com/pycqa/flake8/merge_requests/225
.. _GitLab!227:
 https://gitlab.com/pycqa/flake8/merge_requests/227
.. _GitLab!228:
 https://gitlab.com/pycqa/flake8/merge_requests/228
.. _GitLab!230:
 https://gitlab.com/pycqa/flake8/merge_requests/230
.. _GitLab!231:
 https://gitlab.com/pycqa/flake8/merge_requests/231
.. _GitLab!233:
 https://gitlab.com/pycqa/flake8/merge_requests/233
.. _GitLab!239:
 https://gitlab.com/pycqa/flake8/merge_requests/239
.. _GitLab!244:
 https://gitlab.com/pycqa/flake8/merge_requests/244
.. _GitLab!249:
 https://gitlab.com/pycqa/flake8/merge_requests/249
.. _GitLab!250:
 https://gitlab.com/pycqa/flake8/merge_requests/250
.. _GitLab!255:
 https://gitlab.com/pycqa/flake8/merge_requests/255
Links

Update freezegun from 0.3.10 to 0.3.11.

Changelog

0.3.11

------

* Performance improvements
* Fix nesting time.time
* Add nanosecond property
Links

Update isort from 4.3.4 to 4.3.10.

Changelog

4.3.9

- Fixed a bug that led to an incompatibility with black: 831

4.3.8

- Fixed a bug that led to the recursive option not always been available from the command line.

4.3.7

- Expands the finder failsafe to occur on the creation of the finder objects.

4.3.6

- Fixes a fatal error that occurs if a single finder throws an exception. Important as we add more finders that utilize third party libraries.

4.3.5 - February 24, 2019 - last Python 2.7 Maintenance Release

This is the final Python 2.x release of isort, and includes the following major changes:

Potentially Interface Breaking:
- The `-r` option for removing imports has been renamed `-rm` to avoid accidental deletions and confusion with the `-rc` recursive option.
- `__init__.py` has been removed from the default ignore list. The default ignore list is now empty - with all items needing to be explicitly ignored.
- Isort will now by default ignore .tox / venv folders in an effort to be "safe". You can disable this behaviour by setting the "--unsafe" flag, this is separate from any skip or not skip rules you may have in place.
- Isort now allows for files missing closing newlines in whitespace check
- `distutils` support has been removed to simplify setup.py

New:
- Official Python 3.7 Compatibility.
- Support for using requirements files to auto determine third-paty section if pipreqs & requirementslib are installed.
- Added support for using pyproject.toml if toml is installed.
- Added support for XDG_HOME if appdirs is installed.
- An option has been added to enable ignoring trailing comments ('ignore_comments') defaulting to False.
- Added support to enable line length sorting for only specific sections
- Added a `correctly_sorted` property on the SortsImport to enable more intuitive programmatic checking.

Fixes:
- Improved black compatibility.
- Isort will no detect files in the CWD as first-party.
- Fixed several cases where '-ns' or 'not_skip' was being incorrectly ignored.
- Fixed sorting of relative path imports ('.', '..', '...', etc).
- Fixed bugs caused by a failure to maintain order when loading iterables from config files.
- Correctly handle CPython compiled imports and others that need EXT_SUFFIX to correctly identify.
- Fixed handling of Symbolic Links to follow them when walking the path.
- Fixed handling of relative known_paths.
- Fixed lack of access to all wrap modes from the CLI.
- Fixed handling of FIFO files.
- Fixed a bug that could result in multiple imports being inserted on the same line.
Links

Update pytest-cov from 2.5.1 to 2.6.1.

Changelog

2.6.1

------------------

* Added support for Pytest 4.1. Contributed by Daniel Hahler and Семён Марьясин in
`253 <https://github.com/pytest-dev/pytest-cov/pull/253>`_ and
`230 <https://github.com/pytest-dev/pytest-cov/pull/230>`_.
* Various test and docs fixes. Contributed by Daniel Hahler in
`224 <https://github.com/pytest-dev/pytest-cov/pull/224>`_ and
`223 <https://github.com/pytest-dev/pytest-cov/pull/223>`_.
* Fixed the "Module already imported" issue (`211 <https://github.com/pytest-dev/pytest-cov/issues/211>`_).
Contributed by Daniel Hahler in `228 <https://github.com/pytest-dev/pytest-cov/pull/228>`_.

2.6.0

------------------

* Dropped support for Python < 3.4, Pytest < 3.5 and Coverage < 4.4.
* Fixed some documentation formatting. Contributed by Jean Jordaan and Julian.
* Added an example with ``addopts`` in documentation. Contributed by Samuel Giffard in
`195 <https://github.com/pytest-dev/pytest-cov/pull/195>`_.
* Fixed ``TypeError: 'NoneType' object is not iterable`` in certain xdist configurations. Contributed by Jeremy Bowman in
`213 <https://github.com/pytest-dev/pytest-cov/pull/213>`_.
* Added a ``no_cover`` marker and fixture. Fixes
`78 <https://github.com/pytest-dev/pytest-cov/issues/78>`_.
* Fixed broken ``no_cover`` check when running doctests. Contributed by Terence Honles in
`200 <https://github.com/pytest-dev/pytest-cov/pull/200>`_.
* Fixed various issues with path normalization in reports (when combining coverage data from parallel mode). Fixes
`130 <https://github.com/pytest-dev/pytest-cov/issues/161>`_.
Contributed by Ryan Hiebert & Ionel Cristian Mărieș in
`178 <https://github.com/pytest-dev/pytest-cov/pull/178>`_.
* Report generation failures don't raise exceptions anymore. A warning will be logged instead. Fixes
`161 <https://github.com/pytest-dev/pytest-cov/issues/161>`_.
* Fixed multiprocessing issue on Windows (empty env vars are not passed). Fixes
`165 <https://github.com/pytest-dev/pytest-cov/issues/165>`_.
Links

Update pytest-django from 3.4.3 to 3.4.8.

Changelog

3.4.8

------------------

Bugfixes
^^^^^^^^

* Fix DB renaming fixture for Multi-DB environment with SQLite (679)

3.4.7

------------------

Bugfixes
^^^^^^^^

* Fix disabling/handling of unittest methods with pytest 4.2+ (700)

3.4.6

------------------

Bugfixes
^^^^^^^^

* django_find_project: add cwd as fallback always (690)

Misc
^^^^

* Enable tests for Django 2.2 and add classifier (693)
* Disallow pytest 4.2.0 in ``install_requires`` (697)

3.4.5

------------------

Bugfixes
^^^^^^^^

* Use ``request.config`` instead of ``pytest.config`` (677)
* :fixture:`admin_user`: handle "email" username_field (676)

Misc
^^^^

* Minor doc fixes (674)
* tests: fix for pytest 4 (675)

3.4.4

------------------

Bugfixes
^^^^^^^^

* Refine the django.conf module check to see if the settings really are
configured (668).
* Avoid crash after OSError during Django path detection (664).

Features
^^^^^^^^

* Add parameter info to fixture assert_num_queries to display additional message on failure (663).

Docs
^^^^

* Improve doc for django_assert_num_queries/django_assert_max_num_queries.
* Add warning about sqlite specific snippet + fix typos (666).

Misc
^^^^

* MANIFEST.in: include tests for downstream distros (653).
* Ensure that the LICENSE file is included in wheels (665).
* Run black on source.
Links

Update pytest-factoryboy from 2.0.1 to 2.0.2.

Changelog

2.0.2

-----

- Fix warning `use of getfuncargvalue is deprecated, use getfixturevalue` (sliverc)
Links

Update pytest from 3.7.4 to 4.3.0.

Changelog

4.3.0

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

Deprecations
------------

- `4724 <https://github.com/pytest-dev/pytest/issues/4724>`_: ``pytest.warns()`` now emits a warning when it receives unknown keyword arguments.

This will be changed into an error in the future.



Features
--------

- `2753 <https://github.com/pytest-dev/pytest/issues/2753>`_: Usage errors from argparse are mapped to pytest's ``UsageError``.


- `3711 <https://github.com/pytest-dev/pytest/issues/3711>`_: Add the ``--ignore-glob`` parameter to exclude test-modules with Unix shell-style wildcards.
Add the ``collect_ignore_glob`` for ``conftest.py`` to exclude test-modules with Unix shell-style wildcards.


- `4698 <https://github.com/pytest-dev/pytest/issues/4698>`_: The warning about Python 2.7 and 3.4 not being supported in pytest 5.0 has been removed.

In the end it was considered to be more
of a nuisance than actual utility and users of those Python versions shouldn't have problems as ``pip`` will not
install pytest 5.0 on those interpreters.


- `4707 <https://github.com/pytest-dev/pytest/issues/4707>`_: With the help of new ``set_log_path()`` method there is a way to set ``log_file`` paths from hooks.



Bug Fixes
---------

- `4651 <https://github.com/pytest-dev/pytest/issues/4651>`_: ``--help`` and ``--version`` are handled with ``UsageError``.


- `4782 <https://github.com/pytest-dev/pytest/issues/4782>`_: Fix ``AssertionError`` with collection of broken symlinks with packages.

4.2.1

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

Bug Fixes
---------

- `2895 <https://github.com/pytest-dev/pytest/issues/2895>`_: The ``pytest_report_collectionfinish`` hook now is also called with ``--collect-only``.


- `3899 <https://github.com/pytest-dev/pytest/issues/3899>`_: Do not raise ``UsageError`` when an imported package has a ``pytest_plugins.py`` child module.


- `4347 <https://github.com/pytest-dev/pytest/issues/4347>`_: Fix output capturing when using pdb++ with recursive debugging.


- `4592 <https://github.com/pytest-dev/pytest/issues/4592>`_: Fix handling of ``collect_ignore`` via parent ``conftest.py``.


- `4700 <https://github.com/pytest-dev/pytest/issues/4700>`_: Fix regression where ``setUpClass`` would always be called in subclasses even if all tests
were skipped by a ``unittest.skip()`` decorator applied in the subclass.


- `4739 <https://github.com/pytest-dev/pytest/issues/4739>`_: Fix ``parametrize(... ids=<function>)`` when the function returns non-strings.


- `4745 <https://github.com/pytest-dev/pytest/issues/4745>`_: Fix/improve collection of args when passing in ``__init__.py`` and a test file.


- `4770 <https://github.com/pytest-dev/pytest/issues/4770>`_: ``more_itertools`` is now constrained to <6.0.0 when required for Python 2.7 compatibility.


- `526 <https://github.com/pytest-dev/pytest/issues/526>`_: Fix "ValueError: Plugin already registered" exceptions when running in build directories that symlink to actual source.



Improved Documentation
----------------------

- `3899 <https://github.com/pytest-dev/pytest/issues/3899>`_: Add note to ``plugins.rst`` that ``pytest_plugins`` should not be used as a name for a user module containing plugins.


- `4324 <https://github.com/pytest-dev/pytest/issues/4324>`_: Document how to use ``raises`` and ``does_not_raise`` to write parametrized tests with conditional raises.


- `4709 <https://github.com/pytest-dev/pytest/issues/4709>`_: Document how to customize test failure messages when using
``pytest.warns``.



Trivial/Internal Changes
------------------------

- `4741 <https://github.com/pytest-dev/pytest/issues/4741>`_: Some verbosity related attributes of the TerminalReporter plugin are now
read only properties.

4.2.0

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

Features
--------

- `3094 <https://github.com/pytest-dev/pytest/issues/3094>`_: `Classic xunit-style <https://docs.pytest.org/en/latest/xunit_setup.html>`__ functions and methods
now obey the scope of *autouse* fixtures.

This fixes a number of surprising issues like ``setup_method`` being called before session-scoped
autouse fixtures (see `517 <https://github.com/pytest-dev/pytest/issues/517>`__ for an example).


- `4627 <https://github.com/pytest-dev/pytest/issues/4627>`_: Display a message at the end of the test session when running under Python 2.7 and 3.4 that pytest 5.0 will no longer
support those Python versions.


- `4660 <https://github.com/pytest-dev/pytest/issues/4660>`_: The number of *selected* tests now are also displayed when the ``-k`` or ``-m`` flags are used.


- `4688 <https://github.com/pytest-dev/pytest/issues/4688>`_: ``pytest_report_teststatus`` hook now can also receive a ``config`` parameter.


- `4691 <https://github.com/pytest-dev/pytest/issues/4691>`_: ``pytest_terminal_summary`` hook now can also receive a ``config`` parameter.



Bug Fixes
---------

- `3547 <https://github.com/pytest-dev/pytest/issues/3547>`_: ``--junitxml`` can emit XML compatible with Jenkins xUnit.
``junit_family`` INI option accepts ``legacy|xunit1``, which produces old style output, and ``xunit2`` that conforms more strictly to https://github.com/jenkinsci/xunit-plugin/blob/xunit-2.3.2/src/main/resources/org/jenkinsci/plugins/xunit/types/model/xsd/junit-10.xsd


- `4280 <https://github.com/pytest-dev/pytest/issues/4280>`_: Improve quitting from pdb, especially with ``--trace``.

Using ``q[quit]`` after ``pdb.set_trace()`` will quit pytest also.


- `4402 <https://github.com/pytest-dev/pytest/issues/4402>`_: Warning summary now groups warnings by message instead of by test id.

This makes the output more compact and better conveys the general idea of how much code is
actually generating warnings, instead of how many tests call that code.


- `4536 <https://github.com/pytest-dev/pytest/issues/4536>`_: ``monkeypatch.delattr`` handles class descriptors like ``staticmethod``/``classmethod``.


- `4649 <https://github.com/pytest-dev/pytest/issues/4649>`_: Restore marks being considered keywords for keyword expressions.


- `4653 <https://github.com/pytest-dev/pytest/issues/4653>`_: ``tmp_path`` fixture and other related ones provides resolved path (a.k.a real path)


- `4667 <https://github.com/pytest-dev/pytest/issues/4667>`_: ``pytest_terminal_summary`` uses result from ``pytest_report_teststatus`` hook, rather than hardcoded strings.


- `4669 <https://github.com/pytest-dev/pytest/issues/4669>`_: Correctly handle ``unittest.SkipTest`` exception containing non-ascii characters on Python 2.


- `4680 <https://github.com/pytest-dev/pytest/issues/4680>`_: Ensure the ``tmpdir`` and the ``tmp_path`` fixtures are the same folder.


- `4681 <https://github.com/pytest-dev/pytest/issues/4681>`_: Ensure ``tmp_path`` is always a real path.



Trivial/Internal Changes
------------------------

- `4643 <https://github.com/pytest-dev/pytest/issues/4643>`_: Use ``a.item()`` instead of the deprecated ``np.asscalar(a)`` in ``pytest.approx``.

``np.asscalar`` has been `deprecated <https://github.com/numpy/numpy/blob/master/doc/release/1.16.0-notes.rstnew-deprecations>`__ in ``numpy 1.16.``.


- `4657 <https://github.com/pytest-dev/pytest/issues/4657>`_: Copy saferepr from pylib


- `4668 <https://github.com/pytest-dev/pytest/issues/4668>`_: The verbose word for expected failures in the teststatus report changes from ``xfail`` to ``XFAIL`` to be consistent with other test outcomes.

4.1.1

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

Bug Fixes
---------

- `2256 <https://github.com/pytest-dev/pytest/issues/2256>`_: Show full repr with ``assert a==b`` and ``-vv``.


- `3456 <https://github.com/pytest-dev/pytest/issues/3456>`_: Extend Doctest-modules to ignore mock objects.


- `4617 <https://github.com/pytest-dev/pytest/issues/4617>`_: Fixed ``pytest.warns`` bug when context manager is reused (e.g. multiple parametrization).


- `4631 <https://github.com/pytest-dev/pytest/issues/4631>`_: Don't rewrite assertion when ``__getattr__`` is broken



Improved Documentation
----------------------

- `3375 <https://github.com/pytest-dev/pytest/issues/3375>`_: Document that using ``setup.cfg`` may crash other tools or cause hard to track down problems because it uses a different parser than ``pytest.ini`` or ``tox.ini`` files.



Trivial/Internal Changes
------------------------

- `4602 <https://github.com/pytest-dev/pytest/issues/4602>`_: Uninstall ``hypothesis`` in regen tox env.

4.1.0

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

Removals
--------

- `2169 <https://github.com/pytest-dev/pytest/issues/2169>`_: ``pytest.mark.parametrize``: in previous versions, errors raised by id functions were suppressed and changed into warnings. Now the exceptions are propagated, along with a pytest message informing the node, parameter value and index where the exception occurred.


- `3078 <https://github.com/pytest-dev/pytest/issues/3078>`_: Remove legacy internal warnings system: ``config.warn``, ``Node.warn``. The ``pytest_logwarning`` now issues a warning when implemented.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlconfig-warn-and-node-warn>`__ on information on how to update your code.


- `3079 <https://github.com/pytest-dev/pytest/issues/3079>`_: Removed support for yield tests - they are fundamentally broken because they don't support fixtures properly since collection and test execution were separated.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlyield-tests>`__ on information on how to update your code.


- `3082 <https://github.com/pytest-dev/pytest/issues/3082>`_: Removed support for applying marks directly to values in ``pytest.mark.parametrize``. Use ``pytest.param`` instead.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlmarks-in-pytest-mark-parametrize>`__ on information on how to update your code.


- `3083 <https://github.com/pytest-dev/pytest/issues/3083>`_: Removed ``Metafunc.addcall``. This was the predecessor mechanism to ``pytest.mark.parametrize``.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlmetafunc-addcall>`__ on information on how to update your code.


- `3085 <https://github.com/pytest-dev/pytest/issues/3085>`_: Removed support for passing strings to ``pytest.main``. Now, always pass a list of strings instead.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlpassing-command-line-string-to-pytest-main>`__ on information on how to update your code.


- `3086 <https://github.com/pytest-dev/pytest/issues/3086>`_: ``[pytest]`` section in **setup.cfg** files is not longer supported, use ``[tool:pytest]`` instead. ``setup.cfg`` files
are meant for use with ``distutils``, and a section named ``pytest`` has notoriously been a source of conflicts and bugs.

Note that for **pytest.ini** and **tox.ini** files the section remains ``[pytest]``.


- `3616 <https://github.com/pytest-dev/pytest/issues/3616>`_: Removed the deprecated compat properties for ``node.Class/Function/Module`` - use ``pytest.Class/Function/Module`` now.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlinternal-classes-accessed-through-node>`__ on information on how to update your code.


- `4421 <https://github.com/pytest-dev/pytest/issues/4421>`_: Removed the implementation of the ``pytest_namespace`` hook.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlpytest-namespace>`__ on information on how to update your code.


- `4489 <https://github.com/pytest-dev/pytest/issues/4489>`_: Removed ``request.cached_setup``. This was the predecessor mechanism to modern fixtures.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlcached-setup>`__ on information on how to update your code.


- `4535 <https://github.com/pytest-dev/pytest/issues/4535>`_: Removed the deprecated ``PyCollector.makeitem`` method. This method was made public by mistake a long time ago.


- `4543 <https://github.com/pytest-dev/pytest/issues/4543>`_: Removed support to define fixtures using the ``pytest_funcarg__`` prefix. Use the ``pytest.fixture`` decorator instead.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlpytest-funcarg-prefix>`__ on information on how to update your code.


- `4545 <https://github.com/pytest-dev/pytest/issues/4545>`_: Calling fixtures directly is now always an error instead of a warning.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlcalling-fixtures-directly>`__ on information on how to update your code.


- `4546 <https://github.com/pytest-dev/pytest/issues/4546>`_: Remove ``Node.get_marker(name)`` the return value was not usable for more than a existence check.

Use ``Node.get_closest_marker(name)`` as a replacement.


- `4547 <https://github.com/pytest-dev/pytest/issues/4547>`_: The deprecated ``record_xml_property`` fixture has been removed, use the more generic ``record_property`` instead.

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlrecord-xml-property>`__ for more information.


- `4548 <https://github.com/pytest-dev/pytest/issues/4548>`_: An error is now raised if the ``pytest_plugins`` variable is defined in a non-top-level ``conftest.py`` file (i.e., not residing in the ``rootdir``).

See our `docs <https://docs.pytest.org/en/latest/deprecations.htmlpytest-plugins-in-non-top-level-conftest-files>`__ for more information.


- `891 <https://github.com/pytest-dev/pytest/issues/891>`_: Remove ``testfunction.markername`` attributes - use ``Node.iter_markers(name=None)`` to iterate them.



Deprecations
------------

- `3050 <https://github.com/pytest-dev/pytest/issues/3050>`_: Deprecated the ``pytest.config`` global.

See https://docs.pytest.org/en/latest/deprecations.htmlpytest-config-global for rationale.


- `3974 <https://github.com/pytest-dev/pytest/issues/3974>`_: Passing the ``message`` parameter of ``pytest.raises`` now issues a ``DeprecationWarning``.

It is a common mistake to think this parameter will match the exception message, while in fact
it only serves to provide a custom message in case the ``pytest.raises`` check fails. To avoid this
mistake and because it is believed to be little used, pytest is deprecating it without providing
an alternative for the moment.

If you have concerns about this, please comment on `issue 3974 <https://github.com/pytest-dev/pytest/issues/3974>`__.


- `4435 <https://github.com/pytest-dev/pytest/issues/4435>`_: Deprecated ``raises(..., 'code(as_a_string)')`` and ``warns(..., 'code(as_a_string)')``.

See https://docs.pytest.org/en/latest/deprecations.htmlraises-warns-exec for rationale and examples.



Features
--------

- `3191 <https://github.com/pytest-dev/pytest/issues/3191>`_: A warning is now issued when assertions are made for ``None``.

This is a common source of confusion among new users, which write:

.. code-block:: python

   assert mocked_object.assert_called_with(3, 4, 5, key="value")

When they should write:

.. code-block:: python

   mocked_object.assert_called_with(3, 4, 5, key="value")

Because the ``assert_called_with`` method of mock objects already executes an assertion.

This warning will not be issued when ``None`` is explicitly checked. An assertion like:

.. code-block:: python

   assert variable is None

will not issue the warning.


- `3632 <https://github.com/pytest-dev/pytest/issues/3632>`_: Richer equality comparison introspection on ``AssertionError`` for objects created using `attrs <http://www.attrs.org/en/stable/>`__ or `dataclasses <https://docs.python.org/3/library/dataclasses.html>`_ (Python 3.7+, `backported to 3.6 <https://pypi.org/project/dataclasses>`__).


- `4278 <https://github.com/pytest-dev/pytest/issues/4278>`_: ``CACHEDIR.TAG`` files are now created inside cache directories.

Those files are part of the `Cache Directory Tagging Standard <http://www.bford.info/cachedir/spec.html>`__, and can
be used by backup or synchronization programs to identify pytest's cache directory as such.


- `4292 <https://github.com/pytest-dev/pytest/issues/4292>`_: ``pytest.outcomes.Exit`` is derived from ``SystemExit`` instead of ``KeyboardInterrupt``. This allows us to better handle ``pdb`` exiting.


- `4371 <https://github.com/pytest-dev/pytest/issues/4371>`_: Updated the ``--collect-only`` option to display test descriptions when ran using ``--verbose``.


- `4386 <https://github.com/pytest-dev/pytest/issues/4386>`_: Restructured ``ExceptionInfo`` object construction and ensure incomplete instances have a ``repr``/``str``.


- `4416 <https://github.com/pytest-dev/pytest/issues/4416>`_: pdb: added support for keyword arguments with ``pdb.set_trace``.

It handles ``header`` similar to Python 3.7 does it, and forwards any
other keyword arguments to the ``Pdb`` constructor.

This allows for ``__import__("pdb").set_trace(skip=["foo.*"])``.


- `4483 <https://github.com/pytest-dev/pytest/issues/4483>`_: Added ini parameter ``junit_duration_report`` to optionally report test call durations, excluding setup and teardown times.

The JUnit XML specification and the default pytest behavior is to include setup and teardown times in the test duration
report. You can include just the call durations instead (excluding setup and teardown) by adding this to your ``pytest.ini`` file:

.. code-block:: ini

   [pytest]
   junit_duration_report = call


- `4532 <https://github.com/pytest-dev/pytest/issues/4532>`_: ``-ra`` now will show errors and failures last, instead of as the first items in the summary.

This makes it easier to obtain a list of errors and failures to run tests selectively.


- `4599 <https://github.com/pytest-dev/pytest/issues/4599>`_: ``pytest.importorskip`` now supports a ``reason`` parameter, which will be shown when the
requested module cannot be imported.



Bug Fixes
---------

- `3532 <https://github.com/pytest-dev/pytest/issues/3532>`_: ``-p`` now accepts its argument without a space between the value, for example ``-pmyplugin``.


- `4327 <https://github.com/pytest-dev/pytest/issues/4327>`_: ``approx`` again works with more generic containers, more precisely instances of ``Iterable`` and ``Sized`` instead of more restrictive ``Sequence``.


- `4397 <https://github.com/pytest-dev/pytest/issues/4397>`_: Ensure that node ids are printable.


- `4435 <https://github.com/pytest-dev/pytest/issues/4435>`_: Fixed ``raises(..., 'code(string)')`` frame filename.


- `4458 <https://github.com/pytest-dev/pytest/issues/4458>`_: Display actual test ids in ``--collect-only``.



Improved Documentation
----------------------

- `4557 <https://github.com/pytest-dev/pytest/issues/4557>`_: Markers example documentation page updated to support latest pytest version.


- `4558 <https://github.com/pytest-dev/pytest/issues/4558>`_: Update cache documentation example to correctly show cache hit and miss.


- `4580 <https://github.com/pytest-dev/pytest/issues/4580>`_: Improved detailed summary report documentation.



Trivial/Internal Changes
------------------------

- `4447 <https://github.com/pytest-dev/pytest/issues/4447>`_: Changed the deprecation type of ``--result-log`` to ``PytestDeprecationWarning``.

It was decided to remove this feature at the next major revision.

4.0.2

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

Bug Fixes
---------

- `4265 <https://github.com/pytest-dev/pytest/issues/4265>`_: Validate arguments from the ``PYTEST_ADDOPTS`` environment variable and the ``addopts`` ini option separately.


- `4435 <https://github.com/pytest-dev/pytest/issues/4435>`_: Fix ``raises(..., 'code(string)')`` frame filename.


- `4500 <https://github.com/pytest-dev/pytest/issues/4500>`_: When a fixture yields and a log call is made after the test runs, and, if the test is interrupted, capture attributes are ``None``.


- `4538 <https://github.com/pytest-dev/pytest/issues/4538>`_: Raise ``TypeError`` for ``with raises(..., match=<non-None falsey value>)``.



Improved Documentation
----------------------

- `1495 <https://github.com/pytest-dev/pytest/issues/1495>`_: Document common doctest fixture directory tree structure pitfalls

4.0.1

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

Bug Fixes
---------

- `3952 <https://github.com/pytest-dev/pytest/issues/3952>`_: Display warnings before "short test summary info" again, but still later warnings in the end.


- `4386 <https://github.com/pytest-dev/pytest/issues/4386>`_: Handle uninitialized exceptioninfo in repr/str.


- `4393 <https://github.com/pytest-dev/pytest/issues/4393>`_: Do not create ``.gitignore``/``README.md`` files in existing cache directories.


- `4400 <https://github.com/pytest-dev/pytest/issues/4400>`_: Rearrange warning handling for the yield test errors so the opt-out in 4.0.x correctly works.


- `4405 <https://github.com/pytest-dev/pytest/issues/4405>`_: Fix collection of testpaths with ``--pyargs``.


- `4412 <https://github.com/pytest-dev/pytest/issues/4412>`_: Fix assertion rewriting involving ``Starred`` + side-effects.


- `4425 <https://github.com/pytest-dev/pyt

@rmader rmader force-pushed the pyup-scheduled-update-2019-03-04 branch from d7254a6 to a708ecf Compare March 13, 2019 14:09
@rmader rmader merged commit 39aab7c into master Mar 13, 2019
@rmader rmader deleted the pyup-scheduled-update-2019-03-04 branch March 13, 2019 16:13
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants