Closed DamienCassou closed 8 years ago
I wanted to test the master branch instead, but your makefile detects it and refuses to continue.
This surprises me. I suppose you're talking about the error about version.py
? We need the .git
folder intact to generate the proper dev version.
I released 0.9.1.
@DamienCassou Could you post the full error message you got while trying to test from master?
@untitaker here is is
Traceback (most recent call last):
File "nix_run_setup.py", line 6, in <module>
exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\\r\\n', '\\n'), __file__, 'exec'))
File "setup.py", line 56, in <module>
'remotestorage': ['requests-oauthlib']
File "/nix/store/nd1xb6fkm46in9hp78bmby488m95jd96-python3-3.4.4/lib/python3.4/distutils/core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "/nix/store/p3zjri6zip71h00vznfl4ydib9fqk4l6-python3.4m-setuptools-19.4/lib/python3.4/site-packages/setuptools-19.4-py3.4.egg/setuptools/dist.py", line 272, in __init__
File "/nix/store/nd1xb6fkm46in9hp78bmby488m95jd96-python3-3.4.4/lib/python3.4/distutils/dist.py", line 280, in __init__
self.finalize_options()
File "/nix/store/p3zjri6zip71h00vznfl4ydib9fqk4l6-python3.4m-setuptools-19.4/lib/python3.4/site-packages/setuptools-19.4-py3.4.egg/setuptools/dist.py", line 327, in finalize_options
File "/nix/store/hph4cxkkvn60fdd4xwjwnbsk4zvq0xr1-python3.4-setuptools_scm-1.10.1/lib/python3.4/site-packages/setuptools_scm/integration.py", line 19, in version_keyword
dist.metadata.version = get_version(**value)
File "/nix/store/hph4cxkkvn60fdd4xwjwnbsk4zvq0xr1-python3.4-setuptools_scm-1.10.1/lib/python3.4/site-packages/setuptools_scm/__init__.py", line 102, in get_version
version = _do_parse(root, parse)
File "/nix/store/hph4cxkkvn60fdd4xwjwnbsk4zvq0xr1-python3.4-setuptools_scm-1.10.1/lib/python3.4/site-packages/setuptools_scm/__init__.py", line 80, in _do_parse
"use git+https://github.com/user/proj.git#egg=proj" % root)
LookupError: setuptools-scm was unable to detect version for '/tmp/nix-build-vdirsyncer-git-0.9.0.drv-0/vdirsyncer-0.9.0-src'.
Make sure you're not using GitHub's tarballs (or similar ones), as those don't contain the necessary metadata. Use PyPI's tarballs instead.
For example, if you're using pip, instead of https://github.com/user/proj/archive/master.zip use git+https://github.com/user/proj.git#egg=proj
@DamienCassou Okay, you probably don't have the .git
folder intact. Is this worth mentioning in the packaging docs, or is building from master too obscure of a usecase?
@untitaker oh, that might be a problem of nix: I think that nix removes the .git folder for reproducibility reasons. I would not bother documenting it: your documentation already recommends using pypi tarballs instead.
@DamienCassou I don't really understand Nix' reasoning behind deleting the .git folder (since there's nothing non-deterministic in building from a commit hash?)
I opened https://github.com/pypa/setuptools_scm/pull/82 to improve setuptools-scm's error message.
I forgot the reason for removing the .git
folder, I guess some files in .git
and/or timestamps are non deterministic.
In this case, I think Nix just downloaded the github tarball which doesn't contain the .git
folder if I'm correct.
Closing this as there's nothing left to be done.
Just to let you know: nix now runs tests for vdirsyncer automatically. Thank you for all your help and documentation.
yay!
you're welcome, and thanks for packaging.
Hi,
after the changes you have made in #354, could you please release a new version on pypi (even tagged
alpha
if you want) that packagers can test? I wanted to test the master branch instead, but your makefile detects it and refuses to continue.Thanks