Closed rolweber closed 2 months ago
Hi @rolweber, please note that the distutils.msvccompiler
module was deprecated 2 years ago: https://github.com/pypa/distutils/commit/c802880bfba39d3072599eef2e0f34568f93e6cd, and it has been issuing a deprecation warning since then.
After 2 years it has been removed accordingly. So probably it is worth contacting POT about that.
I'm surprised that setuptools is even looking for a Microsoft compiler on Linux x86, and even more so that it fails while looking, rather than just proceeding as if it hasn't found anything.
Setuptools does not look for it. It is probably some other module. By looking at your traces, it seems that numpy is File "/tmp/pip-build-env-0kfp4m0w/overlay/lib/python3.11/site-packages/numpy/distutils/mingw32ccompiler.py", line 28, in <module>
, and somehow POT uses numpy.
Might be related to the fact that numpy community is no longer invested in supporting the latest versions of setuptools/distutils (numpy.distutils
has been deprecated for a while too).
Thanks. POT has a dependency on the oldest numpy version that it supports... no updates will change that. 🤷 I'll be fine with the workaround.
If POT is committed to some particular versions of numpy, they might have to pin setuptools too to avoid incompatibility problems like this one for the end user.
POT already moved on to a 0.9.x series, but the package I have to install still requires the older 0.8.x. I'm hoping for the next version of that... :-)
setuptools version
setuptools==74.0.0
Python version
Python 3.11
OS
RedHat UBI 9 on x86
Additional environment information
I'm installing packages with
pip
into conda environments.Description
I have to install POT==0.8.2 from PyPI on Linux x86_64 in container image builds. A wheel gets built on the fly at installation time. This used to work earlier this week, but is failing today, after the release of
setuptools
74.0.0. Debug output shows this:I can work around the problem by constraining
setuptools
to an older version:Not sure if this is actually a problem in
setuptools
, or just with old package versions being installed while building the wheel. So feel free to close this issue if things work as designed. However, I'm surprised that setuptools is even looking for a Microsoft compiler on Linux x86, and even more so that it fails while looking, rather than just proceeding as if it hasn't found anything.Expected behavior
Building of the POT wheel should succeed.
How to Reproduce
pip install -v POT==0.8.2
on Python 3.11, for which there is no wheel on PyPI.or
pip install -v --no-binary POT POT==0.8.2
on Python versions for which there is a wheel on PyPI.Output