Skip to content

coverage 6.1.1 musllinux wheel performance issues #1268

@reaperhulk

Description

@reaperhulk

With the release of coverage 6.1.1 coverage now ships musllinux_1_1 wheels so that users don't need to compile on musl-derived distributions. This is great! However, the cryptography project has seen a massive performance regression with these wheels in our CI.

coverage 6.1 compiled in an alpine-latest container running our test suite: 215.89s (0:03:35)
coverage 6.1.1 using the musllinux_1_1 wheel in the same container: 842.11s (0:14:02)

While the exact timings, of course, vary, the magnitude of slowdown is consistent. Locally I tested this by installing 6.1.1 with --no-binary coverage and the performance problem went away.

To Reproduce
This should be reproducible with alpine-latest (which has python 3.9 at this time) and any project with a reasonably large test suite, but you can directly reproduce it with cryptography's own runner if you'd like:

docker pull ghcr.io/pyca/cryptography-runner-alpine
docker run --rm -ti ghcr.io/pyca/cryptography-runner-alpine /bin/sh
<in the container>
git clone --depth=1 https://github.com/pyca/cryptography && cd cryptography && tox -e py39 -vvv

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingfixed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions