pytest-cov icon indicating copy to clipboard operation
pytest-cov copied to clipboard

internal error with 2.9.0 (latest) in cython project

Open Synss opened this issue 4 years ago • 10 comments

Summary

I use pytest-cov on CircleCI for my project (python-mbedtls) and the latest 2.9.0 crashes with a traceback, although the previous versions were working without problem. The crashes happen after seemingly innocuous changes (like comments and docstrings). I am not sure how to reliably trigger the faulty behaviour.

Reproducer

Versions

It is cython code. I could reproduce this with CI running on Python 3.7 and 3.8. I updated pytest-cov and moved to pyproject.toml about at the same time.

Config

  • pyproject.toml
[tool.black]
line-length = 79
target-version = ['py36', 'py37', 'py38']

[tool.coverage.report]
exclude_lines = [
  'pragma: no cover',
  'def __repr__',
  'raise MemoryError()',
  'raise NotImplementedError',
  'free(\w)',
]
include = ['src/*']

[tool.coverage.run]
plugins = ['Cython.Coverage']

[tool.isort]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
line_length = 79

[tool.pylint.master]
extension-pkg-whitelist='mbedtls'

[tool.pylint.messages_control]
disable = "C0103, C0326, C0330"

[tool.pylint.similarities]
ignore-comments = "yes"
ignore-docstrings = "yes"
min-similarity-lines = "8"
  • requirements/tests.txt
#
# This file is autogenerated by pip-compile
# To update, run:
#
#    pip-compile requirements/tests.in
#
atomicwrites==1.3.0       # via pytest
attrs==19.3.0             # via pytest
bleach==3.1.4             # via readme-renderer
docutils==0.16            # via readme-renderer
importlib-metadata==1.6.0  # via pluggy, pytest
more-itertools==5.0.0     # via -r requirements/tests.in (line 4), pytest
packaging==20.3           # via pytest
pluggy==0.13.1            # via pytest
py==1.8.1                 # via pytest
pygments==2.5.2           # via readme-renderer
pyparsing==2.4.6          # via packaging
pytest==4.6.9             # via -r requirements/tests.in (line 1)
readme-renderer==24.0     # via -r requirements/tests.in (line 2)
six==1.14.0               # via bleach, more-itertools, packaging, pytest, readme-renderer
wcwidth==0.1.8            # via pytest
webencodings==0.5.1       # via bleach
zipp==1.2.0               # via -r requirements/tests.in (line 5), importlib-metadata
  • requirements/qa.txt
#
# This file is autogenerated by pip-compile
# To update, run:
#
#    pip-compile requirements/qa.in
#
appdirs==1.4.4            # via black
astroid==2.4.1            # via pylint
attrs==19.3.0             # via black, pytest
black==19.10b0            # via -r requirements/qa.in, pytest-black
click==7.1.2              # via black
coverage==5.1             # via -r requirements/qa.in, pytest-cov
cython==0.29.19           # via -r requirements/qa.in
importlib-metadata==1.6.0  # via pluggy, pytest
isort==4.3.21             # via -r requirements/qa.in, pylint, pytest-isort
lazy-object-proxy==1.4.3  # via astroid
mccabe==0.6.1             # via pylint
more-itertools==8.3.0     # via pytest
packaging==20.4           # via pytest
pathspec==0.8.0           # via black
pluggy==0.13.1            # via pytest
py==1.8.1                 # via pytest
pylint==2.5.2             # via -r requirements/qa.in
pyparsing==2.4.7          # via packaging
pytest-black==0.3.9       # via -r requirements/qa.in
pytest-cov==2.9.0         # via -r requirements/qa.in
pytest-isort==1.0.0       # via -r requirements/qa.in
pytest-repeat==0.8.0      # via -r requirements/qa.in
pytest==5.4.2             # via -r requirements/qa.in, pytest-black, pytest-cov, pytest-isort, pytest-repeat
regex==2020.5.14          # via black
six==1.15.0               # via astroid, packaging
toml==0.10.1              # via black, pylint, pytest-black
typed-ast==1.4.1          # via astroid, black
wcwidth==0.1.9            # via pytest
wrapt==1.12.1             # via astroid
zipp==3.1.0               # via importlib-metadata

