Control: clone -1 -2
Control: severity -2 normal
Control: reassign -2 git-buildpackage
Control: found -2 0.9.14
Control: fixed -2 0.8.12.2
Hi. Dear gbp maintainers:
gbp pq can fail to apply patches where the `Date:' in the patch is
mangled or broken. My test case works in stretch, but not buster:
peter green writes ("Bug#950326: dgit: can't import binutils
2.33.90.20200122-2"):
> Package: dgit
> Version: 9.9~bpo10+1
>
> When trying to import binutils 2.33.90.20200122-2 I get the following.
>
> ['dgit', 'import-dsc',
> '/build/workingrepo/pool/main/b/binutils/binutils_2.33.90.20200122-2.dsc',
> '..workingbranch']
> Dgit metadata in .dsc: NO git hash
> using existing binutils_2.33.90.20200122.orig.tar.xz
> using existing binutils_2.33.90.20200122-2.debian.tar.xz
> dpkg-source: info: extracting binutils in binutils-2.33.90.20200122
> dpkg-source: info: unpacking binutils_2.33.90.20200122.orig.tar.xz
> dpkg-source: info: unpacking binutils_2.33.90.20200122-2.debian.tar.xz
> warning: gbp pq import failed: subprocess failed with error exit status 1
> dgit: trying slow absurd-git-apply...
> gbp:error: Failed to apply
> '/build/git/b/binutils/.git/dgit/unpack/binutils-2.33.90.20200122/debian/patches/001_ld_makefile_patch.patch':
> Failed to commit tree: fatal: invalid date format: ??
> gbp:error: Couldn't apply patches
> gbp pq import failed: subprocess failed with error exit status 1
Steps to reproduce, without using dgit:
DGET_UNPACK=no dget
http://deb.debian.org/debian/pool/main/b/binutils/binutils_2.33.90.20200122-2.dsc
dpkg-source --skip-patches -x binutils_2.33.90.20200122-2.dsc
cd binutils-2.33.90.20200122/
git add -Af .
git commit -q -m import
gbp pq import
Actual results:
gbp:error: Failed to apply
'/home/ian/things/Dgit/Bugs/950326/binutils-2.33.90.20200122/debian/patches/001_ld_makefile_patch.patch':
Failed to commit tree: fatal: invalid date format: ??
Expected results: some kind of degraded operation, eg as with gbp pq
from stretch:
gbp:info: Trying to apply patches at
'8f09971b78f3a5deb13ee5b0afe7813855e2fc3a'
gbp:warning: Patch '001_ld_makefile_patch.patch' has no authorship
information, using 'Matthias Klose <[email protected]>'
gbp:warning: Patch '002_gprof_profile_arcs.patch' has no authorship
information, using 'Matthias Klose <[email protected]>'
[...]
gbp:info: 20 patches listed in 'debian/patches/series' imported on
'patch-queue/master'
The patch files in the binutils are quite badly mangled:
Author:
Description: Description: correct where ld scripts are installed
Author: Chris Chimelis <[email protected]>
Upstream status: N/A
Date: ??
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
Note the two Author lines as well as the mangled Date. stretch's gbp
seems to handle this by ignoring the metadata, or rather, treating it
as commit message.
I am hoping that gbp's design intent is for it to work on arbitrary
packages that dpkg-source accepts. If this is not the case then
please feel free to downgrade or even close this report against gbp.
Thanks,
Ian.
--
Ian Jackson <[email protected]> These opinions are my own.
If I emailed you from an address @fyvzl.net or @evade.org.uk, that is
a private address which bypasses my fierce spamfilter.