[Python-modules-commits] [pytest] 01/06: Import pytest_3.0.0.orig.tar.gz

Sebastian Ramacher sramacher at moszumanska.debian.org
Sun Aug 21 13:25:23 UTC 2016


This is an automated email from the git hooks/post-receive script.

sramacher pushed a commit to branch master
in repository pytest.

commit da7f16ca4c4318e92778537ac8f1fd0f40486bf8
Author: Sebastian Ramacher <sebastian at ramacher.at>
Date:   Sun Aug 21 15:10:44 2016 +0200

    Import pytest_3.0.0.orig.tar.gz
---
 AUTHORS                                            |   53 +-
 CHANGELOG.rst                                      |  443 ++++-
 CONTRIBUTING.rst                                   |   70 +-
 PKG-INFO                                           |   36 +-
 README.rst                                         |   33 +-
 _pytest/__init__.py                                |    2 +-
 _pytest/_code/__init__.py                          |    3 -
 _pytest/_code/code.py                              |  159 +-
 _pytest/assertion/__init__.py                      |  138 +-
 _pytest/assertion/reinterpret.py                   |  407 -----
 _pytest/assertion/rewrite.py                       |  106 +-
 _pytest/assertion/util.py                          |   38 +-
 _pytest/capture.py                                 |   33 +-
 _pytest/compat.py                                  |  216 +++
 _pytest/config.py                                  |  238 ++-
 _pytest/{pdb.py => debugging.py}                   |   25 +-
 _pytest/deprecated.py                              |   24 +
 _pytest/doctest.py                                 |   69 +-
 _pytest/fixtures.py                                | 1110 ++++++++++++
 _pytest/freeze_support.py                          |   45 +
 _pytest/genscript.py                               |  132 --
 _pytest/helpconfig.py                              |    9 +-
 _pytest/hookspec.py                                |   23 +-
 _pytest/junitxml.py                                |   36 +-
 _pytest/main.py                                    |  115 +-
 _pytest/monkeypatch.py                             |   20 +-
 _pytest/pytester.py                                |   84 +-
 _pytest/python.py                                  | 1788 ++++++--------------
 _pytest/resultlog.py                               |    5 +-
 _pytest/runner.py                                  |   55 +-
 _pytest/setuponly.py                               |   72 +
 _pytest/setupplan.py                               |   23 +
 _pytest/skipping.py                                |   32 +-
 _pytest/standalonetemplate.py                      |   89 -
 _pytest/terminal.py                                |   44 +-
 _pytest/tmpdir.py                                  |    6 +-
 _pytest/unittest.py                                |    2 +
 doc/en/_templates/layout.html                      |   14 -
 doc/en/_templates/links.html                       |    5 -
 doc/en/announce/index.rst                          |    2 +-
 doc/en/announce/release-2.9.2.rst                  |    2 +-
 doc/en/announce/release-3.0.0.rst                  |   82 +
 doc/en/announce/sprint2016.rst                     |   77 +-
 doc/en/assert.rst                                  |   40 +-
 doc/en/backwards-compatibility.rst                 |   12 +
 doc/en/bash-completion.rst                         |    4 +-
 doc/en/builtin.rst                                 |   29 +-
 doc/en/cache.rst                                   |   50 +-
 doc/en/capture.rst                                 |   27 +-
 doc/en/contents.rst                                |    4 +-
 doc/en/customize.rst                               |   50 +-
 doc/en/doctest.rst                                 |   62 +-
 doc/en/example/costlysetup/conftest.py             |    4 +-
 doc/en/example/markers.rst                         |   84 +-
 doc/en/example/multipython.py                      |    2 +-
 doc/en/example/nonpython.rst                       |   18 +-
 doc/en/example/nonpython/conftest.py               |    4 +-
 doc/en/example/parametrize.rst                     |   42 +-
 doc/en/example/pythoncollection.py                 |    2 +-
 doc/en/example/pythoncollection.rst                |   63 +-
 doc/en/example/reportingdemo.rst                   |   27 +-
 doc/en/example/simple.rst                          |  159 +-
 doc/en/example/special.rst                         |    2 +-
 doc/en/faq.rst                                     |   23 +-
 doc/en/fixture.rst                                 |  161 +-
 doc/en/funcarg_compare.rst                         |   10 +-
 doc/en/genapi.py                                   |    2 +-
 doc/en/getting-started.rst                         |   59 +-
 doc/en/goodpractices.rst                           |   68 +-
 doc/en/index.rst                                   |    6 +-
 doc/en/monkeypatch.rst                             |   35 +-
 doc/en/nose.rst                                    |   13 +-
 doc/en/parametrize.rst                             |   19 +-
 doc/en/plugins.rst                                 |    7 +-
 doc/en/proposals/parametrize_with_fixtures.rst     |  148 ++
 doc/en/skipping.rst                                |    8 +-
 doc/en/talks.rst                                   |   41 +-
 doc/en/test/attic.rst                              |    2 +-
 doc/en/test/mission.rst                            |    2 +-
 doc/en/test/plugin/cov.rst                         |   14 +-
 doc/en/test/plugin/coverage.rst                    |    2 +-
 doc/en/test/plugin/figleaf.rst                     |    2 +-
 doc/en/test/plugin/genscript.rst                   |   28 -
 doc/en/test/plugin/helpconfig.rst                  |    2 -
 doc/en/test/plugin/links.rst                       |    2 -
 doc/en/test/plugin/nose.rst                        |    4 +-
 doc/en/test/plugin/terminal.rst                    |    2 -
 doc/en/test/plugin/xdist.rst                       |   10 +-
 doc/en/tmpdir.rst                                  |    6 +-
 doc/en/unittest.rst                                |    8 +-
 doc/en/usage.rst                                   |  121 +-
 doc/en/writing_plugins.rst                         |   79 +-
 doc/en/xdist.rst                                   |   20 +-
 doc/en/xunit_setup.rst                             |   37 +-
 doc/en/yieldfixture.rst                            |  102 +-
 plugin-test.sh                                     |   14 +-
 pytest.egg-info/PKG-INFO                           |   36 +-
 pytest.egg-info/SOURCES.txt                        |   37 +-
 pytest.egg-info/entry_points.txt                   |    2 +-
 pytest.egg-info/requires.txt                       |    4 +-
 pytest.egg-info/top_level.txt                      |    2 +-
 setup.cfg                                          |    2 +-
 setup.py                                           |   31 +-
 testing/acceptance_test.py                         |   93 +-
 testing/code/test_code.py                          |   18 -
 testing/code/test_excinfo.py                       |  325 +++-
 testing/code/test_source.py                        |   14 +-
 testing/cx_freeze/install_cx_freeze.py             |   64 -
 testing/cx_freeze/runtests_setup.py                |   15 -
 testing/cx_freeze/tox_run.py                       |   15 -
 testing/deprecated_test.py                         |   76 +
 testing/freeze/.gitignore                          |    3 +
 testing/freeze/create_executable.py                |   13 +
 testing/{cx_freeze => freeze}/runtests_script.py   |   16 +-
 .../{cx_freeze => freeze}/tests/test_doctest.txt   |    0
 .../{cx_freeze => freeze}/tests/test_trivial.py    |   10 +-
 testing/freeze/tox_run.py                          |   12 +
 testing/python/approx.py                           |  286 ++++
 testing/python/collect.py                          |   89 +-
 testing/python/fixture.py                          |  482 ++++--
 testing/python/integration.py                      |   13 +-
 testing/python/metafunc.py                         |  249 ++-
 testing/python/raises.py                           |   20 +
 testing/python/setup_only.py                       |  243 +++
 testing/python/setup_plan.py                       |   19 +
 testing/python/show_fixtures_per_test.py           |  137 ++
 testing/test_assertinterpret.py                    |  274 ---
 testing/test_assertion.py                          |  244 ++-
 testing/test_assertrewrite.py                      |   79 +-
 testing/test_capture.py                            |   39 +-
 testing/test_collection.py                         |  126 +-
 testing/test_config.py                             |  212 ++-
 testing/test_conftest.py                           |   14 +
 testing/test_doctest.py                            |  161 +-
 testing/test_entry_points.py                       |   13 +
 testing/test_genscript.py                          |   51 -
 testing/test_helpconfig.py                         |    4 +-
 testing/test_junitxml.py                           |  172 +-
 testing/test_mark.py                               |   53 +-
 testing/test_monkeypatch.py                        |   11 +-
 testing/test_parseopt.py                           |   23 +-
 testing/test_pdb.py                                |   34 +-
 testing/test_resultlog.py                          |   11 +-
 testing/test_runner.py                             |  127 +-
 testing/test_runner_xunit.py                       |   55 +-
 testing/test_session.py                            |   18 +-
 testing/test_skipping.py                           |   52 +-
 testing/test_terminal.py                           |   55 +-
 testing/test_tmpdir.py                             |    1 -
 testing/test_unittest.py                           |   86 +-
 tox.ini                                            |   45 +-
 151 files changed, 7715 insertions(+), 4278 deletions(-)

