Description
Duplicate uploads also fail.
I think that is OK though?
We have at least one build on main per day most days and I am not sure it is worth the logic to not get rejected on the days we do not (or on days when someone has pushed the button to run it early).
If no one minds I don't mind throwing in some additional logic to check just before the upload stage. This is pretty easy with pip index versions
and some sed
$ python -m pip index \
--index-url https://pypi.anaconda.org/scipy-wheels-nightly/simple \
--pre \
versions matplotlib | \
grep matplotlib | \
sed 's/.*(\(.*\))/\1/'
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
3.6.0.dev1948+gd8ede1a710
So all you'd need to do would be something like
$ LAST_NIGHTLY_VERSION="$(python -m pip index \
--index-url https://pypi.anaconda.org/scipy-wheels-nightly/simple \
--pre \
versions matplotlib | \
grep matplotlib | \
sed 's/.*(\(.*\))/\1/')"
WARNING: pip index is currently an experimental command. It may be removed/changed in a future release without prior warning.
$ echo "${LAST_NIGHTLY_VERSION}"
3.6.0.dev1948+gd8ede1a710
and then just check if that shows up as version of the wheels that just got downloaded from the GitHub Actions workflow artifact
$ [ "$(find dist -type f -iname "matplotlib-${LAST_NIGHTLY_VERSION}*.whl" | wc --lines)" -gt "0" ]
$ echo $?
0
(maybe a more elegant way to do that but that's not the worst)
I'll make an Issue from this and I'm happy to PR it, unless you would prefer to avoid touching it as much as possible.
Originally posted by @matthewfeickert in #22733 (comment)