Closed SeanMooney closed 10 months ago
repoducer steps
clone any openstack repo that uses tox
git clone https://opendev.org/openstack/nova
install tox 4.10.0 with pyproject-api=1.6.0
cd nova
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install tox===4.10.0 pyproject-api===1.6.0
replciate bug
tox -e py3
output
[20:33:50]➜ tox -e py3
.pkg: _optional_hooks> python /home/smooney/repos/nova/.venv/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_sdist> python /home/smooney/repos/nova/.venv/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
.pkg: get_requires_for_build_editable> python /home/smooney/repos/nova/.venv/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
py3: internal error
Traceback (most recent call last):
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/session/cmd/run/single.py", line 46, in _evaluate
tox_env.setup()
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/api.py", line 248, in setup
self._setup_with_env()
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/runner.py", line 145, in _setup_with_env
self._setup_pkg()
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/runner.py", line 168, in _setup_pkg
self._packages = self._build_packages()
^^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/runner.py", line 119, in _build_packages
packages = package_env.perform_packaging(self.conf)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/package.py", line 45, in _func
return meth(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/virtual_env/package/pyproject.py", line 189, in perform_packaging
deps = self._load_deps(for_env)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/package.py", line 45, in _func
return meth(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/virtual_env/package/pyproject.py", line 248, in _load_deps
deps = self._load_deps_from_built_metadata(for_env)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/package.py", line 45, in _func
return meth(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/virtual_env/package/pyproject.py", line 292, in _load_deps_from_built_metadata
reqs = self.get_package_dependencies(for_env)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/package.py", line 45, in _func
return meth(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/virtual_env/package/pyproject.py", line 300, in get_package_dependencies
self._ensure_meta_present(for_env)
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/package.py", line 45, in _func
return meth(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/smooney/repos/nova/.venv/lib/python3.11/site-packages/tox/tox_env/python/virtual_env/package/pyproject.py", line 321, in _ensure_meta_present
dist_info = hook(self.meta_folder, self._wheel_config_settings).metadata
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'metadata'
.pkg: _exit> python /home/smooney/repos/nova/.venv/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
py3: FAIL code 2 (0.11 seconds)
evaluation failed :( (0.24 seconds)
"python3 -m pip install tox===4.11.0" fixes this by the way since ye force 1.6.1 in the requirements for tox 4.11.0
just wanted to report this mainly for your awareness.
the new release fixes the regression
Sorry, this was a transient release problem 👍
hi we started seeing gate failures in OpenStack about an hour ago that appear to be related to the 1.6.0 release
https://zuul.opendev.org/t/openstack/build/c5d49b4d4359429ea1c4887559184f12/log/job-output.txt#1431-1478
2023-08-29 18:17:59.547755 | ubuntu-focal | dist_info = hook(self.meta_folder, self._wheel_config_settings).metadata
2023-08-29 18:17:59.547792 | ubuntu-focal | AttributeError: 'NoneType' object has no attribute 'metadata
This seams to be affecting a large number of our jobs.
it is simple to replicate by cloning any of the affect repos and say running the py3 tox env.
i think this has now been address with the release of tox 4.11.0 and pyproject-api 1.6.1
hoefuly those will make there way into our ci shortly but i just wanted to report this incomaptibely in hopes we can catch that before the release going forward