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
I'm seeing INTERNALERROR: Unknown entry type returned: TraceLastReprEntry with a long long unreadable traceback when running tests for python-attrs/attrs that produce type checker failures.
This is the traceback of the exception in pytest:
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/xdist/workermanage.py", line 414, in process_from_remote
INTERNALERROR> rep = self.config.hook.pytest_report_from_serializable(
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/pluggy/_hooks.py", line 513, in __call__
INTERNALERROR> return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
INTERNALERROR> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
INTERNALERROR> raise exception.with_traceback(exception.__traceback__)
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/pluggy/_callers.py", line 103, in _multicall
INTERNALERROR> res = hook_impl.function(*args)
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 460, in pytest_report_from_serializable
INTERNALERROR> return TestReport._from_json(data)
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 226, in _from_json
INTERNALERROR> kwargs = _report_kwargs_from_json(reportdict)
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 593, in _report_kwargs_from_json
INTERNALERROR> reprtraceback = deserialize_repr_traceback(
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 578, in deserialize_repr_traceback
INTERNALERROR> deserialize_repr_entry(x) for x in repr_traceback_dict["reprentries"]
INTERNALERROR> ^^^^^^^^^^^^^^^^^^^^^^^^^
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 573, in deserialize_repr_entry
INTERNALERROR> _report_unserialization_failure(entry_type, TestReport, reportdict)
INTERNALERROR> File "/tmp-attrs/attrs/.tox/py312-tests/lib/python3.12/site-packages/_pytest/reports.py", line 241, in _report_unserialization_failure
INTERNALERROR> raise RuntimeError(stream.getvalue())
It looks like deserialize_repr_entry in pytest code base makes a specific check for the entry type and only supports "ReprEntry" or "ReprEntryNative", otherwise it throws this RuntimeError.
It seems updating pytest_mypy_plugins/item.py to set repr_tb_entry = ReprEntry(...) also prevents the error from happening.
In order to reproduce this issue, clone the python-attrs/attrs repo, then modify tests/test_mypy.yml to introduce any typing error, then run tox or tox -e py312-tests (quicker), the error message is very long and almost impossible to read!
Thanks!
The text was updated successfully, but these errors were encountered:
I'm seeing
INTERNALERROR: Unknown entry type returned: TraceLastReprEntry
with a long long unreadable traceback when running tests forpython-attrs/attrs
that produce type checker failures.This is the traceback of the exception in pytest:
It looks like
deserialize_repr_entry
in pytest code base makes a specific check for the entry type and only supports"ReprEntry"
or"ReprEntryNative"
, otherwise it throws this RuntimeError.It seems updating
pytest_mypy_plugins/item.py
to setrepr_tb_entry = ReprEntry(...)
also prevents the error from happening.In order to reproduce this issue, clone the python-attrs/attrs repo, then modify
tests/test_mypy.yml
to introduce any typing error, then runtox
ortox -e py312-tests
(quicker), the error message is very long and almost impossible to read!Thanks!
The text was updated successfully, but these errors were encountered: