Skip to content

Ensure that CTracer is installed on CPython 3.14 by default #1983

Closed
@manueljacob

Description

@manueljacob

When installing coverage 7.8.2 via pip on CPython 3.9 to CPython 3.13, it will by default install a wheel that includes CTracer. However, when installing on CPython 3.14, coverage-7.8.2-py3-none-any.whl will be installed. This is not optimal because it doesn’t contain CTracer although it would work on CPython 3.14.

I see two solutions:

  1. Publish wheels for CPython 3.14. Given that CPython 3.14 is now in beta, this may be justified. However, it might not be a good idea to do the same for future alpha releases (CPython 3.15 and above).
  2. Don’t publish an universal wheel. I think this will cause CTracer to be build on CPython 3.14. This is in conflict with the goal of Add py3-none-any wheel to distribution artefacts #1912. That issue said that “[publishing a py3-none-any wheel] would only affect users on niche platforms”. However, it also affects users of CPython 3.14 on mainstream platforms. Maybe there’s some solution solving both problems. (CC @freakboy3742)

A workaround is to disable wheels when installing coverage on CPython 3.14. However, that will always build from source, even when wheels including CTracer become available in the future.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions