Closed stephane-caron closed 1 year ago
In a docker based on ubuntu:20.04
, I have the same problem as @stephane-caron is reporting here. Pip can just find proxsuite up to version 0.2.13, while when I change it to be ubuntu:22.04
, the output is the following:
root@a6749566c1b6:/# pip3 --version
pip 23.0.1 from /usr/local/lib/python3.10/dist-packages/pip (python 3.10)
root@a6749566c1b6:/# pip3 index versions proxsuite
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
proxsuite (0.3.4)
Available versions: 0.3.4, 0.3.3, 0.3.2, 0.3.1, 0.3.0, 0.2.16, 0.2.15, 0.2.14, 0.2.13, 0.2.12, 0.2.11, 0.2.10, 0.2.9, 0.2.8, 0.2.7, 0.2.6, 0.2.5, 0.2.4, 0.2.2, 0.2.1, 0.2.0, 0.1.2, 0.1.1, 0.1.0, 0.0.1, 0.0.0
root@a6749566c1b6:/#
@nim65s do you have any idea why ?
For 0.3.4 and linux, I can only see manylinux_2_35, which means that only linux distributions with a glibc >= 2.35 will be able to install those: https://pypi.org/project/proxsuite/#files
For eigenpy, we have manylinux_2_17: https://pypi.org/project/proxsuite/#files, which is compatible with way more distributions (ref. https://github.com/stack-of-tasks/pinocchio/issues/1819)
Okay, I see.. since we started to distribute proxsuite wheels we always have had manylinux_2_24_x86_64
, see here. So maybe something changed under the hood, I will investigate it further.
For proxsuite v.0.2.13
the generated wheels where compatible with manylinux_2_31, while the version v.0.2.14
has wheels compatible with manylinux_2_35. That explains, why we can only have until v0.2.13
currently for ubuntu 20.04. The question is why did this happen, and for me by looking at the changelog v0.2.13...v0.2.14 this does not become clear. We did not introduce new dependencies or started to use new features from newer std libs or something similar. So maybe something changed in the manylinux_2_24_x86_64
image that we use on our workflow to generate the wheels. Also, the support has been dropped officially, maybe we should consider switching to manylinux_2_28_x86_64
.
Also when building the wheels on the manylinux2014
action image, we obtain compatibility with manylinux_2_35. It seems that we are using some symbols which are only available in glibc>=2.35
and we have to identify them.
@fabinsch could you force the use of an older version of manylinux?
Those wheels are created in a conda environment, so I guess conda provides its glibc, and it was updated from 2.31 to 2.35 just after proxsuite 0.2.13.
You are right @nim65s , I can see here that the conda env is indeed using glibc=2.35
in our latest releases.
Hi @stephane-caron, the issue is solved with #196 and v.0.2.35
. I just tried it on a docker container with ubuntu20.04 and it works at expected. Feel free to reopen the issue if you encounter again some problems.
It works, thanks @fabinsch!
I don't understand why, since 0.2.14 and ulterior are listed in https://pypi.org/pypi/proxsuite/json, but on both Ubuntu 20.04 machines I tested this on
pip
picks up version 0.2.13 as the latest one.@nim65s @fabinsch Do you have an idea what could be causing this discrepancy?