Your message dated Fri, 6 May 2011 09:18:06 +0200
with message-id <20110506071806.gb10...@rivendell.home.ouaza.com>
and subject line Re: Bug#625789: dpkg-source: --extend-diff-ignore doesn't work
as expected
has caused the Debian Bug report #625789,
regarding dpkg-source: --extend-diff-ignore doesn't work as expected
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
625789: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=625789
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: dpkg-dev
Version: 1.16.0.2
Severity: normal
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Hi,
Trying not to include .gitignore into my source package using a
debian/source/local-options file with:
extend-diff-ignore = '\.gitignore'
It doesn't work:
$ DIST=sid git-buildpackage --git-builder="git-pbuilder" --git-ignore-new
(...)
dpkg-source -i(?:^|/)\.git(attributes)?(?:$|/.*$) -I.git -b
xf86-video-glamo-0.0.0+20100630.git16af3c00
dpkg-source: info: using options from
xf86-video-glamo-0.0.0+20100630.git16af3c00/debian/source/local-options:
--extend-diff-ignore=\.gitignore
dpkg-source: warning: no source format specified in debian/source/format, see
dpkg-source(1)
dpkg-source: info: using source format `1.0'
dpkg-source: info: building xf86-video-glamo using existing
xf86-video-glamo_0.0.0+20100630.git16af3c00.orig.tar.gz
dpkg-source: info: building xf86-video-glamo in
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.diff.gz
dpkg-source: warning: the diff modifies the following upstream files:
.gitignore
dpkg-source: info: use the '3.0 (quilt)' format to have separate and
documented changes to upstream files, see dpkg-source(1)
dpkg-source: info: building xf86-video-glamo in
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.dsc
dpkg-genchanges -S
>../xf86-video-glamo_0.0.0+20100630.git16af3c00-3_source.changes
It doesn't work from the command line either:
$ rm xf86-video-glamo-0.0.0+20100630.git16af3c00/debian/source/local-options
$ dpkg-source -i'(?:^|/)\.git(attributes)?(?:$|/.*$)'
--extend-diff-ignore='\.gitignore' -I.git -b
xf86-video-glamo-0.0.0+20100630.git16af3c00/
dpkg-source: avertissement: aucun format source indiqué dans
debian/source/format, voir dpkg-source(1)
dpkg-source: info: utilisation du format source « 1.0 »
dpkg-source: info: construction de xf86-video-glamo à partir de
xf86-video-glamo_0.0.0+20100630.git16af3c00.orig.tar.gz
dpkg-source: info: construction de xf86-video-glamo dans
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.diff.gz
dpkg-source: avertissement: le fichier de différences modifie les fichiers
amont suivants :
.gitignore
dpkg-source: info: choisissez le format « 3.0 (quilt) » pour utiliser des
modifications séparées et documentées dans les sources amont, voir
dpkg-source(1)
dpkg-source: info: construction de xf86-video-glamo dans
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.dsc
But forcing everything into one diff-ignore regex does work:
$ dpkg-source -i'(?:^|/)\.git(attributes)?(?:$|/.*$)|\.gitignore' -I.git -b
xf86-video-glamo-0.0.0+20100630.git16af3c00/
dpkg-source: avertissement: aucun format source indiqué dans
debian/source/format, voir dpkg-source(1)
dpkg-source: info: utilisation du format source « 1.0 »
dpkg-source: info: construction de xf86-video-glamo à partir de
xf86-video-glamo_0.0.0+20100630.git16af3c00.orig.tar.gz
dpkg-source: info: construction de xf86-video-glamo dans
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.diff.gz
dpkg-source: info: construction de xf86-video-glamo dans
xf86-video-glamo_0.0.0+20100630.git16af3c00-3.dsc
Thank in advance for your help,
_g.
- -- System Information:
Debian Release: wheezy/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages dpkg-dev depends on:
ii base-files 6.1 Debian base system miscellaneous f
ii binutils 2.20.1-16 The GNU assembler, linker and bina
ii bzip2 1.0.5-6 high-quality block-sorting file co
ii libdpkg-perl 1.16.0.2 Dpkg perl modules
ii make 3.81-8 An utility for Directing compilati
ii patch 2.6.1-1 Apply a diff file to an original
ii xz-utils 5.0.0-2 XZ-format compression utilities
Versions of packages dpkg-dev recommends:
ii build-essential 11.5 Informational list of build-essent
ii fakeroot 1.14.5-1 Gives a fake root environment
ii gcc [c-compiler] 4:4.5.2-2 The GNU C compiler
ii gcc-3.4 [c-compiler] 3.4.6-10 The GNU C compiler
ii gcc-4.1 [c-compiler] 4.1.2-29 The GNU C compiler
ii gcc-4.3 [c-compiler] 4.3.5-5 The GNU C compiler
ii gcc-4.4 [c-compiler] 4.4.5-14 The GNU C compiler
ii gcc-4.5 [c-compiler] 4.5.2-4 The GNU C compiler
ii gnupg 1.4.11-3 GNU privacy guard - a free PGP rep
ii gpgv 1.4.11-3 GNU privacy guard - signature veri
ii libalgorithm-merge-perl 0.08-2 Perl module for three-way merge of
Versions of packages dpkg-dev suggests:
ii debian-keyring 2011.03.03 GnuPG keys of Debian Developers
- -- no debconf information
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iQEcBAEBCAAGBQJNwymVAAoJEO/obGx//s+DRxUH/1i5OFwlKWnaJZJcyOEs4BX0
og+Zvv/LfzNaYMs/qE0InlabS5kMFUTZRAhSXrQ38fqSDKx5iPLRcMWnFOfj5Kja
++hdiI6A3wlFYYzkTqpqTFAxhw8Xrih874EPw4QdwSk2AHFXAyvGUStcR8KZd2d9
hLgHiBqZ8iuIqiJKzoA0Ys7bdcjgckQrAD1/uiZqVcFbVLH/sZ4ADG/qYFzTQtsC
KqVojqcDdPxyzMgMp7bZ1+ZBw5UFN4nmnrNEsAwpRQFX9DWyEVEz0zX7/gI6fn/3
aSXHa+6iZ6YNlL6kqVbRbkzPUK4cpltfabfV1Xg4tuQJlr5fOdAL4qT4w9NG4lo=
=YZdv
-----END PGP SIGNATURE-----
--- End Message ---
--- Begin Message ---
Hi,
On Fri, 06 May 2011, pini wrote:
> The attached patch appears to solve my problem, with
> --extend-diff-ignore specified either from the command line or from a
> debian/source/[local-]options file.
Except it's not correct. See below.
What version of git-buildpackage are you using?
The problem here is more a bug of git-buildpackage than a bug of
dpkg-source. But I thought is was already fixed.
> Rationals are:
> * options from the command line should be interpreted first
> * then should come options from debian/source/options
> * and finally options from debian/source/local-options
Not at all. The command line should always override what you have
in debian/source/options. Thus they should be interpreted last.
The fact that git-buildpackage adds option to the command line for you
doesn't change anything to the general logic that the command line
should take precedence over a configuration file.
> * --extend-diff-ignore should actually extend diff-ignore instead of the
> default diff-ignore regex.
In practice since --extend-diff-ignore is put in debian/source/*, they
are interpreted early enough that diff_ignore_regex is always empty at
that point (unless you have set "diff-ignore" in debian/source/* as well).
So we deliberately change the default regex only. Then later on,
either the command-line will have -i and we will enable it,
or the source format will implicitly enable -i.
If you use -isomething, it's because you want to overwrite the entire
diff_ignore_regexp. And it's normal that --extend-diff-ignore is ignored
in that context.
However I agree that --extend-diff-ignore used after -isomething should
probably extend the previous setting (for example if you have diff-ignore in
debian/source/options and extend-diff-ignore in
debian/source/local-options). I have pushed a fix for this but this is
unrelated to your problem. :-)
For the rest, you should probably upgrade to a newer git-buildpackage
because the latest version only gives "-i -I" to dpkg-buildpackage.
Thus closing this bug.
Cheers,
--
Raphaël Hertzog ◈ Debian Developer
Follow my Debian News ▶ http://RaphaelHertzog.com (English)
▶ http://RaphaelHertzog.fr (Français)
--- End Message ---