Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#992725: gbp:error: More than one archive specified. Try --help.

3 views
Skip to first unread message

Étienne Mollier

unread,
Aug 22, 2021, 2:40:07 PM8/22/21
to
Package: routine-update
Version: 0.0.6
Severity: important

Hi Andreas,

when working on making sure the python-biopython watch file was
appropriately fixed, I saw routine-update choke with the
following error:

$ routine-update
gbp:info: Fetching from default remote for each branch
gbp:info: Branch 'master' is already up to date.
gbp:info: Branch 'pristine-tar' is already up to date.
gbp:info: Branch 'upstream' is already up to date.
e1b391ac4e33945379bc8eb4a878fee38c797ca1
uupdate: PACKAGE = "python-biopython" is in the top of debian/changelog
uupdate: VERSION = "1.78+dfsg-5" is in the top of debian/changelog
uupdate: EPOCH = "" is epoch part of $VERSION
uupdate: SVERSION = "1.78+dfsg-5" is w/o-epoch part of $VERSION
uupdate: UVERSION = "1.78+dfsg" the upstream portion w/o-epoch of $VERSION
uupdate: ../python-biopython-1.79+dfsg directory exists.
uupdate: remove ../python-biopython-1.79+dfsg directory.
uupdate: -> Overwrite to python-biopython_1.79+dfsg-1.debian.tar.xz
[master dcb2e9f] routine-update: New upstream version
1 file changed, 3 insertions(+), 2 deletions(-)
gbp:error: More than one archive specified. Try --help.

Adding `set -x` at the top of the routine-update script, I see
that uscan_out catches an additionall line dpkg-source which
matches with subsequent filtering:

+ uscan_out='uscan info: Last orig.tar.* tarball version (from debian/changelog): 1.78+dfsg
uscan info: Last orig.tar.* tarball version (dversionmangled): 1.78
uscan info: New orig.tar.* tarball version (oversionmangled): 1.79
Successfully repacked ../python-biopython-179.tar.gz as ../python-biopython_1.79+dfsg.orig.tar.xz, deleting 2 files from it.
uscan info: New orig.tar.* tarball version (after mk-origtargz): 1.79+dfsg
dpkg-source: info: unpacking python-biopython_1.79+dfsg.orig.tar.xz'

++ echo 'uscan info: Last orig.tar.* tarball version (from debian/changelog): 1.78+dfsg
uscan info: Last orig.tar.* tarball version (dversionmangled): 1.78
uscan info: New orig.tar.* tarball version (oversionmangled): 1.79
Successfully repacked ../python-biopython-179.tar.gz as ../python-biopython_1.79+dfsg.orig.tar.xz, deleting 2 files from it.
uscan info: New orig.tar.* tarball version (after mk-origtargz): 1.79+dfsg
dpkg-source: info: unpacking python-biopython_1.79+dfsg.orig.tar.xz'

++ grep '.orig.tar.[bgx]z2*'

++ sed 's#^.* \(\.\./[^ ]*\.orig\.tar\.[bgx]z2*\).*#\1#'

Ultimately leading to a faulty tarball name which is passed as
such to `gbp import-orig`, hence the "More than one archive
specified" error:

+ tarball='../python-biopython_1.79+dfsg.orig.tar.xz
dpkg-source: info: unpacking python-biopython_1.79+dfsg.orig.tar.xz'

routine-update 0.0.6 is around for quite some time, so I believe
it is a specific combination of watch option which might trigger
this, or simply a recent update somewhere else in the tooling.
Just in case, the corresponding watch file is:

version=4

opts="\
filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%@PACKAGE@-$1.tar.gz%,\
uversionmangle=s/b/~b/;s/(\d)(\d+)/$1.$2/,\
repacksuffix=+dfsg,\
dversionmangle=s/\+dfsg//,\
repack,\
compression=xz" \
https://github.com/biopython/biopython/tags \
(?:.*?/)?biopython[v-]?(\d[\d.]*)\.tar\.gz debian uupdate

Complementing the `grep` command here over with the following
pattern might help:

grep '\.\./.*.orig.tar.[bgx]z2*'

For information,
Have a nice day, :)
Étienne.

-- System Information:
Debian Release: 11.0
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-8-amd64 (SMP w/12 CPU threads)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages routine-update depends on:
ii cme 1.032-1
ii devscripts 2.21.4
ii dpkg-dev 1.20.9
ii fakeroot 1.25.3-1.1
ii git 1:2.33.0-1
ii git-buildpackage 0.9.22
ii libconfig-model-dpkg-perl 2.148
ii lintian-brush 0.107
ii pristine-tar 1.49
ii quilt 0.66-2.1

routine-update recommends no packages.

routine-update suggests no packages.

-- no debconf information

-- debsums errors found:
debsums: changed file /usr/bin/routine-update (from routine-update package)

PS: Note the debsums error is caused by the `set -x` added on
top of the script.

Cheers, :)
--
Étienne Mollier <emol...@emlwks999.eu>
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/3, please excuse my verbosity.
signature.asc

Andreas Tille

unread,
Aug 23, 2021, 12:10:03 AM8/23/21
to
Hi Étienne,

thanks a lot for your detailed analysis. You stumbled upon a pretty
weak part of routine-update. For instance it is also not able to cope
with watch files featuring the valid but in principle superfluous
"uupdate debian". I'm currently busy with real life + DebConf
preparation (and the fact that some UDD queries are not getting up to
date results - Nilesh in CC). So if one of you could take over this
probably not very hard shell scripting exercise I'd be really happy.

... and feel free to simply push a new version of routine-update if
you solved it. ;-)

Kind regards
Andreas.
> _______________________________________________
> Debian-med-packaging mailing list
> Debian-med...@alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-packaging


--
http://fam-tille.de

Étienne Mollier

unread,
Aug 23, 2021, 4:30:03 AM8/23/21
to
Hi Andreas,

Andreas Tille, on 2021-08-23:
> Hi Étienne,
>
> thanks a lot for your detailed analysis. You stumbled upon a pretty
> weak part of routine-update. For instance it is also not able to cope
> with watch files featuring the valid but in principle superfluous
> "uupdate debian". I'm currently busy with real life + DebConf
> preparation (and the fact that some UDD queries are not getting up to
> date results - Nilesh in CC). So if one of you could take over this
> probably not very hard shell scripting exercise I'd be really happy.
>
> ... and feel free to simply push a new version of routine-update if
> you solved it. ;-)

Yup, the bug entry was mostly a way for myself, and the others,
to analyze and remember about that issue. I consider pushing
changes today; I would also like to add a flag to enable debug
output, without altering routine-update as installed on the
operating system.

Have a nice day, :)
--
Étienne Mollier <emol...@emlwks999.eu>
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/2, please excuse my verbosity.
signature.asc

Andreas Tille

unread,
Aug 23, 2021, 4:40:04 PM8/23/21
to
Hi Étienne

On Mon, Aug 23, 2021 at 09:58:02AM +0200, Étienne Mollier wrote:
>
> Yup, the bug entry was mostly a way for myself, and the others,
> to analyze and remember about that issue. I consider pushing
> changes today;

Very nice.

> I would also like to add a flag to enable debug
> output, without altering routine-update as installed on the
> operating system.

I'm absolutely happy about anything you might consider sensible.
Routine-update started as a hack but when more people are using this it
makes sense to make it more robust.

Thanks a lot for working on this

Andreas.

--
http://fam-tille.de
0 new messages