Code

  • Repo: https://github.com/Synss/python-mbedtls/
  • Full CI run: https://circleci.com/gh/Synss/python-mbedtls/2060
  • Traceback (after a successful pytest run)
tests/test_version.py .............                                      [ 98%]
tests/test_x509.py ..................................................... [ 99%]
..........ss.                                                            [100%]Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1278.414817' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1278.414817': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1299.521891' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1299.521891': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1270.850865' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1270.850865': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1288.513062' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1288.513062': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1283.472350' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1283.472350': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1296.507622' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1296.507622': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1279.561734' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1279.561734': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1287.607928' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1287.607928': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1261.127773' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1261.127773': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1286.970446' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1286.970446': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1272.256838' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1272.256838': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1290.260024' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1290.260024': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1298.998491' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1298.998491': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1269.456692' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1269.456692': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1281.832317' doesn't seem to be a coverage data file: cannot unpack non-iterable NoneType object
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1274.460264' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1274.460264': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1291.285188' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1291.285188': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1297.840775' doesn't seem to be a coverage data file: cannot unpack non-iterable NoneType object
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1268.294857' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1268.294857': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1267.842671' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1267.842671': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1271.215002' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1271.215002': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1257.202118' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1257.202118': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1276.619447' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1276.619447': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1263.597798' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1263.597798': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1275.167240' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1275.167240': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1284.848148' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1284.848148': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1258.901421' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1258.901421': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1260.829977' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1260.829977': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1292.747814' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1292.747814': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1255.339660' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1255.339660': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1273.872576' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1273.872576': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1282.599886' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1282.599886': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1264.796347' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1264.796347': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1294.871575' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1294.871575': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1265.581917' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1265.581917': no such table: coverage_schema
Coverage.py warning: Data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1293.179374' doesn't seem to be a coverage data file: Couldn't use data file '/home/circleci/python-mbedtls/.coverage.57e205fd9ce4.1293.179374': no such table: coverage_schema

INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/_pytest/main.py", line 191, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/_pytest/main.py", line 247, in _main
INTERNALERROR>     config.hook.pytest_runtestloop(session=session)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pluggy/hooks.py", line 286, in __call__
INTERNALERROR>     return self._hookexec(self, self.get_hookimpls(), kwargs)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pluggy/manager.py", line 93, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook, methods, kwargs)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pluggy/manager.py", line 87, in <lambda>
INTERNALERROR>     firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pluggy/callers.py", line 203, in _multicall
INTERNALERROR>     gen.send(outcome)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pytest_cov/plugin.py", line 264, in pytest_runtestloop
INTERNALERROR>     self.cov_controller.finish()
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pytest_cov/engine.py", line 46, in ensure_topdir_wrapper
INTERNALERROR>     return meth(self, *args, **kwargs)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/pytest_cov/engine.py", line 231, in finish
INTERNALERROR>     self.cov.stop()
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/coverage/control.py", line 687, in combine
INTERNALERROR>     combine_parallel_data(self._data, aliases=aliases, data_paths=data_paths, strict=strict)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/coverage/data.py", line 117, in combine_parallel_data
INTERNALERROR>     data.update(new_data, aliases=aliases)
INTERNALERROR>   File "/home/circleci/.local/lib/python3.7/site-packages/coverage/sqldata.py", line 661, in update
INTERNALERROR>     path, this_tracer, other_tracer
INTERNALERROR> coverage.misc.CoverageException: Conflicting file tracer name for '/home/circleci/python-mbedtls/src/mbedtls/tls.pyx': 'Cython.Coverage.Plugin' vs ''

===== 6218 passed, 342 skipped, 7 xfailed, 1 warning in 112.90s (0:01:52) ======

Exited with code exit status 3

Synss avatar May 25 '20 20:05 Synss

I'm seeing a similar stack trace in 2.9.0 without Cython.

platform darwin -- Python 3.7.6, pytest-5.4.2, py-1.8.1, pluggy-0.13.1
plugins: cov-2.9.0, mock-3.1.0

The tests run, some fail (as expected), and then this happens:

INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/_pytest/main.py", line 191, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/_pytest/main.py", line 247, in _main
INTERNALERROR>     config.hook.pytest_runtestloop(session=session)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pluggy/hooks.py", line 286, in __call__
INTERNALERROR>     return self._hookexec(self, self.get_hookimpls(), kwargs)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pluggy/manager.py", line 93, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook, methods, kwargs)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pluggy/manager.py", line 87, in <lambda>
INTERNALERROR>     firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pluggy/callers.py", line 203, in _multicall
INTERNALERROR>     gen.send(outcome)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pytest_cov/plugin.py", line 264, in pytest_runtestloop
INTERNALERROR>     self.cov_controller.finish()
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pytest_cov/engine.py", line 46, in ensure_topdir_wrapper
INTERNALERROR>     return meth(self, *args, **kwargs)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/pytest_cov/engine.py", line 231, in finish
INTERNALERROR>     self.cov.stop()
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/coverage/control.py", line 687, in combine
INTERNALERROR>     combine_parallel_data(self._data, aliases=aliases, data_paths=data_paths, strict=strict)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/coverage/data.py", line 117, in combine_parallel_data
INTERNALERROR>     data.update(new_data, aliases=aliases)
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/coverage/sqldata.py", line 706, in update
INTERNALERROR>     for (file, context), numbits in lines.items()
INTERNALERROR>   File "/path-to-virtual-env/lib/python3.7/site-packages/coverage/sqldata.py", line 706, in <listcomp>
INTERNALERROR>     for (file, context), numbits in lines.items()
INTERNALERROR> KeyError: '/path-to-source/__init__.py'

Options used:

--cov=my-project/ --cov-report=term-missing:skip-covered --no-cov-on-fail --cov-fail-under=100

I tried removing --cov-report=term-missing:skip-covered --no-cov-on-fail but it didn't help. Rolling back pytest-cov to version 2.8.1 fixes the issue.

z0u avatar May 27 '20 05:05 z0u

Do you have other hidden pytest arguments (addopts from pytest.ini/setup.cfg/tox.ini/etc)?

ionelmc avatar May 27 '20 08:05 ionelmc

Do you have other hidden pytest arguments?

I do not think so. I have a pytest.hookimpl, though. And pytest-black is also active.

Synss avatar May 27 '20 18:05 Synss

@Synss does python-mbedtls reproduce the problem locally?

ionelmc avatar May 27 '20 19:05 ionelmc

I run MacOS 10.15.4 and Python 3.7 and 3.8 and I could reproduce the problem at least with 3.7.

Coverage.py warning: Data file '/Users/laurin/src/python-mbedtls.git/.co
verage.Mathiass-MacBook-Pro.local.73182.008619' doesn't seem to be a cov
erage data file: Couldn't use data file '/Users/laurin/src/python-mbedtl
s.git/.coverage.Mathiass-MacBook-Pro.local.73182.008619': no such table:
 coverage_schema
Coverage.py warning: Data file '/Users/laurin/src/python-mbedtls.git/.co
verage.Mathiass-MacBook-Pro.local.73191.791882' doesn't seem to be a cov
erage data file: Couldn't use data file '/Users/laurin/src/python-mbedtl
s.git/.coverage.Mathiass-MacBook-Pro.local.73191.791882': no such table:
 coverage_schema

...

Coverage.py warning: Data file '/Users/laurin/src/python-mbedtls.git/.co
verage.Mathiass-MacBook-Pro.local.73161.309243' doesn't seem to be a cov
erage data file: Couldn't use data file '/Users/laurin/src/python-mbedtl
s.git/.coverage.Mathiass-MacBook-Pro.local.73161.309243': no such table:
 coverage_schema