diff --git a/AUTHORS b/AUTHORS
index f4a21b2..4bff819 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -3,44 +3,61 @@ merlinux GmbH, Germany, office at merlinux eu
 
 Contributors include::
 
+Abdeali JK
 Abhijeet Kasurde
+Alexei Kozlenok
 Anatoly Bubenkoff
 Andreas Zeidler
+Andrzej Ostrowski
 Andy Freeland
 Anthon van der Neut
+Antony Lee
 Armin Rigo
 Aron Curzon
 Aviv Palivoda
+Ben Webb
 Benjamin Peterson
+Bernard Pratz
 Bob Ippolito
 Brian Dorsey
 Brian Okken
 Brianna Laugher
 Bruno Oliveira
+Cal Leeming
 Carl Friedrich Bolz
 Charles Cloud
+Charnjit SiNGH (CCSJ)
 Chris Lamb
+Christian Boelsen
 Christian Theunert
 Christian Tismer
 Christopher Gilling
 Daniel Grana
 Daniel Hahler
 Daniel Nuri
+Danielle Jenkins
 Dave Hunt
+David Díaz-Barquero
 David Mohr
 David Vierra
+Diego Russo
+Dmitry Dygalo
 Edison Gustavo Muenz
+Edoardo Batini
 Eduardo Schettino
-Endre Galaczi
 Elizaveta Shashkova
+Endre Galaczi
+Eric Hunsberger
 Eric Hunsberger
 Eric Siegerman
 Erik M. Bray
+Feng Ma
 Florian Bruhin
 Floris Bruynooghe
 Gabriel Reis
 Georgy Dyuldin
 Graham Horler
+Greg Price
 Grig Gheorghiu
 Guido Wesdorp
 Harald Armin Massa
@@ -49,9 +66,14 @@ Jaap Broekhuizen
 Jan Balster
 Janne Vanhala
 Jason R. Coombs
+Javier Domingo Cansino
+Javier Romero
 John Towler
+Jon Sonesen
 Joshua Bronson
 Jurko Gospodnetić
+Justyna Janczyszyn
+Kale Kundert
 Katarzyna Jachim
 Kevin Cox
 Lee Kamentsky
@@ -62,30 +84,43 @@ Marc Schlaich
 Mark Abramowitz
 Markus Unterwaditzer
 Martijn Faassen
+Martin K. Scherer
 Martin Prusse
 Matt Bachmann
+Matt Williams
 Michael Aquilina
 Michael Birtwell
 Michael Droettboom
+Mike Lundy
 Nicolas Delaby
+Oleg Pidsadnyi
+Oliver Bestwalter
+Omar Kohl
 Pieter Mulder
 Piotr Banaszkiewicz
 Punyashloka Biswal
 Quentin Pradet
 Ralf Schmitt
 Raphael Pierzina
+Roberto Polli
+Romain Dorgueil
+Roman Bolshakov
 Ronny Pfannschmidt
 Ross Lawley
+Russel Winder
 Ryan Wooden
 Samuele Pedroni
+Simon Gomizelj
+Stefan Farmbauer
+Stefan Zimmermann
+Stefano Taschini
+Steffen Allner
+Stephan Obermann
+Tareq Alayan
+Ted Xiao
+Thomas Grainger
 Tom Viner
 Trevor Bekolay
+Vasily Kuznetsov
 Wouter van Ackooy
-David Díaz-Barquero
-Eric Hunsberger
-Simon Gomizelj
-Russel Winder
-Ben Webb
-Alexei Kozlenok
-Cal Leeming
-Feng Ma
+Xuecong Liao
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index edc2341..69971a7 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,3 +1,435 @@
+3.0.0
+=====
+
+**Incompatible changes**
+
+
+A number of incompatible changes were made in this release, with the intent of removing features deprecated for a long
+time or change existing behaviors in order to make them less surprising/more useful.
+
+* Reinterpretation mode has now been removed.  Only plain and rewrite
+  mode are available, consequently the ``--assert=reinterp`` option is
+  no longer available.  Thanks `@flub`_ for the PR.
+
+* The following deprecated commandline options were removed:
+
+  * ``--genscript``: no longer supported;
+  * ``--no-assert``: use ``--assert=plain`` instead;
+  * ``--nomagic``: use ``--assert=plain`` instead;
+  * ``--report``: use ``-r`` instead;
+
+  Thanks to `@RedBeardCode`_ for the PR (`#1664`_).
+
+* ImportErrors in plugins now are a fatal error instead of issuing a
+  pytest warning (`#1479`_). Thanks to `@The-Compiler`_ for the PR.
+
+* Removed support code for Python 3 versions < 3.3 (`#1627`_).
+
+* Removed all ``py.test-X*`` entry points. The versioned, suffixed entry points
+  were never documented and a leftover from a pre-virtualenv era. These entry
+  points also created broken entry points in wheels, so removing them also
+  removes a source of confusion for users (`#1632`_).
+  Thanks `@obestwalter`_ for the PR.
+
+* ``pytest.skip()`` now raises an error when used to decorate a test function,
+  as opposed to its original intent (to imperatively skip a test inside a test function). Previously
+  this usage would cause the entire module to be skipped (`#607`_).
+  Thanks `@omarkohl`_ for the complete PR (`#1519`_).
+
+* Exit tests if a collection error occurs. A poll indicated most users will hit CTRL-C
+  anyway as soon as they see collection errors, so pytest might as well make that the default behavior (`#1421`_).
+  A ``--continue-on-collection-errors`` option has been added to restore the previous behaviour.
+  Thanks `@olegpidsadnyi`_ and `@omarkohl`_ for the complete PR (`#1628`_).
+
+* Renamed the pytest ``pdb`` module (plugin) into ``debugging`` to avoid clashes with the builtin ``pdb`` module.
+
+* Raise a helpful failure message when requesting a parametrized fixture at runtime,
+  e.g. with ``request.getfixturevalue``. Previously these parameters were simply
+  never defined, so a fixture decorated like ``@pytest.fixture(params=[0, 1, 2])``
+  only ran once (`#460`_).
+  Thanks to `@nikratio`_ for the bug report, `@RedBeardCode`_ and `@tomviner`_ for the PR.
+
+* ``_pytest.monkeypatch.monkeypatch`` class has been renamed to ``_pytest.monkeypatch.MonkeyPatch``
+  so it doesn't conflict with the ``monkeypatch`` fixture.
+
+* ``--exitfirst / -x`` can now be overridden by a following ``--maxfail=N``
+  and is just a synonym for ``--maxfail=1``.
+
+
+**New Features**
+
+* Support nose-style ``__test__`` attribute on methods of classes,
+  including unittest-style Classes. If set to ``False``, the test will not be
+  collected.
+
+* New ``doctest_namespace`` fixture for injecting names into the
+  namespace in which doctests run.
+  Thanks `@milliams`_ for the complete PR (`#1428`_).
+
+* New ``--doctest-report`` option available to change the output format of diffs
+  when running (failing) doctests (implements `#1749`_).
+  Thanks `@hartym`_ for the PR.
+
+* New ``name`` argument to ``pytest.fixture`` decorator which allows a custom name
+  for a fixture (to solve the funcarg-shadowing-fixture problem).
+  Thanks `@novas0x2a`_ for the complete PR (`#1444`_).
+
+* New ``approx()`` function for easily comparing floating-point numbers in
+  tests.
+  Thanks `@kalekundert`_ for the complete PR (`#1441`_).
+
+* Ability to add global properties in the final xunit output file by accessing
+  the internal ``junitxml`` plugin (experimental).
+  Thanks `@tareqalayan`_ for the complete PR `#1454`_).
+
+* New ``ExceptionInfo.match()`` method to match a regular expression on the
+  string representation of an exception (`#372`_).
+  Thanks `@omarkohl`_ for the complete PR (`#1502`_).
+
+* ``__tracebackhide__`` can now also be set to a callable which then can decide
+  whether to filter the traceback based on the ``ExceptionInfo`` object passed
+  to it. Thanks `@The-Compiler`_ for the complete PR (`#1526`_).
+
+* New ``pytest_make_parametrize_id(config, val)`` hook which can be used by plugins to provide
+  friendly strings for custom types.
+  Thanks `@palaviv`_ for the PR.
+
+* ``capsys`` and ``capfd`` now have a ``disabled()`` context-manager method, which
+  can be used to temporarily disable capture within a test.
+  Thanks `@nicoddemus`_ for the PR.
+
+* New cli flag ``--fixtures-per-test``: shows which fixtures are being used
+  for each selected test item. Features doc strings of fixtures by default.
+  Can also show where fixtures are defined if combined with ``-v``.
+  Thanks `@hackebrot`_ for the PR.
+
+* Introduce ``pytest`` command as recommended entry point. Note that ``py.test``
+  still works and is not scheduled for removal. Closes proposal
+  `#1629`_. Thanks `@obestwalter`_ and `@davehunt`_ for the complete PR
+  (`#1633`_).
+
+* New cli flags:
+
+  + ``--setup-plan``: performs normal collection and reports
+    the potential setup and teardown and does not execute any fixtures and tests;
+  + ``--setup-only``: performs normal collection, executes setup and teardown of
+    fixtures and reports them;
+  + ``--setup-show``: performs normal test execution and additionally shows
+    setup and teardown of fixtures;
+  + ``--keep-duplicates``: py.test now ignores duplicated paths given in the command
+    line. To retain the previous behavior where the same test could be run multiple
+    times by specifying it in the command-line multiple times, pass the ``--keep-duplicates``
+    argument (`#1609`_);
+
+  Thanks `@d6e`_, `@kvas-it`_, `@sallner`_, `@ioggstream`_ and `@omarkohl`_ for the PRs.
+
+* New CLI flag ``--override-ini``/``-o``: overrides values from the ini file.
+  For example: ``"-o xfail_strict=True"``'.
+  Thanks `@blueyed`_ and `@fengxx`_ for the PR.
+
+* New hooks:
+
+  + ``pytest_fixture_setup(fixturedef, request)``: executes fixture setup;
+  + ``pytest_fixture_post_finalizer(fixturedef)``: called after the fixture's
+    finalizer and has access to the fixture's result cache.
+
+  Thanks `@d6e`_, `@sallner`_.
+
+* Issue warnings for asserts whose test is a tuple literal. Such asserts will
+  never fail because tuples are always truthy and are usually a mistake
+  (see `#1562`_). Thanks `@kvas-it`_, for the PR.
+
+* Allow passing a custom debugger class (e.g. ``--pdbcls=IPython.core.debugger:Pdb``).
+  Thanks to `@anntzer`_ for the PR.
+
+
+**Changes**
+
+* Plugins now benefit from assertion rewriting.  Thanks
+  `@sober7`_, `@nicoddemus`_ and `@flub`_ for the PR.
+
+* Change ``report.outcome`` for ``xpassed`` tests to ``"passed"`` in non-strict
+  mode and ``"failed"`` in strict mode. Thanks to `@hackebrot`_ for the PR
+  (`#1795`_) and `@gprasad84`_ for report (`#1546`_).
+
+* Tests marked with ``xfail(strict=False)`` (the default) now appear in
+  JUnitXML reports as passing tests instead of skipped.
+  Thanks to `@hackebrot`_ for the PR (`#1795`_).
+
+* Highlight path of the file location in the error report to make it easier to copy/paste.
+  Thanks `@suzaku`_ for the PR (`#1778`_).
+
+* Fixtures marked with ``@pytest.fixture`` can now use ``yield`` statements exactly like
+  those marked with the ``@pytest.yield_fixture`` decorator. This change renders
+  ``@pytest.yield_fixture`` deprecated and makes ``@pytest.fixture`` with ``yield`` statements
+  the preferred way to write teardown code (`#1461`_).
+  Thanks `@csaftoiu`_ for bringing this to attention and `@nicoddemus`_ for the PR.
+
+* Explicitly passed parametrize ids do not get escaped to ascii (`#1351`_).
+  Thanks `@ceridwen`_ for the PR.
+
+* Fixtures are now sorted in the error message displayed when an unknown
+  fixture is declared in a test function.
+  Thanks `@nicoddemus`_ for the PR.
+
+* ``pytest_terminal_summary`` hook now receives the ``exitstatus``
+  of the test session as argument. Thanks `@blueyed`_ for the PR (`#1809`_).
+
+* Parametrize ids can accept ``None`` as specific test id, in which case the
+  automatically generated id for that argument will be used.
+  Thanks `@palaviv`_ for the complete PR (`#1468`_).
+
+* The parameter to xunit-style setup/teardown methods (``setup_method``,
+  ``setup_module``, etc.) is now optional and may be omitted.
+  Thanks `@okken`_ for bringing this to attention and `@nicoddemus`_ for the PR.
+
+* Improved automatic id generation selection in case of duplicate ids in
+  parametrize.
+  Thanks `@palaviv`_ for the complete PR (`#1474`_).
+
+* Now pytest warnings summary is shown up by default. Added a new flag
+  ``--disable-pytest-warnings`` to explicitly disable the warnings summary (`#1668`_).
+
+* Make ImportError during collection more explicit by reminding
+  the user to check the name of the test module/package(s) (`#1426`_).
+  Thanks `@omarkohl`_ for the complete PR (`#1520`_).
+
+* Add ``build/`` and ``dist/`` to the default ``--norecursedirs`` list. Thanks
+  `@mikofski`_ for the report and `@tomviner`_ for the PR (`#1544`_).
+
+* ``pytest.raises`` in the context manager form accepts a custom
+  ``message`` to raise when no exception occurred.
+  Thanks `@palaviv`_ for the complete PR (`#1616`_).
+
+* ``conftest.py`` files now benefit from assertion rewriting; previously it
+  was only available for test modules. Thanks `@flub`_, `@sober7`_ and
+  `@nicoddemus`_ for the PR (`#1619`_).
+
+* Text documents without any doctests no longer appear as "skipped".
+  Thanks `@graingert`_ for reporting and providing a full PR (`#1580`_).
+
+* Ensure that a module within a namespace package can be found when it
+  is specified on the command line together with the ``--pyargs``
+  option.  Thanks to `@taschini`_ for the PR (`#1597`_).
+
+* Always include full assertion explanation during assertion rewriting. The previous behaviour was hiding
+  sub-expressions that happened to be ``False``, assuming this was redundant information.
+  Thanks `@bagerard`_ for reporting (`#1503`_). Thanks to `@davehunt`_ and
+  `@tomviner`_ for the PR.
+
+* ``OptionGroup.addoption()`` now checks if option names were already
+  added before, to make it easier to track down issues like `#1618`_.
+  Before, you only got exceptions later from ``argparse`` library,
+  giving no clue about the actual reason for double-added options.
+
+* ``yield``-based tests are considered deprecated and will be removed in pytest-4.0.
+  Thanks `@nicoddemus`_ for the PR.
+
+* ``[pytest]`` sections in ``setup.cfg`` files should now be named ``[tool:pytest]``
+  to avoid conflicts with other distutils commands (see `#567`_). ``[pytest]`` sections in
+  ``pytest.ini`` or ``tox.ini`` files are supported and unchanged.
+  Thanks `@nicoddemus`_ for the PR.
+
+* Using ``pytest_funcarg__`` prefix to declare fixtures is considered deprecated and will be
+  removed in pytest-4.0 (`#1684`_).
+  Thanks `@nicoddemus`_ for the PR.
+
+* Raise helpful failure message, when requesting parametrized fixture at runtime,
+  e.g. with ``request.getfuncargvalue``. BACKWARD INCOMPAT: Previously these params
+  were simply never defined. So a fixture decorated like ``@pytest.fixture(params=[0, 1, 2])``
+  only ran once. Now a failure is raised. Fixes (`#460`_). Thanks to
+  `@nikratio`_ for bug report, `@RedBeardCode`_ and `@tomviner`_ for the PR.
+
+* Passing a command-line string to ``pytest.main()`` is considered deprecated and scheduled
+  for removal in pytest-4.0. It is recommended to pass a list of arguments instead (`#1723`_).
+
+* Rename ``getfuncargvalue`` to ``getfixturevalue``. ``getfuncargvalue`` is
+  still present but is now considered deprecated. Thanks to `@RedBeardCode`_ and `@tomviner`_
+  for the PR (`#1626`_).
+
+* ``optparse`` type usage now triggers DeprecationWarnings (`#1740`_).
+
+
+* ``optparse`` backward compatibility supports float/complex types (`#457`_).
+
+* Refined logic for determining the ``rootdir``, considering only valid
+  paths which fixes a number of issues: `#1594`_, `#1435`_ and `#1471`_.
+  Thanks to `@blueyed`_ and `@davehunt`_ for the PR.
+
+* Always include full assertion explanation. The previous behaviour was hiding
+  sub-expressions that happened to be False, assuming this was redundant information.
+  Thanks `@bagerard`_ for reporting (`#1503`_). Thanks to `@davehunt`_ and
+  `@tomviner`_ for PR.
+
+* Renamed the pytest ``pdb`` module (plugin) into ``debugging``.
+
+* Better message in case of not using parametrized variable (see `#1539`_).
+  Thanks to `@tramwaj29`_ for the PR.
+
+* Updated docstrings with a more uniform style.
+
+* Add stderr write for ``pytest.exit(msg)`` during startup. Previously the message was never shown.
+  Thanks `@BeyondEvil`_ for reporting `#1210`_. Thanks to `@JonathonSonesen`_ and
+  `@tomviner`_ for the PR.
+
+* No longer display the incorrect test deselection reason (`#1372`_).
+  Thanks `@ronnypfannschmidt`_ for the PR.
+
+* The ``--resultlog`` command line option has been deprecated: it is little used
+  and there are more modern and better alternatives (see `#830`_).
+  Thanks `@nicoddemus`_ for the PR.
+
+* Improve error message with fixture lookup errors: add an 'E' to the first
+  line and '>' to the rest. Fixes `#717`_. Thanks `@blueyed`_ for reporting and
+  a PR, `@eolo999`_ for the initial PR and `@tomviner`_ for his guidance during
+  EuroPython2016 sprint.
+
+
+**Bug Fixes**
+
+* Parametrize now correctly handles duplicated test ids.
+
+* Fix internal error issue when the ``method`` argument is missing for
+  ``teardown_method()`` (`#1605`_).
+
+* Fix exception visualization in case the current working directory (CWD) gets
+  deleted during testing (`#1235`_). Thanks `@bukzor`_ for reporting. PR by
+  `@marscher`_.
+
+* Improve test output for logical expression with brackets (`#925`_).
+  Thanks `@DRMacIver`_ for reporting and `@RedBeardCode`_ for the PR.
+
+* Create correct diff for strings ending with newlines (`#1553`_).
+  Thanks `@Vogtinator`_ for reporting and `@RedBeardCode`_ and
+  `@tomviner`_ for the PR.
+
+* ``ConftestImportFailure`` now shows the traceback making it easier to
+  identify bugs in ``conftest.py`` files (`#1516`_). Thanks `@txomon`_ for
+  the PR.
+
+* Add an 'E' to the first line of error messages from FixtureLookupErrorRepr.
+  Fixes `#717`_. Thanks `@blueyed`_ for reporting, `@eolo999`_ for the PR
+  and `@tomviner`_ for his guidance during EuroPython2016 sprint.
+
+* Text documents without any doctests no longer appear as "skipped".
+  Thanks `@graingert`_ for reporting and providing a full PR (`#1580`_).
+
+* Fixed collection of classes with custom ``__new__`` method.
+  Fixes `#1579`_. Thanks to `@Stranger6667`_ for the PR.
+
+* Fixed scope overriding inside metafunc.parametrize (`#634`_).
+  Thanks to `@Stranger6667`_ for the PR.
+
+* Fixed the total tests tally in junit xml output (`#1798`_).
+  Thanks to `@cryporchild`_ for the PR.
+
+* Fixed off-by-one error with lines from ``request.node.warn``.
+  Thanks to `@blueyed`_ for the PR.
+
+
+.. _#1210: https://github.com/pytest-dev/pytest/issues/1210
+.. _#1235: https://github.com/pytest-dev/pytest/issues/1235
+.. _#1351: https://github.com/pytest-dev/pytest/issues/1351
+.. _#1372: https://github.com/pytest-dev/pytest/issues/1372
+.. _#1421: https://github.com/pytest-dev/pytest/issues/1421
+.. _#1426: https://github.com/pytest-dev/pytest/issues/1426
+.. _#1428: https://github.com/pytest-dev/pytest/pull/1428
+.. _#1435: https://github.com/pytest-dev/pytest/issues/1435
+.. _#1441: https://github.com/pytest-dev/pytest/pull/1441
+.. _#1444: https://github.com/pytest-dev/pytest/pull/1444
+.. _#1454: https://github.com/pytest-dev/pytest/pull/1454
+.. _#1461: https://github.com/pytest-dev/pytest/pull/1461
+.. _#1468: https://github.com/pytest-dev/pytest/pull/1468
+.. _#1471: https://github.com/pytest-dev/pytest/issues/1471
+.. _#1474: https://github.com/pytest-dev/pytest/pull/1474
+.. _#1479: https://github.com/pytest-dev/pytest/issues/1479
+.. _#1502: https://github.com/pytest-dev/pytest/pull/1502
+.. _#1503: https://github.com/pytest-dev/pytest/issues/1503
+.. _#1516: https://github.com/pytest-dev/pytest/pull/1516
+.. _#1519: https://github.com/pytest-dev/pytest/pull/1519
+.. _#1520: https://github.com/pytest-dev/pytest/pull/1520
+.. _#1526: https://github.com/pytest-dev/pytest/pull/1526
+.. _#1539: https://github.com/pytest-dev/pytest/issues/1539
+.. _#1544: https://github.com/pytest-dev/pytest/issues/1544
+.. _#1546: https://github.com/pytest-dev/pytest/issues/1546
+.. _#1553: https://github.com/pytest-dev/pytest/issues/1553
+.. _#1562: https://github.com/pytest-dev/pytest/issues/1562
+.. _#1579: https://github.com/pytest-dev/pytest/issues/1579
+.. _#1580: https://github.com/pytest-dev/pytest/pull/1580
+.. _#1594: https://github.com/pytest-dev/pytest/issues/1594
+.. _#1597: https://github.com/pytest-dev/pytest/pull/1597
+.. _#1605: https://github.com/pytest-dev/pytest/issues/1605
+.. _#1616: https://github.com/pytest-dev/pytest/pull/1616
+.. _#1618: https://github.com/pytest-dev/pytest/issues/1618
+.. _#1619: https://github.com/pytest-dev/pytest/issues/1619
+.. _#1626: https://github.com/pytest-dev/pytest/pull/1626
+.. _#1627: https://github.com/pytest-dev/pytest/pull/1627
+.. _#1628: https://github.com/pytest-dev/pytest/pull/1628
+.. _#1629: https://github.com/pytest-dev/pytest/issues/1629
+.. _#1632: https://github.com/pytest-dev/pytest/issues/1632
+.. _#1633: https://github.com/pytest-dev/pytest/pull/1633
+.. _#1664: https://github.com/pytest-dev/pytest/pull/1664
+.. _#1668: https://github.com/pytest-dev/pytest/issues/1668
+.. _#1684: https://github.com/pytest-dev/pytest/pull/1684
+.. _#1723: https://github.com/pytest-dev/pytest/pull/1723
+.. _#1740: https://github.com/pytest-dev/pytest/issues/1740
+.. _#1749: https://github.com/pytest-dev/pytest/issues/1749
+.. _#1778: https://github.com/pytest-dev/pytest/pull/1778
+.. _#1795: https://github.com/pytest-dev/pytest/pull/1795
+.. _#1798: https://github.com/pytest-dev/pytest/pull/1798
+.. _#1809: https://github.com/pytest-dev/pytest/pull/1809
+.. _#372: https://github.com/pytest-dev/pytest/issues/372
+.. _#457: https://github.com/pytest-dev/pytest/issues/457
+.. _#460: https://github.com/pytest-dev/pytest/pull/460
+.. _#567: https://github.com/pytest-dev/pytest/pull/567
+.. _#607: https://github.com/pytest-dev/pytest/issues/607
+.. _#634: https://github.com/pytest-dev/pytest/issues/634
+.. _#717: https://github.com/pytest-dev/pytest/issues/717
+.. _#830: https://github.com/pytest-dev/pytest/issues/830
+.. _#925: https://github.com/pytest-dev/pytest/issues/925
+
+
+.. _ at anntzer: https://github.com/anntzer
+.. _ at bagerard: https://github.com/bagerard
+.. _ at BeyondEvil: https://github.com/BeyondEvil
+.. _ at blueyed: https://github.com/blueyed
+.. _ at ceridwen: https://github.com/ceridwen
+.. _ at cryporchild: https://github.com/cryporchild
+.. _ at csaftoiu: https://github.com/csaftoiu
+.. _ at d6e: https://github.com/d6e
+.. _ at davehunt: https://github.com/davehunt
+.. _ at DRMacIver: https://github.com/DRMacIver
+.. _ at eolo999: https://github.com/eolo999
+.. _ at fengxx: https://github.com/fengxx
+.. _ at flub: https://github.com/flub
+.. _ at gprasad84: https://github.com/gprasad84
+.. _ at graingert: https://github.com/graingert
+.. _ at hartym: https://github.com/hartym
+.. _ at JonathonSonesen: https://github.com/JonathonSonesen
+.. _ at kalekundert: https://github.com/kalekundert
+.. _ at kvas-it: https://github.com/kvas-it
+.. _ at marscher: https://github.com/marscher
+.. _ at mikofski: https://github.com/mikofski
+.. _ at milliams: https://github.com/milliams
+.. _ at nikratio: https://github.com/nikratio
+.. _ at novas0x2a: https://github.com/novas0x2a
+.. _ at obestwalter: https://github.com/obestwalter
+.. _ at okken: https://github.com/okken
+.. _ at olegpidsadnyi: https://github.com/olegpidsadnyi
+.. _ at omarkohl: https://github.com/omarkohl
+.. _ at palaviv: https://github.com/palaviv
+.. _ at RedBeardCode: https://github.com/RedBeardCode
+.. _ at sallner: https://github.com/sallner
+.. _ at sober7: https://github.com/sober7
+.. _ at Stranger6667: https://github.com/Stranger6667
+.. _ at suzaku: https://github.com/suzaku
+.. _ at tareqalayan: https://github.com/tareqalayan
+.. _ at taschini: https://github.com/taschini
+.. _ at tramwaj29: https://github.com/tramwaj29
+.. _ at txomon: https://github.com/txomon
+.. _ at Vogtinator: https://github.com/Vogtinator
+
+
 2.9.2
 =====
 
