Debian Bug report logs - #440094
dpkg-source: allow specifying the source version explicitly

version graph

Package: dpkg-dev; Maintainer for dpkg-dev is Dpkg Developers <debian-dpkg@lists.debian.org>; Source for dpkg-dev is src:dpkg.

Reported by: Simon Richter <sjr@debian.org>

Date: Wed, 29 Aug 2007 17:42:01 UTC

Severity: wishlist

Found in version dpkg/1.14.5

Fixed in version dpkg/1.16.5

Done: Guillem Jover <guillem@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, sjr@debian.org, Dpkg Developers <team@dpkg.org>:
Bug#440094; Package dpkg-dev. Full text and rfc822 format available.

Acknowledgement sent to Simon Richter <sjr@debian.org>:
New Bug report received and forwarded. Copy sent to sjr@debian.org, Dpkg Developers <team@dpkg.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Simon Richter <sjr@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: dpkg-dev: allow specifying the source version explicitly
Date: Wed, 29 Aug 2007 19:40:32 +0200
[Message part 1 (text/plain, inline)]
Package: dpkg-dev
Version: 1.14.5
Severity: wishlist
Tags: patch

Hi,

when backporting, the version number needs to be adapted to sort lower
than the current version, and ideally, to encode information on the
targetted distribution; however, the source version should point to the
actual source package used.

If multiple backports (for different target distributions) can be built
from the same source version, it would be preferrable to only keep one
copy of the sources, for that to work, the binary packages need to point
to an explicit source version number that cannot be deduced from the
changelog.

The attached patches add support for an environment variable
DEB_SOURCE_VERSION that specifies the version that should be encoded in
the binary package, and forbid "dpkg-source -b" to be run with this
variable set (that would be nonsensical).

   Simon

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.22-1-amd64 (SMP w/1 CPU core)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages dpkg-dev depends on:
ii  binutils              2.18~cvs20070812-1 The GNU assembler, linker and bina
ii  cpio                  2.9-3              GNU cpio -- a program to manage ar
ii  dpkg                  1.14.5             package maintenance system for Deb
ii  make                  3.81-3             The GNU version of the "make" util
ii  patch                 2.5.9-4            Apply a diff file to an original
ii  perl [perl5]          5.8.8-7            Larry Wall's Practical Extraction 
ii  perl-modules          5.8.8-7            Core Perl modules

Versions of packages dpkg-dev recommends:
ii  bzip2                         1.0.3-7    high-quality block-sorting file co
ii  gcc [c-compiler]              4:4.1.2-3  The GNU C compiler
ii  gcc-4.1 [c-compiler]          4.1.2-15   The GNU C compiler

