aio-libs / frozenlist

`FrozenList` is a `list`-like structure that implements `collections.abc.MutableSequence` and can be made immutable.

Home Page:https://frozenlist.aio-libs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fail to install 1.1.0 (is not a supported wheel on this platform)

Derfirm opened this issue · comments

Long story short

After update from 1.0.0 -> 1.1.0 installing via pip lead to fail.

Expected behaviour

Successfull installation :)

Actual behaviour

pip install lead raise an error

Command ['/builds/infrastructure/libpy-pdms/.venv/bin/pip', 'install', '--no-deps', '-U', '/root/.cache/pypoetry/artifacts/fc/dd/83/e94eebb02df039ac08210c5b8deba35f1e8cd61eab9b949c2e3edf6202/frozenlist-1.1.0-cp38-cp38-manylinux2014_x86_64.whl'] errored with the following return code 1, and output: 
580   ERROR: frozenlist-1.1.0-cp38-cp38-manylinux2014_x86_64.whl is not a supported wheel on this platform.
581   WARNING: You are using pip version 19.2.3, however version 20.2.3 is available.
582   You should consider upgrading via the 'pip install --upgrade pip' command.

Steps to reproduce

run pip install frozenlist==1.1.0

Your environment

os: Ubuntu 18.10
python: 3.8.2
pip: 19.2.3

@asvetlov Can you shed light on this? These wheels where built by your new GH workflow.

You need to upgrade your pip version, the wheels are built against manylinux2014, and you need to use pip version 19.3 at the minimum to be able to install such wheels. When using pip 20.2.3 the wheels install just fine:

/tmp$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
/tmp$ python3.8 -V
Python 3.8.6
/tmp$ virtualenv -p python3.8 testenv
Running virtualenv with interpreter /usr/bin/python3.8
Using base prefix '/usr'
New python executable in /tmp/testenv/bin/python3.8
Also creating executable in /tmp/testenv/bin/python
Installing setuptools, pip, wheel...
done.
/tmp$ cd testenv/
/tmp/testenv$ bin/pip -V
pip 20.2.3 from /tmp/testenv/lib/python3.8/site-packages/pip (python 3.8)
/tmp/testenv$ bin/pip install --no-cache-dir frozenlist==1.1.0
Collecting frozenlist==1.1.0
  Downloading frozenlist-1.1.0-cp38-cp38-manylinux2014_x86_64.whl (201 kB)
     |████████████████████████████████| 201 kB 4.5 MB/s
Installing collected packages: frozenlist
Successfully installed frozenlist-1.1.0

See the 19.3 changelog:

  • Implement manylinux2014 platform tag support. manylinux2014 is the successor to manylinux2010. It allows carefully compiled binary wheels to be installed on compatible Linux platforms. The manylinux2014 platform tag definition can be found in PEP599. (#7102)

@mjpieters don't you think that this a backward-incompatible change for the minor release? This is 1.1 release and I expect that I can install your package in the same environment without any changes in my infrastructure. Upgrading pip seems to be an unexpected change just for a minor release of the package.

Sorry for that. I did not expect issues with the old pip.
I'm striving to keep the pip tool up-to-date as the message for the outdated version suggests.
pip itself did not declare 100% backward compatibility; there is a chance that very old pip will stop working with PyPI someday at all.