@@ -30,8 +462,8 @@
 
 .. _#510: https://github.com/pytest-dev/pytest/issues/510
 .. _#1506: https://github.com/pytest-dev/pytest/pull/1506
-.. _#1496: https://github.com/pytest-dev/pytest/issue/1496
-.. _#1524: https://github.com/pytest-dev/pytest/issue/1524
+.. _#1496: https://github.com/pytest-dev/pytest/issues/1496
+.. _#1524: https://github.com/pytest-dev/pytest/pull/1524
 
 .. _ at prusse-martin: https://github.com/prusse-martin
 .. _ at astraw38: https://github.com/astraw38
@@ -62,11 +494,13 @@
 
 * Fix (`#649`_): parametrized test nodes cannot be specified to run on the command line.
 
+* Fix (`#138`_): better reporting for python 3.3+ chained exceptions
 
 .. _#1437: https://github.com/pytest-dev/pytest/issues/1437
 .. _#469: https://github.com/pytest-dev/pytest/issues/469
 .. _#1431: https://github.com/pytest-dev/pytest/pull/1431
 .. _#649: https://github.com/pytest-dev/pytest/issues/649
+.. _#138: https://github.com/pytest-dev/pytest/issues/138
 
 .. _ at asottile: https://github.com/asottile
 
@@ -156,7 +590,7 @@
   Thanks `@biern`_ for the PR.
 
 * Fix `traceback style docs`_ to describe all of the available options
-  (auto/long/short/line/native/no), with `auto` being the default since v2.6.
+  (auto/long/short/line/native/no), with ``auto`` being the default since v2.6.
   Thanks `@hackebrot`_ for the PR.
 
 * Fix (`#1422`_): junit record_xml_property doesn't allow multiple records
@@ -164,6 +598,7 @@
 
 .. _`traceback style docs`: https://pytest.org/latest/usage.html#modifying-python-traceback-printing
 
+.. _#1609: https://github.com/pytest-dev/pytest/issues/1609
 .. _#1422: https://github.com/pytest-dev/pytest/issues/1422
 .. _#1379: https://github.com/pytest-dev/pytest/issues/1379
 .. _#1366: https://github.com/pytest-dev/pytest/issues/1366
@@ -188,8 +623,8 @@
 .. _ at RonnyPfannschmidt: https://github.com/RonnyPfannschmidt
 .. _ at rabbbit: https://github.com/rabbbit
 .. _ at hackebrot: https://github.com/hackebrot
-.. _ at omarkohl: https://github.com/omarkohl
 .. _ at pquentin: https://github.com/pquentin
+.. _ at ioggstream: https://github.com/ioggstream
 
 2.8.7
 =====
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
index 75ee3ec..947d4e6 100644
--- a/CONTRIBUTING.rst
+++ b/CONTRIBUTING.rst
@@ -48,7 +48,7 @@ to fix the bug yet.
 Fix bugs
 --------
 
