[debhelper-devel] [debhelper] 01/02: Dh_Lib: Support a virtual "beta-tester" compat level
Niels Thykier
nthykier at moszumanska.debian.org
Sat Aug 20 19:34:38 UTC 2016
This is an automated email from the git hooks/post-receive script.
nthykier pushed a commit to branch master
in repository debhelper.
commit 0278bf605f9703d9b075fa5484a3e41f2167ea09
Author: Niels Thykier <niels at thykier.net>
Date: Sun Aug 14 10:28:38 2016 +0000
Dh_Lib: Support a virtual "beta-tester" compat level
For people, who want to opt-in to beta-testing.
Signed-off-by: Niels Thykier <niels at thykier.net>
---
Debian/Debhelper/Dh_Lib.pm | 17 +++++++++++++-
debhelper.pod | 56 ++++++++++++++++++++++++++++++++++++++++++++++
debian/changelog | 5 ++++-
debian/compat | 2 +-
4 files changed, 77 insertions(+), 3 deletions(-)
diff --git a/Debian/Debhelper/Dh_Lib.pm b/Debian/Debhelper/Dh_Lib.pm
index 336f719..d1d381c 100644
--- a/Debian/Debhelper/Dh_Lib.pm
+++ b/Debian/Debhelper/Dh_Lib.pm
@@ -14,10 +14,23 @@ use constant {
# Lowest compat level that does *not* cause deprecation
# warnings
'LOWEST_NON_DEPRECATED_COMPAT_LEVEL' => 5,
+ # Highest "open-beta" compat level. Remember to notify
+ # debian-devel at l.d.o before bumping this.
+ 'BETA_TESTER_COMPAT' => 10,
# Highest compat level permitted
'MAX_COMPAT_LEVEL' => 11,
};
+my %NAMED_COMPAT_LEVELS = (
+ # The bleeding-edge compat level is deliberately not documented.
+ # You are welcome to use it, but please subscribe to the git
+ # commit mails if you do. There is no heads up on changes for
+ # bleeding-edge testers as it is mainly intended for debhelper
+ # developers.
+ 'bleeding-edge-tester' => MAX_COMPAT_LEVEL,
+ 'beta-tester' => BETA_TESTER_COMPAT,
+);
+
use Exporter qw(import);
use vars qw(@EXPORT %dh);
@EXPORT=qw(&init &doit &doit_noerror &complex_doit &verbose_print &error
@@ -423,7 +436,9 @@ sub dirname {
$c=$l;
$c =~ s/^\s*+//;
$c =~ s/\s*+$//;
- if ($c !~ m/^\d+$/) {
+ if (exists($NAMED_COMPAT_LEVELS{$c})) {
+ $c = $NAMED_COMPAT_LEVELS{$c};
+ } elsif ($c !~ m/^\d+$/) {
error("debian/compat must contain a postive number (found: \"$c\")");
}
}
diff --git a/debhelper.pod b/debhelper.pod
index 1f95082..3aa8dc7 100644
--- a/debhelper.pod
+++ b/debhelper.pod
@@ -599,6 +599,62 @@ Please remember to check/update your doc-base files.
=back
+=head2 Participating in the open beta testing of new compat levels
+
+It is possible to opt-in to the open beta testing of new compat
+levels. This is done by setting the compat level to the string
+"beta-tester".
+
+Packages using this compat level will automatically be upgraded to the
+highest compatibility level in open beta. In periods without any open
+beta versions, the compat level will be the highest stable
+compatibility level.
+
+Please consider the following before opting in:
+
+=over 4
+
+=item *
+
+The automatic upgrade in compatibility level may cause the package (or
+a feature in it) to stop functioning.
+
+=item *
+
+Compatibility levels in open beta are still subject to change. We
+will try to keep the changes to a minimal once the beta starts.
+However, there are no guarantees that the compat will not change
+during the beta.
+
+=item *
+
+We will notify you via debian-devel at lists.debian.org before we start a
+new open beta compat level. However, once the beta starts we expect
+that you keep yourself up to date on changes to debhelper.
+
+=item *
+
+The "beta-tester" compatibility version in unstable and testing will
+often be different than the one in stable-backports. Accordingly, it
+is not recommended for packages being backported regularly.
+
+=item *
+
+You can always opt-out of the beta by resetting the compatibility
+level of your package to a stable version.
+
+=back
+
+Should you still be interested in the open beta testing, please run:
+
+ % echo beta-tester > debian/compat
+
+You will also need to ensure that debian/control as:
+
+ Build-Depends: debhelper (>= 9.20160815~)
+
+To ensure that debhelper knows about the "beta-tester" compat level.
+
=head1 NOTES
=head2 Multiple binary package support
diff --git a/debian/changelog b/debian/changelog
index 1b8bc70..613a138 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,9 @@
debhelper (9.20160814+unreleased) UNRELEASED; urgency=medium
- * Nothing yet...
+ * Dh_Lib.pm: Support a new named "beta-tester" compat level.
+ If you want to participate in beta testing of new compat
+ levels, please review "man 7 debhelper" for more
+ information.
-- Niels Thykier <niels at thykier.net> Sun, 14 Aug 2016 09:30:15 +0000
diff --git a/debian/compat b/debian/compat
index b4de394..1f3ada6 100644
--- a/debian/compat
+++ b/debian/compat
@@ -1 +1 @@
-11
+bleeding-edge-tester
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debhelper/debhelper.git
More information about the debhelper-devel
mailing list