Coverage.py warning: Data file '/Users/laurin/src/python-mbedtls.git/.co
verage.Mathiass-MacBook-Pro.local.73189.286866' doesn't seem to be a cov
erage data file: Couldn't use data file '/Users/laurin/src/python-mbedtl
s.git/.coverage.Mathiass-MacBook-Pro.local.73189.286866': no such table:
 coverage_schema

Synss avatar May 27 '20 20:05 Synss

It does not happen every time. I still cannot figure out what triggers the error.

Synss avatar May 27 '20 20:05 Synss

@Synss, were you ever able to find a solution? I got the exact same error and I had to downgrade to pytest-cov==2.7.1 in order for it to work.

I'm using:

platform linux -- Python 3.6.8, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
plugins: parallel-0.1.0, cov-2.7.1

actually, I just upgraded to 2.8.1 and downgraded again to 2.7.1 and it no longer works. This is infuriating; it seems like a race condition in pytest-cov?

neontty avatar Dec 03 '20 21:12 neontty

@Synss, were you ever able to find a solution? I got the exact same error and I had to downgrade to pytest-cov==2.7.1 in order for it to work.

I'm using:

platform linux -- Python 3.6.8, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
plugins: parallel-0.1.0, cov-2.7.1

actually, I just upgraded to 2.8.1 and downgraded again to 2.7.1 and it no longer works. This is infuriating; it seems like a race condition in pytest-cov?

Turns out I was just missing some options in coverage. Someone had turned on multiprocessing in our test suite:

parallel = True
concurrency = thread, multiprocessing

neontty avatar Dec 04 '20 14:12 neontty

I ran into the same issue in kivy for the first time (even though we had parallel = True for some time):

platform win32 -- Python 3.6.8, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
rootdir: D:\a\kivy\kivy
plugins: asyncio-0.14.0, cov-2.10.1, timeout-1.4.2
timeout: 300.0s
timeout method: thread
timeout func_only: False
...
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\_pytest\main.py", line 257, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\_pytest\main.py", line 313, in _main
INTERNALERROR>     config.hook.pytest_runtestloop(session=session)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pluggy\hooks.py", line 286, in __call__
INTERNALERROR>     return self._hookexec(self, self.get_hookimpls(), kwargs)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pluggy\manager.py", line 93, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook, methods, kwargs)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pluggy\manager.py", line 87, in <lambda>
INTERNALERROR>     firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pluggy\callers.py", line 203, in _multicall
INTERNALERROR>     gen.send(outcome)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pytest_cov\plugin.py", line 271, in pytest_runtestloop
INTERNALERROR>     self.cov_controller.finish()
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pytest_cov\engine.py", line 44, in ensure_topdir_wrapper
INTERNALERROR>     return meth(self, *args, **kwargs)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\pytest_cov\engine.py", line 229, in finish
INTERNALERROR>     self.cov.stop()
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\coverage\control.py", line 696, in combine
INTERNALERROR>     combine_parallel_data(self._data, aliases=aliases, data_paths=data_paths, strict=strict)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\coverage\data.py", line 117, in combine_parallel_data
INTERNALERROR>     data.update(new_data, aliases=aliases)
INTERNALERROR>   File "C:\hostedtoolcache\windows\Python\3.6.8\x64\lib\site-packages\coverage\sqldata.py", line 661, in update
INTERNALERROR>     path, this_tracer, other_tracer
INTERNALERROR> coverage.misc.CoverageException: Conflicting file tracer name for 'D:\a\kivy\kivy\kivy\data\style.kv': '' vs 'kivy.tools.coverage.KivyCoveragePlugin'

where KivyCoveragePlugin is our own kivy plugin. Even in the failed CI, it only failed for 1 / 8 runs. Adding concurrency = thread, multiprocessing in the hope it'll resolve it.

matham avatar Dec 10 '20 21:12 matham

could it be some bad coincidence with installed pytest-xdit at the same time even the tests are not running in parallel?

Borda avatar Mar 15 '21 07:03 Borda