Criticality
Low
What happened?
When installing gevent as part of the requirements of Odoo, odev fails to install them due to this error
/home/odoo/odev/virtualenvs/master/bin/python -m pip install --no-build-isolation gevent==21.8.0 --no-color
Collecting gevent==21.8.0
Using cached gevent-21.8.0.tar.gz (6.2 MB)
Preparing metadata (pyproject.toml) ... done
ERROR: Exception:
Traceback (most recent call last):
pip._vendor.pyproject_hooks._impl.BackendUnavailable: Cannot import 'setuptools.build_meta'
(full traceback below)
I believe this could be due to the strict requirements for setuptools version
|
setuptools>=58.0.0, <59.0.0; python_version >= '3.8' and python_version < '3.12' |
After uninstalling setuptools and installing it again without any version requirements (it version version ~80 while less than 60 in the requirements) we were able to install gevent
Relevant log output
/home/odoo/odev/virtualenvs/master/bin/python -m pip install --no-build-isolation gevent==21.8.0 --no-color
Collecting gevent==21.8.0
Using cached gevent-21.8.0.tar.gz (6.2 MB)
Preparing metadata (pyproject.toml) ... done
ERROR: Exception:
Traceback (most recent call last):
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/cli/base_command.py", line 107, in _run_wrapper
status = _inner_run()
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/cli/base_command.py", line 98, in _inner_run
return self.run(options, args)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/cli/req_command.py", line 71, in wrapper
return func(self, options, args)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/commands/install.py", line 393, in run
requirement_set = resolver.resolve(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 98, in resolve
result = self._result = resolver.resolve(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 596, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 429, in resolve
self._add_to_criteria(self.state.criteria, r, parent=None)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 150, in _add_to_criteria
if not criterion.candidates:
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__
return bool(self._sequence)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 165, in __bool__
self._bool = any(self)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 149, in <genexpr>
return (c for c in iterator if id(c) not in self._incompatible_ids)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 39, in _iter_built
candidate = func()
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 180, in _make_candidate_from_link
base: BaseCandidate | None = self._make_base_candidate_from_link(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 226, in _make_base_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 309, in __init__
super().__init__(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162, in __init__
self.dist = self._prepare()
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 239, in _prepare
dist = self._prepare_distribution()
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 320, in _prepare_distribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 537, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 652, in _prepare_linked_requirement
dist = _get_prepared_distribution(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 77, in _get_prepared_distribution
abstract_dist.prepare_distribution_metadata(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/distributions/sdist.py", line 72, in prepare_distribution_metadata
self.req.prepare_metadata()
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/req/req_install.py", line 578, in prepare_metadata
self.metadata_directory = generate_metadata(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py", line 34, in generate_metadata
distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir)
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_internal/utils/misc.py", line 715, in prepare_metadata_for_build_wheel
return super().prepare_metadata_for_build_wheel(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 224, in prepare_metadata_for_build_wheel
return self._call_hook(
File "/home/odoo/odev/virtualenvs/master/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 402, in _call_hook
raise BackendUnavailable(
pip._vendor.pyproject_hooks._impl.BackendUnavailable: Cannot import 'setuptools.build_meta'
(failed reverse-i-search)`is-dev': /home/odoo/odev/virtualenvs/master/bin/python -m pip install --no-build-^Colation gevent==21.8.0 --no-color
What is expected?
change the requirements of setuptools to be less strict or to use a more recent version of it
Possible implementation
No response
Additional information
No response
Criticality
Low
What happened?
When installing gevent as part of the requirements of Odoo, odev fails to install them due to this error
(full traceback below)
I believe this could be due to the strict requirements for setuptools version
odev/odev/static/requirements.txt
Line 6 in 8c10780
After uninstalling setuptools and installing it again without any version requirements (it version version ~80 while less than 60 in the requirements) we were able to install gevent
Relevant log output
What is expected?
change the requirements of setuptools to be less strict or to use a more recent version of it
Possible implementation
No response
Additional information
No response