You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
And just use pytest.mark.slow where needed. Defining the fixture at the top-level there causes problems for projects that import pandas and use the --strict flag for pytest.
$ echo"import pandas"> test_pandas.py
$ pytest test_pandas.py --strict
====================================================== ERRORS ======================================================
_________________________________________ ERROR collecting test_pandas.py __________________________________________
test_pandas.py:1: in<module>
import pandas
/Users/taugspurger/Envs/pandas-dev/lib/python3.6/site-packages/pandas/pandas/__init__.py:60: in<module>
import pandas.testing
/Users/taugspurger/Envs/pandas-dev/lib/python3.6/site-packages/pandas/pandas/testing.py:7: in<module>
from pandas.util.testing import (
/Users/taugspurger/Envs/pandas-dev/lib/python3.6/site-packages/pandas/pandas/util/testing.py:55: in<module>
slow = pytest.mark.slow
/Users/taugspurger/Envs/pandas-dev/lib/python3.6/site-packages/_pytest/mark.py:251: in __getattr__
self._check(name)
/Users/taugspurger/Envs/pandas-dev/lib/python3.6/site-packages/_pytest/mark.py:266: in _check
raise AttributeError("%r not a registered marker" % (name,))
E AttributeError: 'slow' not a registered marker
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
============================================= 1 error in 1.29 seconds ==============================================
By replacing usages of @slow with @pytest.mark.slow, the error is not raised.
The alternative is to register a setuptools entrypoint that exposes the slow marker. I don't think this is desirable, since AFAIK, there's no namespacing on pytest plugins. It doesn't make since for pandas to claim that, since we aren't a pytest plugin really.
I'm marking this for 0.21.0, since it's possible people were using the @slow decorator in their own tests. I'll do some searching.
wow, I was just bitten by this very issue a couple of minutes ago. is there any workaround that I could deploy for 0.20.3 to avoid breaking pytest --strict runs when importing pandas?
And just use
pytest.mark.slow
where needed. Defining the fixture at the top-level there causes problems for projects that import pandas and use the--strict
flag for pytest.By replacing usages of
@slow
with@pytest.mark.slow
, the error is not raised.The alternative is to register a setuptools entrypoint that exposes the slow marker. I don't think this is desirable, since AFAIK, there's no namespacing on pytest plugins. It doesn't make since for pandas to claim that, since we aren't a pytest plugin really.
I'm marking this for 0.21.0, since it's possible people were using the
@slow
decorator in their own tests. I'll do some searching.xref #16680 (comment) and #16797
cc @koffie
The text was updated successfully, but these errors were encountered: