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

Scheduled monthly dependency update for March #191

Merged
merged 8 commits into from
Mar 1, 2019

Conversation

pyup-bot
Copy link
Contributor

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

Update getmac from 0.6.0 to 0.7.0.

Changelog

0.7.0

Added
* Type annotations (PEP 484)

Removed
* Dropped support for Python 2.6
* Removed the usage of third-party packages (`netifaces`, `psutil`, `scapy`, and `arpreq`).
This should improve the performance of lookups of non-existant interfaces
or hosts, since feature was punishing that path without providing much value.
If you want to use these packages directly, I have a guide on how to do so on a
[GitHub Gist](https://gist.github.com/GhostofGoes/0a8e82930e75afcefbd879a825ba4c26).

Changed
* Significantly improved the performance of the common cases on Linux
for interfaces and remote hosts
* Improved POSIX interface performance. Commands specific to OSX
will be run only on that platform, and vice-versa.
* Significantly improved the speed and accuracy of determining
the default interface on Linux
* Python 2 will install an executor named getmac2 and Python 3 an
executor named getmac so they don't conflict when both RPMs are
installed on the same system (Credit: hargoniX)
* The `warnings` module will only be imported if a error/warning
occurs (improve compatibility with some freezers, notably PyInstaller)
* Improved system platform detection
* Various other minor performance improvements

Development
* Added unit tests for the samples (Credit: Frizz925)
* Scripts for building RPMs in the /scripts directory (Credit: hargoniX)
* Improved code quality and health checks
* Include the CHANGELOG on the PyPI project page
* Using `pytest` for all tests now instead of `unittest`

Documentation
* Added instructions on how to build a Debian package (Credit: kofrezo)
Links

Update setuptools from 40.6.3 to 40.8.0.

Changelog

40.8.0

-------

* 1652: Added the ``build_meta:__legacy__`` backend, a "compatibility mode" PEP 517 backend that can be used as the default when ``build-backend`` is left unspecified in ``pyproject.toml``.
* 1635: Resource paths are passed to ``pkg_resources.resource_string`` and similar no longer accept paths that traverse parents, that begin with a leading ``/``. Violations of this expectation raise DeprecationWarnings and will become errors. Additionally, any paths that are absolute on Windows are strictly disallowed and will raise ValueErrors.
* 1536: ``setuptools`` will now automatically include licenses if ``setup.cfg`` contains a ``license_file`` attribute, unless this file is manually excluded inside ``MANIFEST.in``.

40.7.3

-------

* 1670: In package_index, revert to using a copy of splituser from Python 3.8. Attempts to use ``urllib.parse.urlparse`` led to problems as reported in 1663 and 1668. This change serves as an alternative to 1499 and fixes 1668.

40.7.2

-------

* 1666: Restore port in URL handling in package_index.

40.7.1

-------

* 1660: On Python 2, when reading config files, downcast options from text to bytes to satisfy distutils expectations.

40.7.0

-------

* 1551: File inputs for the `license` field in `setup.cfg` files now explicitly raise an error.
* 1180: Add support for non-ASCII in setup.cfg (1062). Add support for native strings on some parameters (1136).
* 1499: ``setuptools.package_index`` no longer relies on the deprecated ``urllib.parse.splituser`` per Python 27485.
* 1544: Added tests for PackageIndex.download (for git URLs).
* 1625: In PEP 517 build_meta builder, ensure that sdists are built as gztar per the spec.
Links

Update twine from 1.12.1 to 1.13.0.

Changelog

1.13.0

* :bug:`452` Restore prompts while retaining support for suppressing prompts.
* :bug:`447` Avoid requests-toolbelt to 0.9.0 to prevent attempting to use
openssl when it isn't available.
* :feature:`427` Add disable_progress_bar option to disable tqdm.
* :feature:`426` Allow defining an empty username and password in .pypirc.
* :bug:`441` Only install pyblake2 if needed.
* :bug:`444` Use io.StringIO instead of StringIO.
* :bug:`436` Use modern Python language features.
* :support:`439` Refactor tox env and travis config.
* :bug:`435` Specify python_requires in setup.py
* :bug:`432` Use https URLs everywhere.
* :bug:`428` Fix --skip-existing for Nexus Repos.
* :feature:`419` Support keyring.get_credential.
* :feature:`418` Support keyring.get_username_and_password.
* :bug:`421` Remove unnecessary usage of readme_render.markdown.
* :feature:`` Add Python 3.7 to classifiers.
* :bug:`412` Don't crash if there's no package description.
* :bug:`408` Fix keyring support.
Links

Update wheel from 0.32.3 to 0.33.1.

Changelog

0.33.1

- Fixed the ``--build-number`` option for ``wheel pack`` not being applied

0.33.0

- Added the ``--build-number`` option to the ``wheel pack`` command
- Fixed bad shebangs sneaking into wheels
- Fixed documentation issue with ``wheel pack`` erroneously being called
``wheel repack``
- Fixed filenames with "bad" characters (like commas) not being quoted in
``RECORD`` (PR by Paul Moore)
- Sort requirements extras to ensure deterministic builds
(PR by PoncinMatthieu)
Links

Update flake8 from 3.6.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
Links

Update pylint from 2.2.2 to 2.3.0.

Changelog

2.3.0

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

Release date: 2019-02-27

* Protect against `NonDeducibleTypeHierarchy` when calling semi-private `is_subtype`

`astroid.helpers.is_subtype` raises `NonDeducibleTypeHierarchy` when it cannot infer
the base classes of the given types, but that makes sense in its context given that
the method is mostly used to inform the inference process about the hierarchy of classes.
Doesn't make that much sense for ``pylint`` itself, which is why we're handling the
exception here, rather than in ``astroid``

Close PyCQA/astroid644

* Added a new command line option ``list-groups`` for listing all the check groups ``pylint`` knows about.

* Allow ``BaseException`` for emitting ``broad-except``, just like ``Exception``.

Close 2741

* Fixed a crash that occurred for ``bad-str-strip-call`` when ``strip()`` received ``None``

Close 2743

* Don't emit ``*-not-iterating`` checks for builtins consumed by ``itertools``

Close 2731

* Fix a crash caused by iterating over ``Uninferable`` in a string formatting check.

Close 2727

* Fixed false positives for ``no-self-argument`` and ``unsubscriptable-object`` when using ``__class_getitem__`` (new in Python 3.7)

Close 2416

* Support ``Ellipsis`` as a synonym for ``pass`` statements.

Close 2718

* ``fixme`` gets triggered only on comments.

Close 2321

* Fixed a false positive for ``unused-variable`` and ``nonlocal`` assignments

Close 2671

* Added ``load_configuration()`` hook for plugins

New optional hook for plugins is added: ``load_configuration()``.
This hook is executed after configuration is loaded to prevent
overwriting plugin specific configuration via user-based
configuration.

Close 2635

* Fix missing-raises-doc false positive (W9006)

Close 1502

* Exempt starred unpacking from ``*-not-iterating`` Python 3 checks

Close 2651

* Make ``compare-to-zero`` less zealous by checking against equality and identity

Close 2645

* Add ``no-else-raise`` warning (R1720)

Close 2558

* Exempt ``yield from`` from ``*-not-iterating`` Python 3 checks.

Close 2643

* Fix incorrect generation of ``no-else-return`` warnings (R1705)

Fixed issue where ``if`` statements with nested ``if`` statements
were incorrectly being flagged as ``no-else-return`` in some cases and
not being flagged as ``no-else-return`` in other cases.  Added tests
for verification and updated pylint source files to eliminate newly
exposed warnings.

* Fix false positive with `not-async-context-manager` caused by not understanding `contextlib.asynccontextmanager`

Close 2440

* Refactor ``bad-reversed-sequence`` to account for more objects that can define ``__reversed__``

One such object would be an enum class, for which ``__reversed__`` yields each individual enum.
As such, the check for ``bad-reversed-sequence`` needs to not differentiate between classes
and instances when it comes for checking of ``__reversed__`` presence.

Close 2598

* Added ``wrong-exception-operation``

Used when an operation is done against an exception, but the operation
is not valid for the exception in question. Usually emitted when having
binary operations between exceptions in except handlers.

Close 2494

* ``no-member`` is emitted for enums when they lack a member

Previously we weren't doing this because we detected a
``__getattr__`` implementation on the ``Enum`` class
(and this check is skipped for classes with ``__getattr__``),
but that is fine for Enums, given that they are inferred in a customised
way in astroid.

Close 2565

* Generalize ``chained-comparison``

Previous version incorrectly detects `a < b < c and b < d` and fails to
detect `a < b < c and c < d`.

* Avoid popping __main__ when using multiple jobs

Close 2689

* Add a new option 'check-str-concat-over-line-jumps' to check 'implicit-str-concat-in-sequence'

* Fixes for the new style logging format linter.

The number of arguments was not handled properly, leading to an always
successful check.

* Fix false positive ``not-callable`` for uninferable properties.

* Fix false positive ``useless-else-on-loop`` if the break is deep in the else
of an inner loop.
Links

Update pytest from 4.0.2 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.
Links

Update pytest-cov from 2.6.0 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>`_.
Links

@MartinHjelmare MartinHjelmare merged commit 203539b into dev Mar 1, 2019
@MartinHjelmare MartinHjelmare deleted the pyup-scheduled-update-2019-03-01 branch March 1, 2019 20:30
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.

2 participants