Package: dpkg-dev
Version: 1.17.6
Severity: normal
File: /usr/bin/dpkg-source

While injecting historical Debian releases from archive.debian.org into
sources.debian.net, I've stumbled upon old source packages that can no longer
be extracted using dpkg-source -x. I believe this is unfortunate, and that
preserving the ability to extract all previously released source packages would
be nice.

I've collected the packages that can no longer be extract (without returning a
0 exit code, at least) and made them available here:

  http://people.debian.org/~zack/dpkg-source-x-regression/

A quick overview of what's in there:

- the .txt is an index of .dsc that cannot be extracted (the path mentioned in
  there is local, but can be easily mapped to the file structure of
  archive.d.o)

- the .tar contains the same content of the dir "unextractable-dsc" for easier
  download

- the dir itself is organized per-release and contains in a flat structure the
  source packages + a .log file for each of them with the captured output of
  "dpkg-source -x --no-check DSC_FILE"


The most common (and likely the only real bug) offendere is like this:

  dpkg-source: error: version number does not start with digit
  dpkg-source: info: extracting cnews in cnews-cr.g7

  (from 
http://people.debian.org/~zack/dpkg-source-x-regression/unextractable-dsc/2.1-slink/cnews_cr.g7-12.1.dsc.log)

there are currently 25 packages that cannot be extracted for that reason (I'm
still extracting lenny, but I suspect that would add 1-2 extra packages max;
I'll update my archive on people.d.o when done). This seems to be due to the
extra check introduced in (thanks Cyril Brulebois for finding it):

  
http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git;a=commitdiff;h=0cacb0c3a1d1f837c957f3917a040ace6d60f9e7

I haven't yet tried reverting the commit and redoing the extraction.


There seems to be at least two other failure causes:

- patches not applying cleanly, e.g.:

  dpkg-source: error: LC_ALL=C patch -t -F 0 -N -p1 -u -V never -g0 -b -z 
.dpkg-orig < ./rx_1.5-6.diff.gz gave error exit status 1
  can't find file to patch at input line 3

  (from 
http://people.debian.org/~zack/dpkg-source-x-regression/unextractable-dsc/2.2-potato/rx_1.5-6.dsc.log)

- corrupted .gz file (the .diff.gz, by the look ofit), e.g.:

  dpkg-source: info: applying xfaces_3.3-14.diff.gz

  gzip: stdin: unexpected end of file
  dpkg-source: error: gunzip gave error exit status 1

  (from 
http://people.debian.org/~zack/dpkg-source-x-regression/unextractable-dsc/2.2-potato/xfaces_3.3-14.dsc.log)

These might be genuine source packages bug that we let flow into old releases
--- I haven't checked yet.  But if OTOH they are due to changes in, say, gzip,
it'd be nice to have a way for dpkg-source to cope with these too, and preserve
the ability to extract ancient packages.


... and thanks a bunch for maintaining dpkg!
Cheers.

-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.12-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages dpkg-dev depends on:
ii  base-files    7.2
ii  binutils      2.24-3
ii  bzip2         1.0.6-5
ii  libdpkg-perl  1.17.6
ii  make          3.81-8.3
ii  patch         2.7.1-4
ii  xz-utils      5.1.1alpha+20120614-2

Versions of packages dpkg-dev recommends:
ii  build-essential          11.6
ii  fakeroot                 1.19-2
ii  gcc [c-compiler]         4:4.8.2-2
ii  gcc-4.6 [c-compiler]     4.6.4-5
ii  gcc-4.7 [c-compiler]     4.7.3-11
ii  gcc-4.8 [c-compiler]     4.8.2-16
ii  gnupg                    1.4.16-1.1
ii  gnupg2                   2.0.22-3
ii  gpgv                     1.4.16-1.1
ii  libalgorithm-merge-perl  0.08-2

Versions of packages dpkg-dev suggests:
ii  debian-keyring  2014.01.31

-- no debconf information


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to