-Look through the GitHub issues for bugs.  Here is sample filter you can use:
+Look through the GitHub issues for bugs.  Here is a filter you can use:
 https://github.com/pytest-dev/pytest/labels/bug
 
 :ref:`Talk <contact>` to developers to find out how you can fix specific bugs.
@@ -60,8 +60,7 @@ Don't forget to check the issue trackers of your favourite plugins, too!
 Implement features
 ------------------
 
-Look through the GitHub issues for enhancements.  Here is sample filter you
-can use:
+Look through the GitHub issues for enhancements.  Here is a filter you can use:
 https://github.com/pytest-dev/pytest/labels/enhancement
 
 :ref:`Talk <contact>` to developers to find out how you can implement specific
@@ -70,16 +69,15 @@ features.
 Write documentation
 -------------------
 
-pytest could always use more documentation.  What exactly is needed?
+Pytest could always use more documentation.  What exactly is needed?
 
 * More complementary documentation.  Have you perhaps found something unclear?
 * Documentation translations.  We currently have only English.
 * Docstrings.  There can never be too many of them.
 * Blog posts, articles and such -- they're all very appreciated.
 
-You can also edit documentation files directly in the Github web interface
-without needing to make a fork and local copy. This can be convenient for
-small fixes.
+You can also edit documentation files directly in the GitHub web interface,
+without using a local copy.  This can be convenient for small fixes.
 
 
 .. _submitplugin:
