-
-
Notifications
You must be signed in to change notification settings - Fork 9.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TST: Nightly wheel asking for setuptools version that Actions does not have #21711
Comments
Which |
We install setuptools from pypi. Are you/ getting them some other way? |
It is supposed to be |
Hello again. I am unable to get the test env to pip install the exact setuptools versions that your pyproject.toml wants. Is there a reason why it must be that exact version? See astropy/astropy#13322 |
@pllim, other versions work, but setuptools keeps changing things in distutils that breaks numpy distutils, which is currently needed for C, C++, and Fortran. If you cannot pip install that version, something is broken. One possibility that comes up now and then is you should always use the pip module |
I commented on that issue. Something is off when using the "nightly" builds at https://pypi.anaconda.org/scipy-wheels-nightly: the workflow is building from source rather than using a pre-built wheel. Then the build from source tries to find setuptools at https://pypi.anaconda.org/scipy-wheels-nightly/simple, which of course will fail. |
Probably because wheels are missing for the latest numpy dev version, the Actions job is installing Numpy from source :
In https://pypi.anaconda.org/scipy-wheels-nightly/simple/numpy/ the wheels are present for |
Makes sense. Maybe fallout from #21706 where the wheel building failed. One theory is that the sdist build succeeded and uploaded. I will trigger a wheel upload, so in a few hours they should appear. |
Maybe we should add explicit instructions in the downstream package authors page to use
|
@lithomas1 is there a way to tie the sdist job to the success of the wheel job so an sdist will not be uploaded if the wheel build fails? |
I suppose there are two we should do to handle this in the future:
|
It's possible(by making the sdist job dependent on the wheel one), but I don't think that is a good idea. The whole point is to install from the sdist if there are no wheels available. This is useful for downstream(e.g. if we want to test on Python 3.11 for which no wheels are available, or on more exotic platforms I guess). Without the sdist, people would have to do a pip install git+... from numpy main, in those cases, which is not ideal. In the future, I'd recommend aligning the regular testing CI(make the regular CI run the full suite) with the wheels CI to prevent this from happening. I can also make the Wheel Builders report failure via an issue by modifying the action if that is desired too. |
We have two types of wheels: "nightly" ones that are uploaded to one URL, and the "official" ones that are uploaded to PyPI. I agree that the official ones should have an sdist. Here we are discussing the "nightly" ones. The point of them is to allow downstream projects to conveniently test latest NumPy HEAD. Uploading only an sdist for nightlies causes disruption to the desired CI action since it is non-trivial to correctly build NumPy from source. |
numpy/pyproject.toml
Line 5 in 368baf4
resulted in such errors in downstream jobs that grabs nightly numpy wheel
https://github.com/astropy/astropy/runs/6818500953?check_suite_focus=true (GitHub Actions ubuntu-latest, Python 3.8)
This setup has been working for a while but suddenly stopped working. I cannot tell if something changed in Actions or in the nightly wheel.
The text was updated successfully, but these errors were encountered: