Package: bzr-builddeb Version: 2.8.7 Severity: normal Howdy,
I've recently switched a package from using the pristine upstream tarball, to requiring a re-pack of the tarball. This means the version string specified in ‘debian/changelog’ needs to be parsed by ‘uscan(1)’, via the ‘debian/watch’ option “dversionmangle” <URL:http://manpages.debian.net/cgi-bin/man.cgi?sektion=1&query=uscan>. For example, the Debian version string “3.7+dfsg.2-2” is taken as the upstream version string “3.7+dfsg.2”, but this needs to be further altered via the “dversionmangle” option to give the pristine upstream version string “3.7”. But this change has caused ‘bzr builddeb --source’ to fail because it is not getting the correct version string for the pristine upstream tarball: ===== $ bzr builddeb --source --merge Building using working tree Building package in merge mode Looking for a way to retrieve the upstream tarball Using apt to look for the upstream tarball. apt could not find the needed tarball. Trying to use get-packaged-orig-source to retrieve needed tarball. make: *** No rule to make target `get-packaged-orig-source'. Stop. Trying to run get-packaged-orig-source rule failed Trying to use get-orig-source to retrieve needed tarball (deprecated). make: *** No rule to make target `get-orig-source'. Stop. Trying to run get-orig-source rule failed Using uscan to look for the upstream tarball. uscan warning: In /tmp/tmp2J8DJz no matching hrefs for version 3.7+dfsg.2 in watch line http://pypi.python.org/packages/source/c/coverage/coverage-(.+).tar.gz debian debian/repack uscan could not find the needed tarball. bzr: ERROR: Unable to find the needed upstream tarball for package python-coverage, version 3.7+dfsg.2. ===== The ‘builddeb’ command is mistakenly using “3.7+dfsg.2” as the pristine upstream version string. Whereas using ‘uscan’ directly succeeds in computing the correct upstream version string: ===== $ uscan --verbose --report -- Scanning for watchfiles in . -- Found watchfile in ./debian -- In debian/watch, processing watchfile line: opts="uversionmangle=s/(\d)([a-z]\d+)$/$1~$2/,dversionmangle=s/\+dfsg\.\d+$//" http://pypi.python.org/packages/source/c/coverage/coverage-(.+).tar.gz debian debian/repack […] Newest version on remote site is 3.7, local version is 3.7+dfsg.2 (mangled local version number 3.7) => Package is up to date -- Scan finished ===== The ‘builddeb’ command should always get the same pristine upstream version string as does ‘uscan’. -- System Information: Debian Release: jessie/sid APT prefers testing APT policy: (500, 'testing'), (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.10-3-amd64 (SMP w/4 CPU cores) Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_AU.UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages bzr-builddeb depends on: ii bzr 2.6.0-3 ii devscripts 2.13.4 ii dpkg-dev 1.16.12 ii fakeroot 1.18.4-2 ii patchutils 0.3.2-2 ii pristine-tar 1.28 ii python 2.7.5-5 ii python-apt 0.8.9.1+b1 ii python-debian 0.1.21+nmu2 ii quilt 0.60-10 Versions of packages bzr-builddeb recommends: ii libalgorithm-merge-perl 0.08-2 ii python-distro-info 0.11 ii python-launchpadlib 1.9.12-2 Versions of packages bzr-builddeb suggests: ii python-lzma 0.5.3-2+b1 -- no debconf information -- \ “Always do right. This will gratify some people, and astonish | `\ the rest.” —Mark Twain | _o__) | Ben Finney <b...@benfinney.id.au>
signature.asc
Description: Digital signature