Skip to content

uv is poisoning its own cache when building on Rosetta systems #13984

@hynek

Description

@hynek

Summary

I'm pretty sure this is a new-ish problem.

So, I develop on an ARM Mac with a Rosetta system and use Python both in x86 and ARM mode.

Recently-ish, I've started to have the problem that I have to clear the cache (uv cache clean python-ldap) when recreating a project virtualenv (rm -rf .venv; uv sync), for packages that need to be compiled.

python-ldap==3.4.4 does not ship any wheels, so it has to be compiled for every architecture and every Python version, otherwise you get an opaque:

.venv/lib/python3.13/site-packages/ldap/__init__.py:34: in <module>
    import _ldap
E   ImportError: dynamic module does not define module export function (PyInit__ldap)

I guess the problem is that cached self-built wheels are shared across architectures?

Platform

Darwin 24.5.0 arm64

Version

uv 0.7.12 (dc3fd46 2025-06-06)

Python version

3.13.5

Metadata

Metadata

Assignees

No one assigned

    Labels

    externalThe problem is with another package or dependency (not uv)questionAsking for clarification or support

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions