Hi, I’ve raised a horizon bug - https://bugs.launchpad.net/horizon/+bug/2141293 and a kolla setuptools pin patch for now https://review.opendev.org/c/openstack/kolla/+/976099. Best regards, Bartosz Bezak
On 9 Feb 2026, at 11:43, Takashi Kajinami <kajinamit@oss.nttdata.com> wrote:
I've not checked the exact problem in kolla, but an example of the problems triggered by this is failure during installing bunch of xstatic-* libraries for horizon
--- 2026-02-09 06:18:16.431558 | controller | × Getting requirements to build wheel did not run successfully. 2026-02-09 06:18:16.431562 | controller | │ exit code: 1 2026-02-09 06:18:16.431576 | controller | ╰─> [23 lines of output] 2026-02-09 06:18:16.431580 | controller | Traceback (most recent call last): 2026-02-09 06:18:16.431589 | controller | File "/opt/stack/data/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module> 2026-02-09 06:18:16.431594 | controller | main() 2026-02-09 06:18:16.431606 | controller | File "/opt/stack/data/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main 2026-02-09 06:18:16.431610 | controller | json_out["return_val"] = hook(**hook_input["kwargs"]) 2026-02-09 06:18:16.431623 | controller | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-02-09 06:18:16.431628 | controller | File "/opt/stack/data/venv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel 2026-02-09 06:18:16.431640 | controller | return hook(config_settings) 2026-02-09 06:18:16.431644 | controller | ^^^^^^^^^^^^^^^^^^^^^ 2026-02-09 06:18:16.431648 | controller | File "/tmp/pip-build-env-_mvl8qsh/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel 2026-02-09 06:18:16.431661 | controller | return self._get_build_requires(config_settings, requirements=[]) 2026-02-09 06:18:16.431668 | controller | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-02-09 06:18:16.431672 | controller | File "/tmp/pip-build-env-_mvl8qsh/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires 2026-02-09 06:18:16.431676 | controller | self.run_setup() 2026-02-09 06:18:16.431689 | controller | File "/tmp/pip-build-env-_mvl8qsh/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 520, in run_setup 2026-02-09 06:18:16.431693 | controller | super().run_setup(setup_script=setup_script) 2026-02-09 06:18:16.431697 | controller | File "/tmp/pip-build-env-_mvl8qsh/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 317, in run_setup 2026-02-09 06:18:16.431710 | controller | exec(code, locals()) 2026-02-09 06:18:16.431714 | controller | File "<string>", line 1, in <module> 2026-02-09 06:18:16.431727 | controller | File "/tmp/pip-install-2pd_mk_v/xstatic-angular-schema-form_a23b90a319e14f1fb57c9d4525797f23/xstatic/__init__.py", line 1, in <module> 2026-02-09 06:18:16.431731 | controller | __import__('pkg_resources').declare_namespace(__name__) 2026-02-09 06:18:16.431735 | controller | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-02-09 06:18:16.431747 | controller | ModuleNotFoundError: No module named 'pkg_resources' 2026-02-09 06:18:16.431751 | controller | [end of output] 2026-02-09 06:18:16.431755 | controller | ---
The tricky part is that it uses pkg_resources to declare namespace packages, which can't be directly replaced by importlib.
In the past I attempted to re-implement it using namespace packages explained in the below article but didn't get it working correctly... (due to interaction with pbr, as far as I remember).
https://packaging.python.org/en/latest/guides/packaging-namespace-packages/
On 2/9/26 7:35 PM, Sean Mooney wrote:
On 09/02/2026 07:49, Michael Still wrote:
Hey all,
I've just noticed that setuptools v82.0.0 released todayish and breaks a bunch of Kolla builds (and probably other things) by removing pkg_resources. https://setuptools.pypa.io/en/stable/history.html#v82-0-0 has further details of the release.
setuptools doesn't seem to be listed in upper-constraints, perhaps because it's often provided as a distro package? for ordering reasons setuptools cant be listed in upper-constraitns historically we have used pip and setup tools to mange the creation of our virutal environemtn an dtox inherited setup tools form the envionment that it was run in most project have adapated to the pkg_resources removal as we were expecting it to happen in october last year but this has been deprecated for removal for 2+ years so we tried to get ahead of it. in many cases the replacement is to use https://docs.python.org/3/library/importlib.metadata.html and https://docs.python.org/3/library/importlib.resources.html#module-importlib.... i do not see kolla in https://codesearch.opendev.org/?q=pkg_resources&i=nope&literal=nope&files=&excludeFiles=&repos= what part of the ci broke? was it the stabel jobs? codeseach is just looking at master.
Michael