Numpy tests cannot parse version

96 Views Asked by At

After forking the Numpy repository and setting up the dev container for it, I attempted to run python runtests.py -v but it returns the following error

Building, see build.log...
Traceback (most recent call last):
  File "/workspaces/numpy/setup.py", line 47, in <module>
    raise RuntimeError(f'Cannot parse version {FULLVERSION}')
RuntimeError: Cannot parse version 0+untagged.32327.g0200e4a

I think it has something to do with the last commit being untagged, as 0200e4a matches the first part of the last commit id, but tagging the commit and checking it out did not work.

2

There are 2 best solutions below

2
LeGEC On BEST ANSWER

Reading the code on the numpy repository (in setup.py, versioneer.py and setup.cfg):

numpy expects version tags in the vX.Y.Z[suffix] format (with a leading v, and 3 dot separated numbers)

git tag v1.2.3.dev

Also worth noting: the Readme gives instructions to run the tests with:

python -c "import numpy, sys; sys.exit(numpy.test() is False)"

so if you don't need to also test the build step, you may try that.

I'm not competent enough to say if this instruction is still up to date, though.

0
Chr L On

I can get past this error by running versioneer install --vendor, as per https://github.com/python-versioneer/python-versioneer#vendored-mode. But I'm not sure if and how this will conflict with upstream NumPy changes, which you will want to sync in the fork. Unfortunately, I can't find anything about this in the NumPy GitHub wiki at first glance.