Binary package hint: devscripts
Hi,
My use case for uscan --download-version is to programatically retrieve
old versions of an upstream tarball. Currently this will give output like this:
uscan --package sugar --download-version 0.81.5 --repack --rename --download --force-download --destdir . --upstream-version 0.82.0 --watchfile debian/watch --debug
-- In debian/watch, processing watchfile line:
http://dev.laptop.org/pub/sugar/sources/sugar/sugar-(.*)\.tar\.bz2
uscan debug: requesting URL http://dev.laptop.org/pub/sugar/sources/sugar/
uscan debug: received content:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /pub/sugar/sources/sugar</title>
</head>
<body>
<h1>Index of /pub/sugar/sources/sugar</h1>
<pre><img src="/icons/blank.gif" alt="Icon "> <a href="?C=N;O=D">Name</a> <a href="?C=M;O=A">Last modified</a> <a href="?C=S;O=A">Size</a> <a href="?C=D;O=A">Description</a><hr><img src="/icons/back.gif" alt="[DIR]"> <a href="/pub/sugar/sources/">Parent Directory</a> -
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.75.15.tar.bz2">sugar-0.75.15.tar.bz2</a> 20-May-2008 11:35 510K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.0.tar.bz2">sugar-0.79.0.tar.bz2</a> 08-Feb-2008 14:01 254K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.1.tar.bz2">sugar-0.79.1.tar.bz2</a> 28-Mar-2008 14:15 257K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.2.tar.bz2">sugar-0.79.2.tar.bz2</a> 02-Apr-2008 13:38 258K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.3.tar.bz2">sugar-0.79.3.tar.bz2</a> 09-Apr-2008 16:50 310K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.4.tar.bz2">sugar-0.79.4.tar.bz2</a> 22-Apr-2008 13:02 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.5.tar.bz2">sugar-0.79.5.tar.bz2</a> 18-May-2008 14:25 310K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.1.tar.bz2">sugar-0.81.1.tar.bz2</a> 20-May-2008 13:09 241K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.2.tar.bz2">sugar-0.81.2.tar.bz2</a> 23-May-2008 17:51 241K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.3.tar.bz2">sugar-0.81.3.tar.bz2</a> 05-Jun-2008 09:32 255K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.4.tar.bz2">sugar-0.81.4.tar.bz2</a> 20-Jun-2008 12:57 260K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.5.tar.bz2">sugar-0.81.5.tar.bz2</a> 21-Jun-2008 05:11 260K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.6.tar.bz2">sugar-0.81.6.tar.bz2</a> 07-Jul-2008 16:33 288K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.7.tar.bz2">sugar-0.81.7.tar.bz2</a> 22-Jul-2008 08:48 287K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.8.tar.bz2">sugar-0.81.8.tar.bz2</a> 31-Jul-2008 15:12 295K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.0.tar.bz2">sugar-0.82.0.tar.bz2</a> 07-Aug-2008 12:00 305K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.1.tar.bz2">sugar-0.82.1.tar.bz2</a> 28-Aug-2008 10:52 307K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.2.tar.bz2">sugar-0.82.2.tar.bz2</a> 29-Aug-2008 09:27 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.3.tar.bz2">sugar-0.82.3.tar.bz2</a> 06-Sep-2008 11:50 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.4.tar.bz2">sugar-0.82.4.tar.bz2</a> 11-Sep-2008 05:35 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.5.tar.bz2">sugar-0.82.5.tar.bz2</a> 12-Sep-2008 12:24 312K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.6.tar.bz2">sugar-0.82.6.tar.bz2</a> 13-Sep-2008 14:02 314K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.7.tar.bz2">sugar-0.82.7.tar.bz2</a> 16-Sep-2008 15:20 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.8.tar.bz2">sugar-0.82.8.tar.bz2</a> 20-Sep-2008 05:57 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.9.tar.bz2">sugar-0.82.9.tar.bz2</a> 25-Sep-2008 15:09 316K
<hr></pre>
</body></html>
[End of received content]
uscan debug: matching pattern (?:(?:http://dev.laptop.org)?\/pub\/sugar\/sources\/sugar\/)?sugar-(.*)\.tar\.bz2
-- Found the following matching hrefs:
sugar-0.75.15.tar.bz2
sugar-0.79.0.tar.bz2
sugar-0.79.1.tar.bz2
sugar-0.79.2.tar.bz2
sugar-0.79.3.tar.bz2
sugar-0.79.4.tar.bz2
sugar-0.79.5.tar.bz2
sugar-0.81.1.tar.bz2
sugar-0.81.2.tar.bz2
sugar-0.81.3.tar.bz2
sugar-0.81.4.tar.bz2
sugar-0.81.5.tar.bz2
sugar-0.81.6.tar.bz2
sugar-0.81.7.tar.bz2
sugar-0.81.8.tar.bz2
sugar-0.82.0.tar.bz2
sugar-0.82.1.tar.bz2
sugar-0.82.2.tar.bz2
sugar-0.82.3.tar.bz2
sugar-0.82.4.tar.bz2
sugar-0.82.5.tar.bz2
sugar-0.82.6.tar.bz2
sugar-0.82.7.tar.bz2
sugar-0.82.8.tar.bz2
sugar-0.82.9.tar.bz2
Newest version on remote site is 0.81.5, local version is 0.82.0
=> remote site does not even have current version
refusing to download the requested version. The problem is that the "lastversion"
variable is set to what you pass for --download-version to make it download that
version, but then this code checks that against the current upstream version,
and thinks that there is nothing new to download.
My patch skips this check if --download-version is specified, as for my use case
any checks like this make no sense. It gives output like:
uscan --package sugar --download-version 0.81.5 --repack --rename --download --force-download --destdir . --upstream-version 0.82.0 --watchfile debian/watch --debug
-- In debian/watch, processing watchfile line:
http://dev.laptop.org/pub/sugar/sources/sugar/sugar-(.*)\.tar\.bz2
uscan debug: requesting URL http://dev.laptop.org/pub/sugar/sources/sugar/
uscan debug: received content:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /pub/sugar/sources/sugar</title>
</head>
<body>
<h1>Index of /pub/sugar/sources/sugar</h1>
<pre><img src="/icons/blank.gif" alt="Icon "> <a href="?C=N;O=D">Name</a> <a href="?C=M;O=A">Last modified</a> <a href="?C=S;O=A">Size</a> <a href="?C=D;O=A">Description</a><hr><img src="/icons/back.gif" alt="[DIR]"> <a href="/pub/sugar/sources/">Parent Directory</a> -
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.75.15.tar.bz2">sugar-0.75.15.tar.bz2</a> 20-May-2008 11:35 510K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.0.tar.bz2">sugar-0.79.0.tar.bz2</a> 08-Feb-2008 14:01 254K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.1.tar.bz2">sugar-0.79.1.tar.bz2</a> 28-Mar-2008 14:15 257K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.2.tar.bz2">sugar-0.79.2.tar.bz2</a> 02-Apr-2008 13:38 258K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.3.tar.bz2">sugar-0.79.3.tar.bz2</a> 09-Apr-2008 16:50 310K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.4.tar.bz2">sugar-0.79.4.tar.bz2</a> 22-Apr-2008 13:02 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.79.5.tar.bz2">sugar-0.79.5.tar.bz2</a> 18-May-2008 14:25 310K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.1.tar.bz2">sugar-0.81.1.tar.bz2</a> 20-May-2008 13:09 241K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.2.tar.bz2">sugar-0.81.2.tar.bz2</a> 23-May-2008 17:51 241K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.3.tar.bz2">sugar-0.81.3.tar.bz2</a> 05-Jun-2008 09:32 255K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.4.tar.bz2">sugar-0.81.4.tar.bz2</a> 20-Jun-2008 12:57 260K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.5.tar.bz2">sugar-0.81.5.tar.bz2</a> 21-Jun-2008 05:11 260K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.6.tar.bz2">sugar-0.81.6.tar.bz2</a> 07-Jul-2008 16:33 288K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.7.tar.bz2">sugar-0.81.7.tar.bz2</a> 22-Jul-2008 08:48 287K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.81.8.tar.bz2">sugar-0.81.8.tar.bz2</a> 31-Jul-2008 15:12 295K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.0.tar.bz2">sugar-0.82.0.tar.bz2</a> 07-Aug-2008 12:00 305K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.1.tar.bz2">sugar-0.82.1.tar.bz2</a> 28-Aug-2008 10:52 307K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.2.tar.bz2">sugar-0.82.2.tar.bz2</a> 29-Aug-2008 09:27 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.3.tar.bz2">sugar-0.82.3.tar.bz2</a> 06-Sep-2008 11:50 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.4.tar.bz2">sugar-0.82.4.tar.bz2</a> 11-Sep-2008 05:35 311K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.5.tar.bz2">sugar-0.82.5.tar.bz2</a> 12-Sep-2008 12:24 312K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.6.tar.bz2">sugar-0.82.6.tar.bz2</a> 13-Sep-2008 14:02 314K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.7.tar.bz2">sugar-0.82.7.tar.bz2</a> 16-Sep-2008 15:20 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.8.tar.bz2">sugar-0.82.8.tar.bz2</a> 20-Sep-2008 05:57 313K
<img src="/icons/unknown.gif" alt="[ ]"> <a href="sugar-0.82.9.tar.bz2">sugar-0.82.9.tar.bz2</a> 25-Sep-2008 15:09 316K
<hr></pre>
</body></html>
[End of received content]
uscan debug: matching pattern (?:(?:http://dev.laptop.org)?\/pub\/sugar\/sources\/sugar\/)?sugar-(.*)\.tar\.bz2
-- Found the following matching hrefs:
sugar-0.75.15.tar.bz2
sugar-0.79.0.tar.bz2
sugar-0.79.1.tar.bz2
sugar-0.79.2.tar.bz2
sugar-0.79.3.tar.bz2
sugar-0.79.4.tar.bz2
sugar-0.79.5.tar.bz2
sugar-0.81.1.tar.bz2
sugar-0.81.2.tar.bz2
sugar-0.81.3.tar.bz2
sugar-0.81.4.tar.bz2
sugar-0.81.5.tar.bz2
sugar-0.81.6.tar.bz2
sugar-0.81.7.tar.bz2
sugar-0.81.8.tar.bz2
sugar-0.82.0.tar.bz2
sugar-0.82.1.tar.bz2
sugar-0.82.2.tar.bz2
sugar-0.82.3.tar.bz2
sugar-0.82.4.tar.bz2
sugar-0.82.5.tar.bz2
sugar-0.82.6.tar.bz2
sugar-0.82.7.tar.bz2
sugar-0.82.8.tar.bz2
sugar-0.82.9.tar.bz2
Newest version on remote site is 0.81.5, local version is 0.82.0
=> Forcing download as requested
-- Downloading updated package sugar-0.81.5.tar.bz2
uscan debug: requesting URL http://dev.laptop.org/pub/sugar/sources/sugar/sugar-0.81.5.tar.bz2
-- Repacking from bzip2 to gzip
-- Successfully downloaded updated package sugar-0.81.5.tar.gz
and renamed it as sugar_0.81.5.orig.tar.gz
Attached is the proposed patch to fix this. Please consider it for inclusion
in to Intrepid so that bzr-builddeb, which uses this can work better in
Intrepid.
Thanks,
James
Thanks to Adam D. Barratt here is a new-improved patch.
Thanks,
James