Package: devscripts
Version: 2.12.3
Severity: wishlist

Suppose you have this version sequence:

foo 1.2.3-1 (upstream release)
foo 1.2.3-2 (Debian maintainer applies patches)
foo 1.2.4-1 (upstream applies our patches, and makes more fixes)

and now you want to get 1.2.3-2 -> 1.2.4-1 reviewed by the release team,
or read its diff yourself for QA, or whatever. The most representative diff
to use is between the patched source trees that we compile: it's distracting
for the diffstat to include a bunch of changes that were accepted upstream
moving from debian/patches/foo to upstream source changes.

(More concretely, telepathy-mission-control-5 1:5.12.1-1, 1:5.12.1-3 and
1:5.12.3-1 had this happen.)

I attach a crude version of this change.
--- /usr/bin/debdiff	2012-09-15 20:26:37.000000000 +0100
+++ /home/smcv/bin/debdiff	2012-09-20 14:13:45.248516568 +0100
@@ -108,6 +108,7 @@
 # Start by setting default values
 
 my $ignore_dirs = 1;
+my $apply_patches = 0;
 my $compare_control = 1;
 my $controlfiles = 'control';
 my $show_moved = 0;
@@ -138,6 +139,7 @@
 		       'DEBDIFF_WDIFF_SOURCE_CONTROL' => 'no',
 		       'DEBDIFF_AUTO_VER_SORT' => 'no',
 		       'DEBDIFF_UNPACK_TARBALLS' => 'yes',
+		       'DEBDIFF_APPLY_PATCHES' => 'no',
 		       );
     my %config_default = %config_vars;
 
@@ -183,6 +185,7 @@
     $show_moved = $config_vars{'DEBDIFF_SHOW_MOVED'} eq 'yes' ? 1 : 0;
     $wdiff_opt = $config_vars{'DEBDIFF_WDIFF_OPT'} =~ /^-([plt])$/ ? $1 : '';
     $show_diffstat = $config_vars{'DEBDIFF_SHOW_DIFFSTAT'} eq 'yes' ? 1 : 0;
+    $apply_patches = $config_vars{'DEBDIFF_APPLY_PATCHES'} eq 'yes' ? 1 : 0;
     $wdiff_source_control = $config_vars{'DEBDIFF_WDIFF_SOURCE_CONTROL'}
 	eq 'yes' ? 1 : 0;
     $auto_ver_sort = $config_vars{'DEBDIFF_AUTO_VER_SORT'} eq 'yes' ? 1 : 0;
@@ -269,6 +272,7 @@
 	shift;
     }
     elsif ($ARGV[0] eq '--diffstat') { $show_diffstat = 1; shift; }
+    elsif ($ARGV[0] eq '--apply-patches') { $apply_patches = 1; shift; }
     elsif ($ARGV[0] =~ /^--no-?diffstat$/) { $show_diffstat = 0; shift; }
     elsif ($ARGV[0] eq '--wdiff-source-control') { $wdiff_source_control = 1; shift; }
     elsif ($ARGV[0] =~ /^--no-?wdiff-source-control$/) { $wdiff_source_control = 0; shift; }
@@ -580,7 +584,7 @@
 	for my $i (1,2) {
 	    no strict 'refs';
 	    my @opts = ('-x');
-	    push (@opts, '--skip-patches') if $dscformats[$i] eq '3.0 (quilt)';
+	    push (@opts, '--skip-patches') if $dscformats[$i] eq '3.0 (quilt)' && ! $apply_patches;
 	    my $diri = ${"dir$i"};
 	    eval {
 		spawn(exec => ['dpkg-source', @opts, $dscs[$i]],
_______________________________________________
devscripts-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/devscripts-devel

Reply via email to