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
{{ message }}
Repository navigation
pytest 6: PytestDeprecationWarning: Direct construction of TokenizerFile has been deprecated, please use TokenizerFile.from_parent. #505
This is what I get when I run tests with pytest 6.0.1:
============================= test session starts ==============================
platform linux -- Python 3.9.0b5, pytest-6.0.1, py-1.9.0, pluggy-0.13.1
rootdir: /builddir/build/BUILD/html5lib-1.1, configfile: pytest.ini
plugins: expect-1.1.0
collected 0 items / 1 error
==================================== ERRORS ====================================
________________________ ERROR collecting test session _________________________
/usr/lib/python3.9/site-packages/pluggy/hooks.py:286: in __call__
return self._hookexec(self, self.get_hookimpls(), kwargs)
/usr/lib/python3.9/site-packages/pluggy/manager.py:93: in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
/usr/lib/python3.9/site-packages/pluggy/manager.py:84: in <lambda>
self._inner_hookexec = lambda hook, methods, kwargs: hook.multicall(
html5lib/tests/conftest.py:105: in pytest_collect_file
return TokenizerFile(path, parent)
/usr/lib/python3.9/site-packages/_pytest/nodes.py:95: in __call__
warnings.warn(NODE_USE_FROM_PARENT.format(name=self.__name__), stacklevel=2)
E pytest.PytestDeprecationWarning: Direct construction of TokenizerFile has been deprecated, please use TokenizerFile.from_parent.
E See https://docs.pytest.org/en/stable/deprecations.html#node-construction-changed-to-node-from-parent for more details.
To note, pytest-dev/pytest@c99c7d0 is the underlying change in PyTest; note that the introduction of from_parent was at the same time as the constructor deprecation in PyTest 5.4, and we presently need to continue supporting PyTest < 5 for Python 2.7 support. I suppose we could just fork on pytest.__version__ when creating the nodes if anyone wants to create a PR for this (and TokenizerFile isn't the only place which needs this in that contest.py).
Activity
gsnedders commentedon Aug 8, 2020
To note, pytest-dev/pytest@c99c7d0 is the underlying change in PyTest; note that the introduction of
from_parentwas at the same time as the constructor deprecation in PyTest 5.4, and we presently need to continue supporting PyTest < 5 for Python 2.7 support. I suppose we could just fork onpytest.__version__when creating the nodes if anyone wants to create a PR for this (and TokenizerFile isn't the only place which needs this in thatcontest.py).hroncok commentedon Aug 8, 2020
Working on it BTW.
Use Node.from_parent() constructor to support pytest 6
Use Node.from_parent() constructor to support pytest 6
Use Node.from_parent() constructor to support pytest 6
hroncok commentedon Aug 8, 2020
#506
Use Node.from_parent() constructor to support pytest 6
Use Node.from_parent() constructor to support pytest 6