Skip to content

Cannot install debug wheels into debug CPython venv #18769

@mjansche

Description

@mjansche

Summary

Summary

Since version 0.10.0 and last verified with 0.11.2, uv refuses to install debug wheels into a venv with a debug CPython. This appears to be a regression compared with uv 0.9.30.

In slightly more detail:

  • Using uv to create a venv with a CPython debug build works.
  • Using uv to build a wheel of a native package works.
  • Installing a debug wheel built by uv into a project venv that uses a CPython debug build does NOT work.

Steps to reproduce

Preparation

Use the following tarball for a trivial native package:

native_demo-0.1.0.tar.gz

Mount or copy this into a docker container running ghcr.io/astral-sh/uv:debian.
Then inside the running container:

apt update -qq && apt install -y python3-dbg python3-dev
uv venv --python /usr/bin/python3-dbg   # Important: debug build
. .venv/bin/activate

So far so good.

Action

Expected: uv can build and install the native package.

Observed: installation fails. Details:

# uv pip install /tmp/native_demo-0.1.0.tar.gz
Using Python 3.13.5 environment at: /root/.venv
Resolved 1 package in 20ms
      Built native-demo @ file:///tmp/native_demo-0.1.0.tar.gz
  x Failed to build `native-demo @ file:///tmp/native_demo-0.1.0.tar.gz`
  `-> The built wheel `native_demo-0.1.0-cp313-cp313d-linux_x86_64.whl` is not compatible with the current Python 3.13
      on manylinux x86_64

If we dig into it, we see that the wheel build succeeds, but the install fails:

# uv build --wheel /tmp/native_demo-0.1.0.tar.gz
[snip]
Successfully built /tmp/native_demo-0.1.0-cp313-cp313d-linux_x86_64.whl

# uv pip install /tmp/native_demo-0.1.0-cp313-cp313d-linux_x86_64.whl
Using Python 3.13.5 environment at: /root/.venv
Resolved 1 package in 15ms
error: Failed to determine installation plan
  Caused by: A path dependency is incompatible with the current platform: /tmp/native_demo-0.1.0-cp313-cp313d-linux_x86_64.whl

hint: The wheel is compatible with CPython 3.13 (`cp313d`), but you're using CPython 3.13 (`cp313`)

Platform

Docker image ghcr.io/astral-sh/uv:debian running on Linux 6.8.0-94-generic x86_64 GNU/Linux

Version

0.11.2 (also reproducible with 0.10 onwards)

Python version

Important: a DEBUG build of CPython; in this case 3.13.5

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggreat writeupA wonderful example of a quality contribution 💜

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions