See here for some explanation & cross-references. In short: there’s a pretty long gap between RHEL 7 (that the manylinux2014==manylinux_2_17
is based on) and RHEL 8, which forms the basis of the next manylinux after that[1].
This got exacerbated by the death of CentOS-as-we-knew-it happening before manylinux had updated, leading to a long discussion of what the new baseline would be, implementing it, and projects generally hesitating to adopt it, not least because there’s still about 30% of overall package downloads (on non-EOL python versions!) that have a too-old glibc to move to manylinux_2_28
(though the EOL of Python 3.7 this month will substantially reduce that number).
see that link on why I’m ignoring
manylinux_2_24
here ↩︎