summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debhelper.pod63
-rw-r--r--debian/changelog7
-rwxr-xr-xdh_clean6
-rwxr-xr-xdh_installinit4
-rw-r--r--doc/PROGRAMMING4
-rw-r--r--lib/Debian/Debhelper/Dh_Getopt.pm2
-rw-r--r--lib/Debian/Debhelper/Dh_Lib.pm11
7 files changed, 57 insertions, 40 deletions
diff --git a/debhelper.pod b/debhelper.pod
index e9ba2452..e956f18c 100644
--- a/debhelper.pod
+++ b/debhelper.pod
@@ -595,15 +595,6 @@ B<dh_systemd_start> instead.
=item -
-The B<-s> (B<--same-arch>) option is removed. Please use B<-a> (B<--arch>) instead.
-
-=item -
-
-Invoking B<dh_clean -k> now causes an error instead of a deprecation
-warning.
-
-=item -
-
B<dh_installdirs> no longer creates debian/I<package> directories
unless explicitly requested (or it has to create a subdirectory in
it).
@@ -624,11 +615,6 @@ which can also see the files installed by other helpers.
=item -
-The B<--no-restart-on-upgrade> option in B<dh_installinit> has been removed.
-Please use the new name B<--no-stop-on-upgrade>
-
-=item -
-
The B<autoconf> buildsystem now passes B<--runstatedir=/run> to
F<./configure>.
@@ -693,18 +679,6 @@ retroactively from existing compat levels as well.
=item -
-There was a bug in the B<doit> (and similar) functions from
-L<Debian::Debhelper::Dh_Lib> that made them spawn a shell in one
-particular circumstance. This bug is now removed and will cause
-helpers that rely on the bug to fail with an error.
-
-In compatibility 11, there is still a detection for this case to
-provide a useful error message. This detection will be removed in
-compatibility 12, where the string will be interpreted as a literal
-command and fail with a "command not found" error.
-
-=item -
-
The B<dh_makeshlibs> helper will now exit with an error if objdump
returns a non-zero exit from analysing a given file.
@@ -732,6 +706,43 @@ This change may cause the tools to process more files than previously.
=back
+=item v12
+
+This compatibility level is still open for development; use with caution.
+
+Changes from v11 are:
+
+=over 8
+
+
+=item -
+
+The B<-s> (B<--same-arch>) option is removed. Please use B<-a> (B<--arch>) instead.
+
+=item -
+
+Invoking B<dh_clean -k> now causes an error instead of a deprecation
+warning.
+
+=item -
+
+The B<--no-restart-on-upgrade> option in B<dh_installinit> has been removed.
+Please use the new name B<--no-stop-on-upgrade>
+
+=item -
+
+There was a bug in the B<doit> (and similar) functions from
+L<Debian::Debhelper::Dh_Lib> that made them spawn a shell in one
+particular circumstance. This bug is now removed and will cause
+helpers that rely on the bug to fail with an error.
+
+In compatibility 11, there is still a detection for this case to
+provide a useful error message. This detection will be removed in
+compatibility 12, where the string will be interpreted as a literal
+command and fail with a "command not found" error.
+
+=back
+
=back
=head2 Participating in the open beta testing of new compat levels
diff --git a/debian/changelog b/debian/changelog
index 1a643631..a392250b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -15,6 +15,13 @@ debhelper (10.9.1) UNRELEASED; urgency=medium
--doc-main-package are listed in debian/control.
* dh_installexamples: Ditto.
* dh_systemd_start: Regex escape two paths used in a regex.
+ * Dh_Lib: Open compat 12.
+ * dh_clean: Defer making -k an error until compat 12.
+ * Dh_Getopt: Defer making -s an error until compat 12.
+ * dh_installinit: Defer making --no-restart-on-upgrade an error
+ until compat 12.
+ * Dh_Lib: Defer making the "shell-spawning bug" in doit an error
+ until compat 12.
[ Dmitry Shachnev ]
* qmake.pm: Add basic cross-building support. (Closes: #877357)
diff --git a/dh_clean b/dh_clean
index 8b7d4aa5..dc1ba5d6 100755
--- a/dh_clean
+++ b/dh_clean
@@ -52,7 +52,7 @@ slash. Any content in these directories will be removed as well.
This is deprecated, use L<dh_prep(1)> instead.
-The option is removed in compat 11.
+The option is removed in compat 12.
=item B<-d>, B<--dirs-only>
@@ -83,8 +83,8 @@ inhibit_log();
if ($dh{K_FLAG}) {
deprecated_functionality('dh_clean -k is deprecated; use dh_prep instead',
- 11,
- 'The -k option is not supported in compat 11; use dh_prep instead');
+ 12,
+ 'The -k option is not supported in compat 12; use dh_prep instead');
}
# Remove the debhelper stamp file
diff --git a/dh_installinit b/dh_installinit
index 02282e0d..e2fd53d9 100755
--- a/dh_installinit
+++ b/dh_installinit
@@ -120,7 +120,7 @@ the service to be restarted but be stopped during the upgrade, then please
use B<--no-restart-after-upgrade> (note the "after-upgrade").
Note that the B<--no-restart-on-upgrade> alias is deprecated and will
-be removed in compat 11. This is to avoid confusion with the
+be removed in compat 12. This is to avoid confusion with the
B<--no-restart-after-upgrade> option. The B<--no-stop-on-upgrade>
variant was introduced in debhelper 10.2 (included in Debian stretch).
@@ -191,7 +191,7 @@ init(options => {
"no-restart-on-upgrade" => sub {
$dh{R_FLAG} = 1;
deprecated_functionality("--no-restart-on-upgrade has been renamed to --no-stop-on-upgrade",
- 11);
+ 12);
},
"no-start" => \$dh{NO_START},
"R|restart-after-upgrade!" => \$dh{RESTART_AFTER_UPGRADE},
diff --git a/doc/PROGRAMMING b/doc/PROGRAMMING
index 5f3a4629..42ad1ab3 100644
--- a/doc/PROGRAMMING
+++ b/doc/PROGRAMMING
@@ -171,8 +171,8 @@ doit([$options, ]@command)
This will *not* invoke a shell, so meta characters will not have any special
meaning. Use complex_doit for that.
- NB: In compat 10 and below, there was a bug that would make doit fork a shell
- in one special case. This is deprecated and will be removed in compat 11.
+ NB: In compat 11 and below, there was a bug that would make doit fork a shell
+ in one special case. This is deprecated and will be removed in compat 12.
The detection code for this can be disabled by passing an empty hashref for
as $options. This will make doit unconditionally avoid forking a shell.
print_and_doit([$options, ]@command)
diff --git a/lib/Debian/Debhelper/Dh_Getopt.pm b/lib/Debian/Debhelper/Dh_Getopt.pm
index 8b978d98..3d0313e7 100644
--- a/lib/Debian/Debhelper/Dh_Getopt.pm
+++ b/lib/Debian/Debhelper/Dh_Getopt.pm
@@ -35,7 +35,7 @@ sub AddPackage { my($option,$value)=@_;
$dh{DOARCH}=1;
if ($option eq 's' or $option eq 'same-arch') {
deprecated_functionality('-s/--same-arch is deprecated; please use -a/--arch instead',
- 11,
+ 12,
'-s/--same-arch has been removed; please use -a/--arch instead'
);
}
diff --git a/lib/Debian/Debhelper/Dh_Lib.pm b/lib/Debian/Debhelper/Dh_Lib.pm
index 93c52068..9c5ca656 100644
--- a/lib/Debian/Debhelper/Dh_Lib.pm
+++ b/lib/Debian/Debhelper/Dh_Lib.pm
@@ -18,7 +18,7 @@ use constant {
# debian-devel@l.d.o before bumping this.
'BETA_TESTER_COMPAT' => 10,
# Highest compat level permitted
- 'MAX_COMPAT_LEVEL' => 11,
+ 'MAX_COMPAT_LEVEL' => 12,
# Magic value for xargs
'XARGS_INSERT_PARAMS_HERE' => \'<INSERT-HERE>', #'# Hi emacs.
# Magic value for debhelper tools to request "current version"
@@ -311,11 +311,10 @@ sub print_and_doit_noerror {
sub _doit {
my (@cmd) = @_;
my $options = ref($cmd[0]) ? shift(@cmd) : undef;
- # In compat <= 10, we warn, compat 11 we detect and error, in
- # compat 12 we assume people know what they are doing.
- if (not defined($options) and @cmd == 1 and compat(11) and $cmd[0] =~ m/[\s<&>|;]/) {
- deprecated_functionality('doit() + doit_*() calls will no longer spawn a shell in compat 11 for single string arguments (please use complex_doit instead)',
- 11);
+ # In compat <= 11, we warn, in compat 12 we assume people know what they are doing.
+ if (not defined($options) and @cmd == 1 and compat(12) and $cmd[0] =~ m/[\s<&>|;]/) {
+ deprecated_functionality('doit() + doit_*() calls will no longer spawn a shell in compat 12 for single string arguments (please use complex_doit instead)',
+ 12);
return 1 if $dh{NO_ACT};
return system(@cmd) == 0;
}