-- no debconf information
[explicit-source-version.patch (text/plain, attachment)]
[safety-dpkg-source.patch (text/plain, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <team@dpkg.org>:
Bug#440094; Package dpkg-dev. Full text and rfc822 format available.

Acknowledgement sent to Guillem Jover <guillem@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <team@dpkg.org>. Full text and rfc822 format available.

Message #10 received at 440094@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: Simon Richter <sjr@debian.org>, 440094@bugs.debian.org
Cc: control@bugs.debian.org
Subject: Re: Bug#440094: dpkg-dev: allow specifying the source version explicitly
Date: Thu, 30 Aug 2007 05:55:19 +0300
tag 440094 - patch
thanks

Hi,

On Wed, 2007-08-29 at 19:40:32 +0200, Simon Richter wrote:
> Package: dpkg-dev
> Version: 1.14.5
> Severity: wishlist
> Tags: patch

> when backporting, the version number needs to be adapted to sort lower
> than the current version, and ideally, to encode information on the
> targetted distribution; however, the source version should point to the
> actual source package used.
> 
> If multiple backports (for different target distributions) can be built
> from the same source version, it would be preferrable to only keep one
> copy of the sources, for that to work, the binary packages need to point
> to an explicit source version number that cannot be deduced from the
> changelog.

What you describe is a binNMU but with a different suffix. Maybe we
could come up with a generic syntax for binNMU-style versions, which
could include backports and the like. Although I'm not sure this is
worth it, in most cases, you'll need to modify the source anyway, and
in the others having an additional diff.gz is not that much (that does
not take into account native packages, but there should not be that
many of those anyway).

> The attached patches add support for an environment variable
> DEB_SOURCE_VERSION that specifies the version that should be encoded in
> the binary package, and forbid "dpkg-source -b" to be run with this
> variable set (that would be nonsensical).

I don't think this is a good idea, it makes automatically building those
packages rather cumbersome, and difficult to reproduce.

Also the patch is wrong, Source-Version != source:Version, otherwise
we'd not have introduced the new variables.

regards,
guillem



Tags removed: patch Request was from Guillem Jover <guillem@debian.org> to control@bugs.debian.org. (Thu, 30 Aug 2007 02:57:03 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <team@dpkg.org>:
Bug#440094; Package dpkg-dev. Full text and rfc822 format available.

Acknowledgement sent to Simon Richter <sjr@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <team@dpkg.org>. Full text and rfc822 format available.

Message #17 received at 440094@bugs.debian.org (full text, mbox):

From: Simon Richter <sjr@debian.org>
To: 440094@bugs.debian.org
Subject: Re: Bug#440094: dpkg-dev: allow specifying the source version explicitly
Date: Fri, 31 Aug 2007 18:45:52 +0200
Hi,

Guillem Jover wrote:

> What you describe is a binNMU but with a different suffix. Maybe we
> could come up with a generic syntax for binNMU-style versions, which
> could include backports and the like.

That would be difficult. For example, for my cross-toolchain backports I 
use "~debian4.0+b1" as a suffix, with "debian" being replaced by 
"ubuntu" for Ubuntu builds etc.

In principle the only way to be sure would be to add another special 
character ("#" springs to mind), but that would be a pretty invasive thing.

> Although I'm not sure this is
> worth it, in most cases, you'll need to modify the source anyway, and
> in the others having an additional diff.gz is not that much (that does
> not take into account native packages, but there should not be that
> many of those anyway).

Well, all current toolchain packages auto-backport without any source 
changes; I'd expect a lot of packages already work fine.

[patch adding DEB_SOURCE_VERSION]

> I don't think this is a good idea, it makes automatically building those
> packages rather cumbersome, and difficult to reproduce.

For normal binNMUs, nothing changes, as the current behaviour is still 
the default. When (automatically) building a backport with a nonstandard 
version number, all that has to be done is save the version number 
before the addition of the extra changelog entry, and pass that as the 
contents of DEB_SOURCE_VERSION during the build process.

Omitting this step leaves us at the status quo, so there is no 
regression in the patch either.

> Also the patch is wrong, Source-Version != source:Version, otherwise
> we'd not have introduced the new variables.

Well, at this specific point, they are initialized to the same value, so 
I'd expect them to be much the same at least at this point in time.

   Simon



Changed Bug title to `dpkg-source: allow specifying the source version explicitly' from `dpkg-dev: allow specifying the source version explicitly'. Request was from Guillem Jover <guillem@debian.org> to control@bugs.debian.org. (Tue, 18 Nov 2008 09:25:16 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Dpkg Developers <debian-dpkg@lists.debian.org>:
Bug#440094; Package dpkg-dev. (Mon, 18 May 2009 10:36:09 GMT) Full text and rfc822 format available.

Acknowledgement sent to Raphael Hertzog <hertzog@debian.org>:
Extra info received and forwarded to list. Copy sent to Dpkg Developers <debian-dpkg@lists.debian.org>. (Mon, 18 May 2009 10:36:09 GMT) Full text and rfc822 format available.

Message #24 received at 440094@bugs.debian.org (full text, mbox):

From: Raphael Hertzog <hertzog@debian.org>
To: Guillem Jover <guillem@debian.org>
Cc: Simon Richter <sjr@debian.org>, 440094@bugs.debian.org
Subject: Re: Bug#440094: dpkg-dev: allow specifying the source version explicitly
Date: Mon, 18 May 2009 12:34:36 +0200
On Thu, 30 Aug 2007, Guillem Jover wrote:
> > If multiple backports (for different target distributions) can be built
> > from the same source version, it would be preferrable to only keep one
> > copy of the sources, for that to work, the binary packages need to point
> > to an explicit source version number that cannot be deduced from the
> > changelog.
> 
> What you describe is a binNMU but with a different suffix. Maybe we
> could come up with a generic syntax for binNMU-style versions, which
> could include backports and the like. Although I'm not sure this is

We could add a --bin-nmu option to dpkg-buildpackage that would set
an environment variable indicating that it's a bin-nmu and the various
dpkg-* tools would act accordingly. They would get the source version
from the previous changelog entry instead of the current one.

How does that sound ?

--bin-nmu would be incompatible with -S or full build, it would auto-imply
-b if nothing is specified.

Cheers,
-- 
Raphaël Hertzog

Contribuez à Debian et gagnez un cahier de l'admin Debian Lenny :
http://www.ouaza.com/wp/2009/03/02/contribuer-a-debian-gagner-un-livre/




Added tag(s) pending. Request was from Guillem Jover <guillem@debian.org> to control@bugs.debian.org. (Sat, 30 Jun 2012 04:57:09 GMT) Full text and rfc822 format available.

Message sent on to Simon Richter <sjr@debian.org>:
Bug#440094. (Sat, 30 Jun 2012 04:57:36 GMT) Full text and rfc822 format available.

Message #29 received at 440094-submitter@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: 440094-submitter@bugs.debian.org
Subject: Bug#440094 marked as pending
Date: Sat, 30 Jun 2012 04:53:47 +0000
tag 440094 pending
thanks

Hello,

Bug #440094 reported by you has been fixed in the Git repository. You can
see the changelog below, and you can check the diff of the fix at:

    http://git.debian.org/?p=dpkg/dpkg.git;a=commitdiff;h=094d3a7

---
commit 094d3a7e61e6fc1f5634d880957d18ed70954a60
Author: Guillem Jover <guillem@debian.org>
Date:   Wed Jun 13 07:52:20 2012 +0200

    Add support for binary-only key-value option in changelogs
    
    This allows to mark changelog entries as being for a binary-only upload,
    which implies there cannot be any source produced, and the binary
    version is going to be different to the source version.
    
    As such the version substvars will get different values, w/o needing to
    hardcode a specific syntax. Although we fallback to the old syntax just
    in case, for example to handle possible multiple consecutive binary-only
    entries w/o needing to complicate the code too much.
    
    Closes: #440094, #672723

diff --git a/debian/changelog b/debian/changelog
index 83c1bf7..206ea97 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -18,6 +18,9 @@ dpkg (1.16.5) UNRELEASED; urgency=low
   [ Guillem Jover ]
   * Add a dpkg-buildflags --status action to describe the flag settings.
     Thanks to Bernhard R. Link <brlink@debian.org>. Closes: #664058
+  * Add support for “binary-only” key-value option in changelogs, to allow
+    marking changelog entries as part of a binary only upload, having a
+    different version from the source package. Closes: #440094, #672723
 
   [ Updated dpkg translations ]
   * Swedish (Peter Krefting).




Reply sent to Guillem Jover <guillem@debian.org>:
You have taken responsibility. (Sat, 30 Jun 2012 05:21:05 GMT) Full text and rfc822 format available.

Notification sent to Simon Richter <sjr@debian.org>:
Bug acknowledged by developer. (Sat, 30 Jun 2012 05:21:05 GMT) Full text and rfc822 format available.

Message #34 received at 440094-close@bugs.debian.org (full text, mbox):

From: Guillem Jover <guillem@debian.org>
To: 440094-close@bugs.debian.org
Subject: Bug#440094: fixed in dpkg 1.16.5
Date: Sat, 30 Jun 2012 05:17:51 +0000
Source: dpkg
Source-Version: 1.16.5

We believe that the bug you reported is fixed in the latest version of
dpkg, which is due to be installed in the Debian FTP archive:

dpkg-dev_1.16.5_all.deb
  to main/d/dpkg/dpkg-dev_1.16.5_all.deb
dpkg_1.16.5.dsc
  to main/d/dpkg/dpkg_1.16.5.dsc
dpkg_1.16.5.tar.xz
  to main/d/dpkg/dpkg_1.16.5.tar.xz
dpkg_1.16.5_amd64.deb
  to main/d/dpkg/dpkg_1.16.5_amd64.deb
dselect_1.16.5_amd64.deb
  to main/d/dpkg/dselect_1.16.5_amd64.deb
libdpkg-dev_1.16.5_amd64.deb
  to main/d/dpkg/libdpkg-dev_1.16.5_amd64.deb
libdpkg-perl_1.16.5_all.deb
  to main/d/dpkg/libdpkg-perl_1.16.5_all.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 440094@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Guillem Jover <guillem@debian.org> (supplier of updated dpkg package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sat, 30 Jun 2012 04:28:51 +0200
Source: dpkg
Binary: libdpkg-dev dpkg dpkg-dev libdpkg-perl dselect
Architecture: source amd64 all
Version: 1.16.5
Distribution: unstable
Urgency: low
Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
Changed-By: Guillem Jover <guillem@debian.org>
Description: 
 dpkg       - Debian package management system
 dpkg-dev   - Debian package development tools
 dselect    - Debian package management front-end
 libdpkg-dev - Debian package management static library
 libdpkg-perl - Dpkg perl modules
Closes: 64642 440094 558095 621763 624000 627333 640676 643043 652970 664058 672723 673190 675333 676232 677631 678933 679010
Changes: 
 dpkg (1.16.5) unstable; urgency=low
 .
   [ Raphaël Hertzog ]
   * dpkg-source will now clean up after a failed application of a quilt
     patch. Closes: #652970
     And it will display a message explaining the most likely cause of
     failure (patch applying with fuzz).
   * When dpkg-source regenerates the automatic patch (with formats "2.0"
     or "3.0 (quilt)") it will keep the current patch header to avoid
     losing changes made by the maintainer.
   * Modify dpkg-source --commit to auto-whitelist modified binary files.
     That way the same command can be used whatever kind of upstream files
     has been modified.
   * dpkg-source now supports a new option --no-unapply-patches to force
     patches to be kept applied after build (used by formats "2.0" and "3.0
     (quilt)"). Closes: #643043
 .
   [ Guillem Jover ]
   * Add a dpkg-buildflags --status action to describe the flag settings.
     Thanks to Bernhard R. Link <brlink@debian.org>. Closes: #664058
   * Add support for “binary-only” key-value option in changelogs, to allow
     marking changelog entries as part of a binary only upload, having a
     different version from the source package. Closes: #440094, #672723
   * Minimize source architecture list on «dpkg-source -b» by removing
     architectures already covered by architecture wildcards. Closes: #675333
   * Do not assume $ENV{'HOME'} is defined in Dpkg::Source::Package.
     Thanks to Niels Thykier <niels@thykier.net>. Closes: #677631
   * Document in more detail in deb(5) the supported ar archive format.
   * Document in deb-src-control(5) the “Private-” field prefix.
   * Add new start-stop-daemon --no-close option to disable closing file
     descriptors on --background. Closes: #627333, #64642
   * Switch source compression to xz.
   * Detect ar header fields truncation due to too long member names or too
     large member sizes. Closes: #678933
   * Add new dpkg-query --control-list and --control-show commands, which
     replace the now deprecated --control-path.
   * Print master and slave alternarive link names in update-alternatives
     --query and always print alternative link in --config. Closes: #679010
   * Cleanup and clarify buffer I/O error reporting. Closes: #621763
   * Avoid full stop and double newline at the end of errors and warnings.
     Thanks to Jonathan Nieder <jnieder@gmail.com>. Closes: #624000
   * Change all programs to accept -? instead of -h for help output.
   * Add support for specific arch-qualified dependencies. Closes: #676232
     Thanks to Thibaut Girka <thib@sitedethib.com>.
   * Accept “:native” arch-qualified Build-Dependencies. Closes: #558095
     Thanks to Thibaut Girka <thib@sitedethib.com>.
   * Do not use undefined values returned form deps_parse() in dpkg-shlibdeps.
     Closes: #640676
   * Add an Architecture column to «dpkg-query -l» before the Description
     column. Suggested by Jonathan Nieder <jnieder@gmail.com>. Closes: #673190
 .
   [ Updated dpkg translations ]
   * Swedish (Peter Krefting).
 .
   [ Updated dselect translations ]
   * Swedish (Peter Krefting).
 .
   [ Updated scripts translations ]
   * German (Helge Kreutzmann).
 .
   [ Updated man page translations ]
   * German (Helge Kreutzmann).
   * Swedish (Peter Krefting).
Checksums-Sha1: 
 5e256018148d50da61a19da0cbce49f65cd03169 1372 dpkg_1.16.5.dsc
 e3aaf08015bab5c40980f36514152102556b76b2 3546160 dpkg_1.16.5.tar.xz
 d826663e329d140f38ddfc4353b937cb270c6688 666932 libdpkg-dev_1.16.5_amd64.deb
 c078e1861151da90049e7ce788cb513b769e2e0f 2266848 dpkg_1.16.5_amd64.deb
 ea065b58a7aa49771a275e4e26a7603b65becadf 1100228 dselect_1.16.5_amd64.deb
 c1e214b79282fb56eaa54ad8f2a1dc2daad64eef 1142828 dpkg-dev_1.16.5_all.deb
 085f8ee024365882d641e60e209cc3bfca43bd36 852954 libdpkg-perl_1.16.5_all.deb
Checksums-Sha256: 
 3a4eec53e585abcb15c71f08331da63610150f4858793bc68ee2df006d1da8a6 1372 dpkg_1.16.5.dsc
 fcd8d846479f3f955e1f1facc4422aed6c3173b6c5acd904d9db60f24bc18e7b 3546160 dpkg_1.16.5.tar.xz
 aba88af2256caef0fdd345ba9eeacff8d2013a07b045d5b7c93162bd0893c10b 666932 libdpkg-dev_1.16.5_amd64.deb
 1a56e13f5fc11eabb5ea7d17852cb1b3b09a117b16803e5b9a64ec14b3f37a62 2266848 dpkg_1.16.5_amd64.deb
 50ac49b8115e6d19148031ecec7f976c69a084504c42b860abd1470e63b1f5d0 1100228 dselect_1.16.5_amd64.deb
 7a23dd256195eec9f1ce2297737747a27a8c6d3beba5c9e8e9ac8d8734f07f54 1142828 dpkg-dev_1.16.5_all.deb
 d77dc62deb89a923952c533b2320130d9573e8c3ebfa09fbdf80c835ca30ef65 852954 libdpkg-perl_1.16.5_all.deb
Files: 
 571bd79d38407d605f7559cf65347c01 1372 admin required dpkg_1.16.5.dsc
 c70412c8b0f3609680104585ddb4ba5c 3546160 admin required dpkg_1.16.5.tar.xz
 49221981d6f3490ddc87c8a03bbe332d 666932 libdevel optional libdpkg-dev_1.16.5_amd64.deb
 d9128c702529b095fda97b205bf03398 2266848 admin required dpkg_1.16.5_amd64.deb
 3eed99660309c9fba61b490c057deb78 1100228 admin optional dselect_1.16.5_amd64.deb
 3c7266174c297984846a6eb88ae3730f 1142828 utils optional dpkg-dev_1.16.5_all.deb
 848633279951281c6213f877251081e3 852954 perl optional libdpkg-perl_1.16.5_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAk/uhA4ACgkQuW9ciZ2SjJvLqACgvBBdkE81qC2iEsdk4lhVoilv
hd8AoI/JlSVaR2i+DU9dLBBvCWo9RvWC
=xtFu
-----END PGP SIGNATURE-----





Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Mon, 20 Aug 2012 07:29:04 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Apr 20 08:32:41 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.