Package: devscripts
Version: 2.24.8
Severity: normal
File: /usr/bin/debdiff
Tags: patch

Dear Maintainer,

It looks like `debdiff --apply-patches` doesn't work anymore when
comparing two .dsc with the same upstream version (same .orig tarballs).

AFAICT the regression was introduced in v2.24.2 by
https://salsa.debian.org/debian/devscripts/-/commit/c583b086f9d83c35556aee8c9d84bff6385d66e9
 .
That change avoids calling dpkg-source(1) on 3.0 (quilt) formats when
the .orig tarballs are the same, but lacks a check that --apply-patches
is not set.  Trivial patch attached.

Thanks for maintaining devscripts!

-- Package-specific info:

--- /etc/devscripts.conf ---
Empty.

--- ~/.devscripts ---
DEBSIGN_PROGRAM=/usr/bin/gpg
DEBSIGN_KEYID=7420DF86BCE15A458DCE997639278DA8109E6244
DEBUILD_LINTIAN_OPTS="-i -I --show-overrides"
DEBRELEASE_DEBS_DIR="/var/cache/pbuilder/result"
BTS_SENDMAIL_COMMAND="/usr/sbin/sendmail -f guil...@debian.org -it"
USCAN_DESTDIR="$XDG_CACHE_HOME/build-area"
DEBDIFF_SHOW_MOVED=yes
DEBDIFF_SHOW_DIFFSTAT=yes
DEBDIFF_AUTO_VER_SORT=yes

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

Kernel: Linux 6.12.5-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages devscripts depends on:
ii  dpkg-dev              1.22.11
ii  file                  1:5.45-3+b1
ii  gnupg                 2.2.45-2
ii  gpgv                  2.2.45-2
ii  libfile-dirlist-perl  0.05-3
ii  libfile-homedir-perl  1.006-2
ii  libfile-touch-perl    0.12-2
ii  libfile-which-perl    1.27-2
ii  libipc-run-perl       20231003.0-2
ii  libmoo-perl           2.005005-1
ii  libwww-perl           6.77-1
ii  patchutils            0.4.2-1
ii  perl                  5.40.0-8
ii  python3               3.12.7-1
ii  sensible-utils        0.0.24
ii  wdiff                 1.2.2-6

Versions of packages devscripts recommends:
ii  apt                         2.9.18
ii  curl                        8.11.1-1
ii  dctrl-tools                 2.24-3+b1
ii  debian-keyring              2024.09.22
ii  dput-ng [dput]              1.40
pn  equivs                      <none>
ii  libdistro-info-perl         1.12
ii  libdpkg-perl                1.22.11
ii  libencode-locale-perl       1.05-3
pn  libgit-wrapper-perl         <none>
pn  libgitlab-api-v4-perl       <none>
ii  libjson-perl                4.10000-1
ii  liblist-compare-perl        0.55-2
ii  liblwp-protocol-https-perl  6.14-1
ii  libsoap-lite-perl           1.27-3
ii  libstring-shellquote-perl   1.04-3
ii  libtry-tiny-perl            0.32-1
ii  liburi-perl                 5.30-1
ii  licensecheck                3.3.9-1
ii  lintian                     2.121.1
ii  man-db                      2.13.0-1
ii  patch                       2.7.6-7
ii  pristine-tar                1.50+nmu2
ii  python3-apt                 2.9.5
ii  python3-debian              0.1.49
ii  python3-magic               2:0.4.27-3
ii  python3-requests            2.32.3+dfsg-1
pn  python3-unidiff             <none>
ii  python3-xdg                 0.28-2
ii  strace                      6.12+ds-1
ii  unzip                       6.0-28
ii  wget                        1.24.5-2+b1
ii  xz-utils                    5.6.3-1+b1

Versions of packages devscripts suggests:
ii  adequate                     0.17.2
ii  at                           3.2.5-2.1
ii  autopkgtest                  5.42
pn  bls-standalone               <none>
ii  bsd-mailx [mailx]            8.1.2-0.20220412cvs-1
ii  build-essential              12.12
pn  check-all-the-things         <none>
pn  cvs-buildpackage             <none>
ii  debhelper                    13.22
ii  diffoscope                   284
pn  disorderfs                   <none>
pn  docker.io                    <none>
pn  dose-extra                   <none>
pn  duck                         <none>
pn  elpa-devscripts              <none>
pn  faketime                     <none>
pn  gnuplot                      <none>
pn  how-can-i-help               <none>
ii  libauthen-sasl-perl          2.1700-1
pn  libdbd-pg-perl               <none>
pn  libfile-desktopentry-perl    <none>
pn  libterm-size-perl            <none>
ii  libtimedate-perl             2.3300-2
pn  libyaml-syck-perl            <none>
ii  mmdebstrap                   1.5.4-2
ii  mutt                         2.2.13-1
ii  openssh-client [ssh-client]  1:9.9p1-3
ii  piuparts                     1.5.1
pn  postgresql-client            <none>
pn  pristine-lfs                 <none>
ii  python3-debianbts            4.1.1
pn  python3-pycurl               <none>
ii  quilt                        0.68-1
pn  ratt                         <none>
pn  reprotest                    <none>
pn  svn-buildpackage             <none>
pn  w3m                          <none>

-- no debconf information

-- 
Guilhem.
From 63e5c19737fcf33198077c2a5c4ca65d478b1982 Mon Sep 17 00:00:00 2001
From: Guilhem Moulin <guil...@debian.org>
Date: Mon, 23 Dec 2024 17:01:31 +0100
Subject: [PATCH] debdiff: Always call dpkg-source(1) when `--apply-patches` is
 set.

The .orig tarballs need to be unpacked in patch-applied mode, regardless
of the DSC format or whether the .orig tarballs are identical.

Regression from c583b086f9d83c35556aee8c9d84bff6385d66e9.

Closes: #-1
---
 scripts/debdiff.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/debdiff.pl b/scripts/debdiff.pl
index e12a0d3e..878cf354 100755
--- a/scripts/debdiff.pl
+++ b/scripts/debdiff.pl
@@ -720,7 +720,7 @@ if ($type eq 'deb') {
             push @opts, '--skip-patches';
         }
         my $diri = ${"dir$i"};
-        if ($origs[1] eq $origs[2] and $dscformats[$i] eq '3.0 (quilt)') {
+        if ($origs[1] eq $origs[2] and $dscformats[$i] eq '3.0 (quilt)' and !$apply_patches) {
             eval {
                 my $source = $origs[$i];
                 $source =~ s/\.orig\.tar\.$compression_re//;
-- 
2.45.2

Attachment: signature.asc
Description: PGP signature

Reply via email to