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 ---

Reply via email to