@@ -95,13 +93,14 @@ in repositories living under the ``pytest-dev`` organisations:
 - `pytest-dev on Bitbucket <https://bitbucket.org/pytest-dev>`_
 
 All pytest-dev Contributors team members have write access to all contained
-repositories.  pytest core and plugins are generally developed
+repositories.  Pytest core and plugins are generally developed
 using `pull requests`_ to respective repositories.
 
 The objectives of the ``pytest-dev`` organisation are:
 
 * Having a central location for popular pytest plugins
-* Sharing some of the maintenance responsibility (in case a maintainer no longer whishes to maintain a plugin)
+* Sharing some of the maintenance responsibility (in case a maintainer no
+  longer wishes to maintain a plugin)
 
 You can submit your plugin by subscribing to the `pytest-dev mail list
 <https://mail.python.org/mailman/listinfo/pytest-dev>`_ and writing a
@@ -121,33 +120,26 @@ the following:
 
 - an issue tracker for bug reports and enhancement requests.
 
+- a `changelog <http://keepachangelog.com/>`_
+
 If no contributor strongly objects and two agree, the repository can then be
 transferred to the ``pytest-dev`` organisation.
 
 Here's a rundown of how a repository transfer usually proceeds
 (using a repository named ``joedoe/pytest-xyz`` as example):
 
-* One of the ``pytest-dev`` administrators creates:
-
-  - ``pytest-xyz-admin`` team, with full administration rights to
-    ``pytest-dev/pytest-xyz``.
-  - ``pytest-xyz-developers`` team, with write access to
-    ``pytest-dev/pytest-xyz``.
-
-* ``joedoe`` is invited to the ``pytest-xyz-admin`` team;
-
-* After accepting the invitation, ``joedoe`` transfers the repository from its
-  original location to ``pytest-dev/pytest-xyz`` (A nice feature is that GitHub handles URL redirection from
-  the old to the new location automatically).
-
-* ``joedoe`` is free to add any other collaborators to the
-  ``pytest-xyz-admin`` or ``pytest-xyz-developers`` team as desired.
+* ``joedoe`` transfers repository ownership to ``pytest-dev`` administrator ``calvin``.
+* ``calvin`` creates ``pytest-xyz-admin`` and ``pytest-xyz-developers`` teams, inviting ``joedoe`` to both as **maintainer**.
+* ``calvin`` transfers repository to ``pytest-dev`` and configures team access:
+  
+  - ``pytest-xyz-admin`` **admin** access;
+  - ``pytest-xyz-developers`` **write** access;
 
 The ``pytest-dev/Contributors`` team has write access to all projects, and
 every project administrator is in it. We recommend that each plugin has at least three
 people who have the right to release to PyPI.
 
-Repository owners can be assured that no ``pytest-dev`` administrator will ever make
+Repository owners can rest assured that no ``pytest-dev`` administrator will ever make
 releases of your repository or take ownership in any way, except in rare cases
 where someone becomes unresponsive after months of contact attempts.
 As stated, the objective is to share maintenance and avoid "plugin-abandon".
@@ -159,15 +151,11 @@ As stated, the objective is to share maintenance and avoid "plugin-abandon".
 Preparing Pull Requests on GitHub
 ---------------------------------
 
-There's an excellent tutorial on how Pull Requests work in the
-`GitHub Help Center <https://help.github.com/articles/using-pull-requests/>`_
-
-
 .. note::
   What is a "pull request"?  It informs project's core developers about the
   changes you want to review and merge.  Pull requests are stored on
   `GitHub servers <https://github.com/pytest-dev/pytest/pulls>`_.
-  Once you send pull request, we can discuss it's potential modifications and
+  Once you send a pull request, we can discuss its potential modifications and
   even add more commits to it later on.
 
 There's an excellent tutorial on how Pull Requests work in the
@@ -211,35 +199,35 @@ but here is a simple overview:
    You need to have Python 2.7 and 3.5 available in your system.  Now
    running tests is as simple as issuing this command::
 
-    $ python runtox.py -e linting,py27,py35
+    $ python3 runtox.py -e linting,py27,py35
 
    This command will run tests via the "tox" tool against Python 2.7 and 3.5
    and also perform "lint" coding-style checks.  ``runtox.py`` is
    a thin wrapper around ``tox`` which installs from a development package
-   index where newer (not yet released to pypi) versions of dependencies
+   index where newer (not yet released to PyPI) versions of dependencies
    (especially ``py``) might be present.
 
 #. You can now edit your local working copy.
 
    You can now make the changes you want and run the tests again as necessary.
 
-   To run tests on py27 and pass options to pytest (e.g. enter pdb on failure)
-   to pytest you can do::
+   To run tests on Python 2.7 and pass options to pytest (e.g. enter pdb on
+   failure) to pytest you can do::
 
-    $ python runtox.py -e py27 -- --pdb
+    $ python3 runtox.py -e py27 -- --pdb
 
-   or to only run tests in a particular test module on py35::
+   Or to only run tests in a particular test module on Python 3.5::
 
-    $ python runtox.py -e py35 -- testing/test_config.py
+    $ python3 runtox.py -e py35 -- testing/test_config.py
 
 #. Commit and push once your tests pass and you are happy with your change(s)::
 
     $ git commit -a -m "<commit message>"
     $ git push -u
 
-   Make sure you add a CHANGELOG message, and add yourself to AUTHORS. If you
-   are unsure about either of these steps, submit your pull request and we'll
-   help you fix it up.
+   Make sure you add a message to ``CHANGELOG.rst`` and add yourself to
+   ``AUTHORS``.  If you are unsure about either of these steps, submit your
+   pull request and we'll help you fix it up.
 
 #. Finally, submit a pull request through the GitHub website using this data::
 
@@ -248,6 +236,6 @@ but here is a simple overview:
 
     base-fork: pytest-dev/pytest
     base: master          # if it's a bugfix
-    base: feature         # if it's a feature
+    base: features        # if it's a feature
 
 
diff --git a/PKG-INFO b/PKG-INFO
index 7b801be..21192d1 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,13 +1,13 @@
 Metadata-Version: 1.1
 Name: pytest
-Version: 2.9.2
+Version: 3.0.0
 Summary: pytest: simple powerful testing with Python
 Home-page: http://pytest.org
 Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others
 Author-email: holger at merlinux.eu
 License: MIT license
-Description: .. image:: http://pytest.org/latest/_static/pytest1.png
-           :target: http://pytest.org
+Description: .. image:: http://docs.pytest.org/en/latest/_static/pytest1.png
+           :target: http://docs.pytest.org
            :align: center
            :alt: pytest
         
@@ -25,7 +25,7 @@ Description: .. image:: http://pytest.org/latest/_static/pytest1.png
             :target: https://ci.appveyor.com/project/pytestbot/pytest
         
         The ``pytest`` framework makes it easy to write small tests, yet
-        scales to support complex functional testing for applications and libraries.    
+        scales to support complex functional testing for applications and libraries.
         
         An example of a simple test:
         
@@ -41,9 +41,9 @@ Description: .. image:: http://pytest.org/latest/_static/pytest1.png
         
         To execute it::
         
-            $ py.test
+            $ pytest
             ======= test session starts ========
-            platform linux -- Python 3.4.3, pytest-2.8.5, py-1.4.31, pluggy-0.3.1    
+            platform linux -- Python 3.4.3, pytest-2.8.5, py-1.4.31, pluggy-0.3.1
             collected 1 items
         
... 17788 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/pytest.git



More information about the Python-modules-commits mailing list