diff --git a/pyproject.toml b/pyproject.toml index 7665d81..87aa4b6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,6 +9,13 @@ requires = [ ] build-backend = "setuptools.build_meta" +[tool.uv.extra-build-dependencies] +# On architectures without published wheels (notably s390x), cryptography +# 41.0.7 is built from sdist. Its setuptools-rust build backend imports +# pkg_resources, which setuptools >= 81 removed, so constrain the build-time +# setuptools for this package to a release that still ships pkg_resources. +cryptography = ["setuptools<81"] + [project] name = "openstack-hypervisor" version = "2026.1" diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 93547d3..231fa5f 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -830,6 +830,11 @@ parts: - rustc stage-packages: - python3-venv + # Python headers (Python.h) must live in the staged Python tree, because + # uv builds the venv from this part's staged interpreter. Needed to build + # deps from sdist on architectures without published wheels (e.g. s390x): + # cryptography, markupsafe, msgpack, psutil. + - libpython3-dev after: - openstack - apache2-webdav