Hello community,

here is the log from the commit of package python3-pytest-cov for 
openSUSE:Factory checked in at 2016-10-22 13:00:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-pytest-cov (Old)
 and      /work/SRC/openSUSE:Factory/.python3-pytest-cov.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python3-pytest-cov"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-pytest-cov/python3-pytest-cov.changes    
2016-08-25 09:50:27.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.python3-pytest-cov.new/python3-pytest-cov.changes   
    2016-10-22 13:00:57.000000000 +0200
@@ -1,0 +2,11 @@
+Wed Oct 12 02:16:31 UTC 2016 - a...@gmx.de
+
+- update to version 2.4.0:
+  * Added a "disarm" option: --no-cov. It will disable coverage
+    measurements. Contributed by Zoltan Kozma in PR#135.
+    WARNING: Do not put this in your configuration files, it's meant
+    to be an one-off for situations where you want to disable coverage
+    from command line.
+  * Fixed broken exception handling on .pth file. See #136.
+
+-------------------------------------------------------------------

Old:
----
  pytest-cov-2.3.1.tar.gz

New:
----
  pytest-cov-2.4.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python3-pytest-cov.spec ++++++
--- /var/tmp/diff_new_pack.GB9aVu/_old  2016-10-22 13:00:58.000000000 +0200
+++ /var/tmp/diff_new_pack.GB9aVu/_new  2016-10-22 13:00:58.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python3-pytest-cov
-Version:        2.3.1
+Version:        2.4.0
 Release:        0
 Summary:        Pytest plugin for coverage reporting
 License:        MIT

++++++ pytest-cov-2.3.1.tar.gz -> pytest-cov-2.4.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/.bumpversion.cfg 
new/pytest-cov-2.4.0/.bumpversion.cfg
--- old/pytest-cov-2.3.1/.bumpversion.cfg       2016-08-07 22:09:52.000000000 
+0200
+++ new/pytest-cov-2.4.0/.bumpversion.cfg       2016-10-10 21:31:18.000000000 
+0200
@@ -1,5 +1,5 @@
 [bumpversion]
-current_version = 2.3.1
+current_version = 2.4.0
 commit = True
 tag = True
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/CHANGELOG.rst 
new/pytest-cov-2.4.0/CHANGELOG.rst
--- old/pytest-cov-2.3.1/CHANGELOG.rst  2016-08-07 16:46:41.000000000 +0200
+++ new/pytest-cov-2.4.0/CHANGELOG.rst  2016-10-10 02:03:37.000000000 +0200
@@ -1,6 +1,16 @@
 Changelog
 =========
 
+2.4.0 (2016-10-10)
+------------------
+
+* Added a "disarm" option: ``--no-cov``. It will disable coverage 
measurements. Contributed by Zoltan Kozma in
+  `PR#135 <https://github.com/pytest-dev/pytest-cov/pull/135>`_.
+
+  **WARNING: Do not put this in your configuration files, it's meant to be an 
one-off for situations where you want to
+  disable coverage from command line.**
+* Fixed broken exception handling on ``.pth`` file. See `#136 
<https://github.com/pytest-dev/pytest-cov/issues/136>`_.
+
 2.3.1 (2016-08-07)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/PKG-INFO 
new/pytest-cov-2.4.0/PKG-INFO
--- old/pytest-cov-2.3.1/PKG-INFO       2016-08-07 22:10:37.000000000 +0200
+++ new/pytest-cov-2.4.0/PKG-INFO       2016-10-10 21:31:55.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: pytest-cov
-Version: 2.3.1
+Version: 2.4.0
 Summary: Pytest plugin for measuring coverage.
 Home-page: https://github.com/pytest-dev/pytest-cov
 Author: Marc Schlaich
@@ -320,6 +320,19 @@
         do normal site initialisation so that the environment variables can be 
detected and coverage
         started.
         
+        Coverage and debuggers
+        ----------------------
+        
+        When it comes to TDD one obviously would like to debug tests. 
Debuggers in Python use mostly the sys.settrace function
+        to gain access to context. Coverage uses the same technique to get 
access to the lines executed. Coverage does not play
+        well with other tracers simultaneously running. This manifests itself 
in behaviour that PyCharm might not hit a
+        breakpoint no matter what the user does. Since it is common practice 
to have coverage configuration in the pytest.ini
+        file and pytest does not support removeopts or similar the `--no-cov` 
flag can disable coverage completely.
+        
+        At the reporting part a warning message will show on screen
+        
+            Coverage disabled via --no-cov switch!
+        
         Acknowledgements
         ================
         
@@ -340,6 +353,16 @@
         Changelog
         =========
         
+        2.4.0 (2016-10-10)
+        ------------------
+        
+        * Added a "disarm" option: ``--no-cov``. It will disable coverage 
measurements. Contributed by Zoltan Kozma in
+          `PR#135 <https://github.com/pytest-dev/pytest-cov/pull/135>`_.
+        
+          **WARNING: Do not put this in your configuration files, it's meant 
to be an one-off for situations where you want to
+          disable coverage from command line.**
+        * Fixed broken exception handling on ``.pth`` file. See `#136 
<https://github.com/pytest-dev/pytest-cov/issues/136>`_.
+        
         2.3.1 (2016-08-07)
         ------------------
         
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/README.rst 
new/pytest-cov-2.4.0/README.rst
--- old/pytest-cov-2.3.1/README.rst     2016-06-20 22:00:36.000000000 +0200
+++ new/pytest-cov-2.4.0/README.rst     2016-10-10 02:03:37.000000000 +0200
@@ -312,6 +312,19 @@
 do normal site initialisation so that the environment variables can be 
detected and coverage
 started.
 
+Coverage and debuggers
+----------------------
+
+When it comes to TDD one obviously would like to debug tests. Debuggers in 
Python use mostly the sys.settrace function
+to gain access to context. Coverage uses the same technique to get access to 
the lines executed. Coverage does not play
+well with other tracers simultaneously running. This manifests itself in 
behaviour that PyCharm might not hit a
+breakpoint no matter what the user does. Since it is common practice to have 
coverage configuration in the pytest.ini
+file and pytest does not support removeopts or similar the `--no-cov` flag can 
disable coverage completely.
+
+At the reporting part a warning message will show on screen
+
+    Coverage disabled via --no-cov switch!
+
 Acknowledgements
 ================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/docs/conf.py 
new/pytest-cov-2.4.0/docs/conf.py
--- old/pytest-cov-2.3.1/docs/conf.py   2016-08-07 22:09:52.000000000 +0200
+++ new/pytest-cov-2.4.0/docs/conf.py   2016-10-10 21:31:18.000000000 +0200
@@ -25,7 +25,7 @@
 year = '2016'
 author = 'pytest-cov contributors'
 copyright = '{0}, {1}'.format(year, author)
-version = release = '2.3.1'
+version = release = '2.4.0'
 
 pygments_style = 'trac'
 templates_path = ['.']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/setup.py 
new/pytest-cov-2.4.0/setup.py
--- old/pytest-cov-2.3.1/setup.py       2016-08-07 22:09:52.000000000 +0200
+++ new/pytest-cov-2.4.0/setup.py       2016-10-10 21:31:18.000000000 +0200
@@ -82,7 +82,7 @@
 
 setup(
     name='pytest-cov',
-    version='2.3.1',
+    version='2.4.0',
     license='MIT',
     description='Pytest plugin for measuring coverage.',
     long_description='%s\n%s' % (read('README.rst'), 
re.sub(':[a-z]+:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst'))),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/src/pytest-cov.embed 
new/pytest-cov-2.4.0/src/pytest-cov.embed
--- old/pytest-cov-2.3.1/src/pytest-cov.embed   2015-08-30 01:43:36.000000000 
+0200
+++ new/pytest-cov-2.4.0/src/pytest-cov.embed   2016-10-10 02:03:37.000000000 
+0200
@@ -2,7 +2,7 @@
     try:
         from pytest_cov.embed import init
         init()
-    except ImportError:
+    except ImportError as exc:
         sys.stderr.write(
             "Failed to setup coverage."
             "Sources: {[COV_CORE_SOURCE]!r}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/src/pytest-cov.pth 
new/pytest-cov-2.4.0/src/pytest-cov.pth
--- old/pytest-cov-2.3.1/src/pytest-cov.pth     2015-08-30 01:43:36.000000000 
+0200
+++ new/pytest-cov-2.4.0/src/pytest-cov.pth     2016-10-10 02:03:37.000000000 
+0200
@@ -1 +1 @@
-import os, sys;exec('if \'COV_CORE_SOURCE\' in os.environ:\n try:\n  from 
pytest_cov.embed import init\n  init()\n except ImportError:\n  
sys.stderr.write(\n   "Failed to setup coverage."\n   "Sources: 
{[COV_CORE_SOURCE]!r}"\n   "Config: {[COV_CORE_CONFIG]!r}"\n   "Exception: 
{!r}\\n".format(os.environ, exc))\n')
+import os, sys;exec('if \'COV_CORE_SOURCE\' in os.environ:\n try:\n  from 
pytest_cov.embed import init\n  init()\n except ImportError as exc:\n  
sys.stderr.write(\n   "Failed to setup coverage."\n   "Sources: 
{[COV_CORE_SOURCE]!r}"\n   "Config: {[COV_CORE_CONFIG]!r}"\n   "Exception: 
{!r}\\n".format(os.environ, exc))\n')
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/src/pytest_cov/__init__.py 
new/pytest-cov-2.4.0/src/pytest_cov/__init__.py
--- old/pytest-cov-2.3.1/src/pytest_cov/__init__.py     2016-08-07 
22:09:52.000000000 +0200
+++ new/pytest-cov-2.4.0/src/pytest_cov/__init__.py     2016-10-10 
21:31:18.000000000 +0200
@@ -1 +1 @@
-__version__ = "2.3.1"
+__version__ = "2.4.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/src/pytest_cov/plugin.py 
new/pytest-cov-2.4.0/src/pytest_cov/plugin.py
--- old/pytest-cov-2.3.1/src/pytest_cov/plugin.py       2016-08-06 
18:07:31.000000000 +0200
+++ new/pytest-cov-2.4.0/src/pytest_cov/plugin.py       2016-10-10 
02:03:37.000000000 +0200
@@ -68,6 +68,9 @@
     group.addoption('--no-cov-on-fail', action='store_true', default=False,
                     help='do not report coverage if test run fails, '
                          'default: False')
+    group.addoption('--no-cov', action='store_true', default=False,
+                    help='Disable coverage report completely (useful for 
debuggers) '
+                         'default: False')
     group.addoption('--cov-fail-under', action='store', metavar='MIN', 
type=int,
                     help='Fail if the total coverage is less than MIN.')
     group.addoption('--cov-append', action='store_true', default=False,
@@ -131,11 +134,16 @@
         self.cov_total = None
         self.failed = False
         self._started = False
+        self._disabled = False
         self.options = options
 
         is_dist = (getattr(options, 'numprocesses', False) or
                    getattr(options, 'distload', False) or
                    getattr(options, 'dist', 'no') != 'no')
+        if getattr(options, 'no_cov', False):
+            self._disabled = True
+            return
+
         if is_dist and start:
             self.start(engine.DistMaster)
         elif start:
@@ -144,6 +152,7 @@
         # slave is started in pytest hook
 
     def start(self, controller_cls, config=None, nodeid=None):
+
         if config is None:
             # fake config option for engine
             class Config(object):
@@ -170,6 +179,12 @@
 
     def pytest_sessionstart(self, session):
         """At session start determine our implementation and delegate to it."""
+
+        if self.options.no_cov:
+            # Coverage can be disabled because it does not cooperate with 
debuggers well.py
+            self._disabled = True
+            return
+
         self.pid = os.getpid()
         if self._is_slave(session):
             nodeid = session.config.slaveinput.get('slaveid',
@@ -207,6 +222,9 @@
     def pytest_runtestloop(self, session):
         yield
 
+        if self._disabled:
+            return
+
         compat_session = compat.SessionWrapper(session)
 
         self.failed = bool(compat_session.testsfailed)
@@ -226,6 +244,11 @@
                 compat_session.testsfailed += 1
 
     def pytest_terminal_summary(self, terminalreporter):
+        if self._disabled:
+            msg = 'Coverage disabled via --no-cov switch!'
+            terminalreporter.write('WARNING: %s' % msg, red=True, bold=True)
+            terminalreporter.config.warn(code='COV-U1', message=msg)
+            return
         if self.cov_controller is None:
             return
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/src/pytest_cov.egg-info/PKG-INFO 
new/pytest-cov-2.4.0/src/pytest_cov.egg-info/PKG-INFO
--- old/pytest-cov-2.3.1/src/pytest_cov.egg-info/PKG-INFO       2016-08-07 
22:10:36.000000000 +0200
+++ new/pytest-cov-2.4.0/src/pytest_cov.egg-info/PKG-INFO       2016-10-10 
21:31:55.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: pytest-cov
-Version: 2.3.1
+Version: 2.4.0
 Summary: Pytest plugin for measuring coverage.
 Home-page: https://github.com/pytest-dev/pytest-cov
 Author: Marc Schlaich
@@ -320,6 +320,19 @@
         do normal site initialisation so that the environment variables can be 
detected and coverage
         started.
         
+        Coverage and debuggers
+        ----------------------
+        
+        When it comes to TDD one obviously would like to debug tests. 
Debuggers in Python use mostly the sys.settrace function
+        to gain access to context. Coverage uses the same technique to get 
access to the lines executed. Coverage does not play
+        well with other tracers simultaneously running. This manifests itself 
in behaviour that PyCharm might not hit a
+        breakpoint no matter what the user does. Since it is common practice 
to have coverage configuration in the pytest.ini
+        file and pytest does not support removeopts or similar the `--no-cov` 
flag can disable coverage completely.
+        
+        At the reporting part a warning message will show on screen
+        
+            Coverage disabled via --no-cov switch!
+        
         Acknowledgements
         ================
         
@@ -340,6 +353,16 @@
         Changelog
         =========
         
+        2.4.0 (2016-10-10)
+        ------------------
+        
+        * Added a "disarm" option: ``--no-cov``. It will disable coverage 
measurements. Contributed by Zoltan Kozma in
+          `PR#135 <https://github.com/pytest-dev/pytest-cov/pull/135>`_.
+        
+          **WARNING: Do not put this in your configuration files, it's meant 
to be an one-off for situations where you want to
+          disable coverage from command line.**
+        * Fixed broken exception handling on ``.pth`` file. See `#136 
<https://github.com/pytest-dev/pytest-cov/issues/136>`_.
+        
         2.3.1 (2016-08-07)
         ------------------
         
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/tests/test_pytest_cov.py 
new/pytest-cov-2.4.0/tests/test_pytest_cov.py
--- old/pytest-cov-2.3.1/tests/test_pytest_cov.py       2016-08-07 
21:03:13.000000000 +0200
+++ new/pytest-cov-2.4.0/tests/test_pytest_cov.py       2016-10-10 
02:03:37.000000000 +0200
@@ -337,7 +337,7 @@
     ])
 
     # multi-module coverage report
-    assert any(line.startswith('TOTAL ') for line in result.stdout.lines[-4:])
+    assert any(line.startswith('TOTAL ') for line in result.stdout.lines)
 
     assert result.ret == 0
 
@@ -420,6 +420,21 @@
     result.stdout.fnmatch_lines(['*1 failed*'])
 
 
+def test_no_cov(testdir):
+    script = testdir.makepyfile(SCRIPT)
+
+    result = testdir.runpytest('-vvv',
+                               '--cov=%s' % script.dirpath(),
+                               '--cov-report=term-missing',
+                               '--no-cov',
+                               '-rw',
+                               script)
+    result.stdout.fnmatch_lines_random([
+        'WARNING: Coverage disabled via --no-cov switch!',
+        '*1 warnings*' if pytest.__version__.startswith('2.7') else 
'WCOV-U1*Coverage disabled via --no-cov switch!',
+    ])
+
+
 def test_cov_and_failure_report_on_fail(testdir):
     script = testdir.makepyfile(SCRIPT + SCRIPT_FAIL)
 
@@ -428,10 +443,12 @@
                                '--cov-fail-under=100',
                                script)
 
-    assert 'coverage: platform' in result.stdout.str()
-    assert 'FAIL Required test coverage of 100% not reached' in 
result.stdout.str()
-    assert 'assert False' in result.stdout.str()
-    result.stdout.fnmatch_lines(['*10 failed*'])
+    result.stdout.fnmatch_lines_random([
+        '*10 failed*',
+        '*coverage: platform*',
+        '*FAIL Required test coverage of 100% not reached*',
+        '*assert False*',
+    ])
 
 
 def test_dist_combine_racecondition(testdir):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/pytest-cov-2.3.1/tox.ini new/pytest-cov-2.4.0/tox.ini
--- old/pytest-cov-2.3.1/tox.ini        2016-08-07 16:42:32.000000000 +0200
+++ new/pytest-cov-2.4.0/tox.ini        2016-08-20 13:44:49.000000000 +0200
@@ -24,14 +24,14 @@
     27: pytest==2.7.3
     28: pytest==2.8.7
     29: pytest==2.9.2
-    30: 
https://github.com/pytest-dev/pytest/archive/ac5c39e5340d541a37266ae85d9138afcdcaab39.zip
+    30: pytest==3.0.0
     pytest-capturelog
     37: coverage==3.7.1
     40: coverage==4.0.3
     41: coverage==4.1
     42: coverage==4.2
     virtualenv
-    pytest-xdist==1.14
+    pytest-xdist==1.15.0
     27: pytest-cache==1.0.0
     process-tests==1.2.0
 pip_pre = true


Reply via email to