AttributeError: 'PosixPath' object has no attribute 'read_text'
I get the following stacktrace when trying to use pytest which imports importlib_metadata:
$ pytest eth2spec/test/phase_0/block_processing/test_process_deposit.py
Traceback (most recent call last):
File "/usr/bin/pytest", line 11, in <module>
load_entry_point('pytest==4.6.4', 'console_scripts', 'pytest')()
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2843, in load_entry_point
return ep.load()
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2434, in load
return self.resolve()
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2440, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/usr/lib/python3.7/site-packages/pytest.py", line 8, in <module>
from _pytest.assertion import register_assert_rewrite
File "/usr/lib/python3.7/site-packages/_pytest/assertion/__init__.py", line 13, in <module>
from _pytest.assertion import rewrite
File "/usr/lib/python3.7/site-packages/_pytest/assertion/rewrite.py", line 24, in <module>
from _pytest.assertion import util
File "/usr/lib/python3.7/site-packages/_pytest/assertion/util.py", line 11, in <module>
import _pytest._code
File "/usr/lib/python3.7/site-packages/_pytest/_code/__init__.py", line 7, in <module>
from .code import Code # noqa
File "/usr/lib/python3.7/site-packages/_pytest/_code/code.py", line 15, in <module>
import pluggy
File "/usr/lib/python3.7/site-packages/pluggy/__init__.py", line 16, in <module>
from .manager import PluginManager, PluginValidationError
File "/usr/lib/python3.7/site-packages/pluggy/manager.py", line 6, in <module>
import importlib_metadata
File "/usr/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 471, in <module>
__version__ = version(__name__)
File "/usr/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 438, in version
return distribution(package).version
File "/usr/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 226, in version
return self.metadata['Version']
File "/usr/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 214, in metadata
self.read_text('METADATA')
File "/usr/lib/python3.7/site-packages/importlib_metadata/__init__.py", line 398, in read_text
return self._path.joinpath(filename).read_text(encoding='utf-8')
AttributeError: 'PosixPath' object has no attribute 'read_text'
Package version:
- pytest-4.6.4
- importlib-metadata-0.18
- python 3.7.3