Hello Robert, the version number is determined with https://github.com/pypa/setuptools_scm. Somewhere between 0.7.1 and 0.8, we have accidentally used also the JS tags for determing the next version, thus the 0.3.1 version. This should have been fixed by https://github.com/apache/arrow/commit/d64947e8c650687856bd221ea4ff15c86db0ebc1. In a post-0.8 master you should actually get 0.8.1.devX+gXXXXXXX as the version.
Uwe On Wed, Dec 27, 2017, at 4:50 AM, Robert Nishihara wrote: > If you have more insight into how pyarrow.__version__ gets computed, please > let me know! > > When recompiling pyarrow multiple times at the same commit, sometimes I see > different values for pyarrow.__version__ and sometimes it is None. And the > versions often seem way off. For example, we are currently around 0.8 or > 0.9, but the version I just got from compiling was 0.3.1.dev51+gb599b9e. > > I'd expect it to only depend on the current git hash, but it seems to > depend on other factors that I can't quite pin down. > > I think the relevant lines are > https://github.com/apache/arrow/blob/8986521255f48a2aa775921eac0175b4e7afaa16/python/setup.py#L402-L410 > . > > Those lines seem to run some variant of the command > > git describe --dirty --tags --long --match *.* --match > 'apache-arrow-[0-9]*' > > Though not quite in that form because when I run that locally I see > > fatal: --dirty is incompatible with commit-ishes > > Thanks for your help!