[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#514919: Removing support for uploads to multiple distributions



Colin Watson <cjwatson@debian.org> writes:

> However, I'm not convinced that it is correct to remove this feature
> from the *syntax*. While Ubuntu's archive maintenance software doesn't
> support it right now, several people have requested it
> (https://bugs.launchpad.net/soyuz/+bug/235064). If you're maintaining
> packages for a system that releases every six months, it turns out to be
> rather more likely in practice to be able to say that the same packages
> will work for several different releases, and less painful to maintain
> this state. .changes is a good format for interacting with Debian-format
> archives other than just Debian's, and this seems worth preserving.
>
> How about this patch instead (incorporating your fold of "frozen" into
> "testing"):

I propose going a step farther.  I think much of this footnote contains
information that doesn't belong here.  For one, it changes, and as we can
tell from the lack of bug reports against Policy about it, this isn't
where anyone looks for this information.  For another, this is the section
on the Distribution field in *.changes specifically, not on the Debian
archive structure, so discussion of, for example, the testing distribution
is really out of scope.

Here's a proposed patch that limits the footnote to only discussing the
values that go into *.changes files, removes extraneous information about
the relative risk of unstable vs. testing, and mentions the other values
commonly seen in the Distribution field for Debian packages.

I also lifted the note that the Debian archive software doesn't support
multiple distributions into the main text instead of a footnote, since it
isn't just informative information.  It has a practical effect on what
people should put into their *.changes file: if they want something to go
to both unstable and stable-proposed-updates, they need to know that
listing both in *.changes isn't going to work.  Without saying something
in the main body of the text, Policy leaves one with the impression that
Policy requires this to work.

How does this look to everyone?

diff --git a/policy.sgml b/policy.sgml
index 36f51aa..969b5c7 100644
--- a/policy.sgml
+++ b/policy.sgml
@@ -3062,69 +3062,58 @@ Package: libc6
 	    distribution(s) where this version of the package should
 	    be installed.  Valid distributions are determined by the
 	    archive maintainers.<footnote>
-		Current distribution names are:
+	      Current distribution names in the Debian archive used in
+	      <file>.changes</file> files are:
 		<taglist compact="compact">
-		  <tag><em>stable</em></tag>
-		  <item>
-		      This is the current "released" version of Debian
-		      GNU/Linux.  Once the distribution is
-		      <em>stable</em> only security fixes and other
-		      major bug fixes are allowed. When changes are
-		      made to this distribution, the release number is
-		      increased (for example: 2.2r1 becomes 2.2r2 then
-		      2.2r3, etc).
-		  </item>
-
 		  <tag><em>unstable</em></tag>
 		  <item>
-		      This distribution value refers to the
-		      <em>developmental</em> part of the Debian
-		      distribution tree. New packages, new upstream
-		      versions of packages and bug fixes go into the
-		      <em>unstable</em> directory tree. Download from
-		      this distribution at your own risk.
+		    This distribution value refers to the
+		    <em>developmental</em> part of the Debian distribution
+		    tree.  Most new packages, new upstream versions of
+		    packages and bug fixes go into the <em>unstable</em>
+		    directory tree.
 		  </item>
 
-		  <tag><em>testing</em></tag>
+		  <tag><em>experimental</em></tag>
 		  <item>
-		      This distribution value refers to the
-		      <em>testing</em> part of the Debian distribution
-		      tree.  It receives its packages from the
-		      unstable distribution after a short time lag to
-		      ensure that there are no major issues with the
-		      unstable packages.  It is less prone to breakage
-		      than unstable, but still risky.  It is not
-		      possible to upload packages directly to
-		      <em>testing</em>.
+		    The packages with this distribution value are deemed
+		    by their maintainers to be high risk.  Oftentimes they
+		    represent early beta or developmental packages from
+		    various sources that the maintainers want people to
+		    try, but are not ready to be a part of the other parts
+		    of the Debian distribution tree.
 		  </item>
 
-		  <tag><em>frozen</em></tag>
+		  <tag><em>stable-proposed-updates</em></tag>
 		  <item>
-		      From time to time, the <em>testing</em>
-		      distribution enters a state of "code-freeze" in
-		      anticipation of release as a <em>stable</em>
-		      version. During this period of testing only
-		      fixes for existing or newly-discovered bugs will
-		      be allowed.  The exact details of this stage are
-		      determined by the Release Manager.
+		    Once a distribution of Debian GNU/Linux is released,
+		    it is declared <em>stable</em> and only security fixes
+		    and other major bug fixes are allowed.  Proposed
+		    non-security updates for <em>stable</em> are uploaded
+		    using this distribution value after getting approval
+		    from the stable release managers.
 		  </item>
 
-		  <tag><em>experimental</em></tag>
+		  <tag><em>testing-proposed-updates</em></tag>
 		  <item>
-		      The packages with this distribution value are
-		      deemed by their maintainers to be high
-		      risk. Oftentimes they represent early beta or
-		      developmental packages from various sources that
-		      the maintainers want people to try, but are not
-		      ready to be a part of the other parts of the
-		      Debian distribution tree. Download at your own
-		      risk.
+		    The <em>testing</em> distribution, which cannot be
+		    uploaded to directly, normally receives its packages
+		    from the <em>unstable</em> distribution after a short
+		    time lag.  However sometimes, such as during release
+		    freezes before a new stable release or when a problem
+		    in the <em>testing</em> distribution requires fixing
+		    before the <em>unstable</em> version can migrate,
+		    direct uploads to <em>testing</em> are useful.  This
+		    distribution value is used for those exceptions.
 		  </item>
 		</taglist>
 
 		<p>
-		  You should list <em>all</em> distributions that the
-		  package should be installed into.
+		  Security fixes for the <em>stable</em> or
+		  <em>testing</em> distributions are handled via a
+		  separate upload queue and special
+		  <em>stable-security</em> and <em>testing-security<em>
+		  distribution values.
 		</p>
 
 		<p>
@@ -3132,6 +3121,9 @@ Package: libc6
 		  Reference, section "The Debian archive".
 		</p>
 	    </footnote>
+	    The Debian archive software only supports listing a single
+	    distribution.  Migration of packages to other distributions is
+	    handled outside of the upload process.
 	  </p>
 	</sect1>
 
-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>



Reply to: