Old manylinux images have reached end of life. It's about time to drop support for them.
This section shows the adoption of newer manylinux images and how packagers are using them.
0 packages providing manylinux wheels have been released on PyPI in the analysis timeframe. Considering this low number of packages, the data set is smoothed using a sliding window algorithm. Only the latest version of a given package is taken into account in this 6-month window.
The manylinux policy graphs:
For any given package providing manylinux wheels, each wheel will have a "required" policy and an "available" policy, e.g. manylinux2014_x86_64.manylinux_2_28_x86_64
has a manylinux2014 "required" policy and a manylinux_2_28 "available" policy.
If a package is providing multiple wheels, the "required" policy is the minimum "required" policy across those wheels and the "available" is the maximum "available" policy across those wheels.
Each graph is showing 2 numbers per policy, the first one is the percentage of packages that target exactly the given policy and the second one is a cumulated sum including more recent targets, e.g. "manylinux1: 11.8% - 100.0% overall" states that 11.8% of packages have a "required" policy targeting exactly manylinux1 and 100.0% of packages have a "required" policy targeting manylinux1 or higher.
Pre-PEP600 aliases are kept explicitly as the support for PEP600 might be lacking in some tools (or tools are not being updated by consumers).
This section shows consumer readiness for a given policy.
All manylinux wheel downloads from PyPI using pip are analysed each day to compute those statistics. The data set is smoothed using a 1-month sliding window algorithm.
Before 2024-11-01, all manylinux wheel downloads were accounted for, without distinction w.r.t the level of support for those wheels.
Between 2024-11-01 & 2025-05-22, downloads using a python version not supported by the latest version of a package (based mostly on requires_python metadata) were excluded from the data set.
Starting 2025-05-22, all downloads are accounted for again and a different mechanism is used to determine if a download uses a supported wheel or not (-nsw
suffix when Both
is checked below) based on what wheels are provided by the latest version of each package.
There was an issue with the regex used to filter manylinux wheels before 2025-07-09 which explains the change in trends around this date.
Not Supported Wheel option:
Fantastic, a problem found is a problem fixed. Please create a ticket!
You can also submit a pull request.
Thanks to Drop Python, Python Wheels and Python 3 Wall of Superpowers for the concept and making their code open source.