Template for modules that use pbr?

Tim Landscheidt tim at tim-landscheidt.de
Wed Oct 29 22:27:57 UTC 2014


I'm trying to update git-review to 1.24.  With that version,
git-review uses pbr.  I have no deeper knowledge of Python
packaging in Fedora and only tweaked the spec file so that
it works for me
(cf. https://github.com/scfc/fedora-git-review/commit/b35c26010d67affd5da0305af2c1d9965c571fd3),
so I wanted to solicit some advice on how to do it

1. Previously, Fedora used GitHub "releases" that appear to
   be verbatim snapshots of the source repository.  But with
   this no longer works as "python setup.py build" gives:
   "error in setup command: Error parsing
   /tmp/tmp.ITVvwuYttj/git-review-1.24/setup.cfg: Exception:
   Versioning for this project requires either an sdist tar-
   ball, or access to an upstream git repository."  However,
   works fine.

   Comparing the two shows a number of additional files in
   the latter (AUTHORS, ChangeLog, git_review.egg-info,
   PKG-INFO).  Am I correct to assume that this is a problem
   upstream, i. e. that the tarballs should not have been
   published in this state, and/or is there a way to work
   around that in the spec file?

2. By default, pbr seems to pull any dependencies from the
   suggests that this can and should be avoided by setting
   SKIP_PIP_INSTALL=1.  Is there a template for how to do
   that properly, i. e. in a macro or just prepending to
   %{__python}, etc.?

3. Testing with Koji
   (cf. http://koji.fedoraproject.org/koji/taskinfo?taskID=7977881),
   the build log
   (cf. https://kojipkgs.fedoraproject.org//work/tasks/7881/7977881/build.log)
   starts with:

   | Mock Version: 1.1.41
   | Mock Version: 1.1.41
   | ENTER do(['bash', '--login', '-c', 'rpmbuild -bs --target noarch --nodeps builddir/build/SPECS/git-review.spec'], False, '/var/lib/mock/f19-build-2538894-429281/root/', None, 86400, True, False, 1000, 425, None, False, {'LANG': 'en_US.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOSTNAME': 'mock', 'PROMPT_COMMAND': 'echo -n "<mock-chroot>"', 'HOME': '/builddir', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin'}, logger=<mockbuild.trace_decorator.getLog object at 0x1725dd0>)
   | Executing command: ['bash', '--login', '-c', 'rpmbuild -bs --target noarch --nodeps builddir/build/SPECS/git-review.spec'] with env {'LANG': 'en_US.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOSTNAME': 'mock', 'PROMPT_COMMAND': 'echo -n "<mock-chroot>"', 'HOME': '/builddir', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin'}
   | sh: /usr/bin/python: No such file or directory
   | sh: /usr/bin/python: No such file or directory
   | [...]

   Is that to be expected?

Of course, any other advice is also much appreciated.


More information about the python-devel mailing list