]> git.donarmstrong.com Git - debian/debian-policy.git/blobdiff - upgrading-checklist.sgml
Release policy 3.9.7.0
[debian/debian-policy.git] / upgrading-checklist.sgml
index e603852d4e1972490cd6dc901b27a6e0ae58cca0..e4245cfc7f0efd4663a4402553ab4a734dd0ab43 100644 (file)
@@ -6,7 +6,7 @@
       <author> Bill Allombert <email/ballombe@debian.org/ </author>
       <author> Josip Rodin </author>
       <author> Julian Gilbey </author>
-      <author> Russ Allbery </author>
+      <author> Russ Allbery <email/rra@debian.org/ </author>
       <author> Manoj Srivastava <email/srivasta@debian.org/
 
 <chapt> About the checklist
@@ -34,10 +34,276 @@ picking your way through this list.
 
 <chapt> The checklist
 
-<sect> Version 3.9.2.0
+<sect id="3.9.7.0"> Version 3.9.7.0
 <p>
 
-Unreleased.
+Released February, 2016.
+
+</p><p><taglist>
+<tag>10.5</tag>
+  <item> Symbolic links must not traverse above the root directory.
+  </item>
+<tag>9.2.2</tag>
+  <item> 32bit UIDs in the range 65536-4294967293 are reserved for dynamically
+  allocated user accounts.
+  </item>
+<tag>5.1</tag>
+  <item> Empty field values in control files are only permitted in the
+  <file>debian/control</file> file of a source package.
+  </item>
+<tag>4.9</tag>
+  <item> <file>debian/rules</file>: required targets must not attempt
+  network access.
+  </item>
+<tag>12.3</tag>
+  <item> recommend to ship additional documentation for package
+  <prgn>pkg</prgn> in a separate package <prgn>pkg-doc</prgn> and install it
+  into <file>/usr/share/doc/pkg</file>.
+  </item> </taglist></p>
+
+<sect id="3.9.6.0"> Version 3.9.6.0
+<p>
+
+Released September, 2014.
+
+</p><p><taglist>
+<tag>9.1</tag>
+  <item> The FHS is relaxed to allow a subdirectory of <file>/usr/lib</file>
+  to hold a mixture of architecture-independent and architecture-dependent
+  files, though directories entirely composed of architecture-independent files
+  should be located in <file>/usr/share</file>.
+  </item>
+<tag>9.1</tag>
+  <item>The FHS requirement for <file>/usr/local/lib64</file> to exist
+  if <file>/lib64</file> or <file>/usr/lib64</file> exists is removed.
+  </item>
+<tag>9.1</tag>
+  <item> An FHS exception has been granted for multiarch include files,
+  permitting header files to instead be installed to
+  <file>/usr/include/triplet</file>.
+  </item>
+<tag>10.1</tag>
+  <item> Binaries must not be statically linked with the GNU C library,
+  see policy for exceptions.
+  </item>
+<tag>4.4</tag>
+  <item> It is clarified that signature appearing in debian/changelog should be
+  the details of the person who prepared this release of the package.
+  </item>
+<tag>11.5</tag>
+  <item> The default web document root is now <file>/var/www/html</file>
+  </item>
+<tag>virtual</tag>
+  <item><tt>java1-runtime</tt> and <tt>java2-runtime</tt> are removed,
+  <tt>javaN-runtime</tt> and <tt>javaN-runtime-headless</tt> are added
+  for all N between 5 and 9.
+  </item>
+<tag>virtual</tag>
+  <item>Added <tt>httpd-wsgi</tt> for WSGI capable HTTP servers.
+  </item>
+<tag>perl</tag>
+  <item> Perl packages should use the <tt>%Config</tt> hash to locate module
+         paths instead of hardcoding paths in <tt>@INC</tt>.
+  </item>
+<tag>perl</tag>
+  <item> Perl binary modules and any modules installed into
+         <tt>$Config{vendorarch}</tt> must depend on the relevant
+         <package>perlapi-*</package> package.
+  </item> </taglist></p>
+
+<sect id="3.9.5.0"> Version 3.9.5.0
+<p>
+
+Released October, 2013.
+
+</p><p><taglist>
+<tag>5.1</tag>
+  <item>Control data fields must not start with the hyphen character
+  (<tt>-</tt>), to avoid potential confusions when parsing clearsigned control
+  data files that were not properly unescaped.
+  </item>
+<tag>5.4, 5.6.24</tag>
+  <item><tt>Checksums-Sha1</tt> and <tt>Checksums-Sha256</tt> are now
+  mandatory in <file>.dsc</file> files.
+  </item>
+<tag>5.6.25, 5.8.1</tag>
+  <item>The <tt>DM-Upload-Allowed</tt> field is obsolete.  Permissions
+  are now granted via <em>dak-commands</em> files.
+<tag>5.6.27</tag>
+  <item>New section documenting the <tt>Package-List</tt> field in Debian
+  source control files.
+  </item>
+<tag>5.6.28</tag>
+  <item>New section documenting the <tt>Package-Type</tt> field in source
+  package control files.
+  </item>
+<tag>5.6.29</tag>
+  <item>New section documenting the <tt>Dgit</tt> field in Debian
+  source control files.
+  </item>
+<tag>9.1.1.8</tag>
+  <item>The exception to the FHS for the <file>/selinux</file> was removed.
+  </item>
+<tag>10.7.3</tag>
+  <item>Packages should remove all obsolete configuration files without
+  local changes during upgrades.  The <prgn>dpkg-maintscript-helper</prgn>
+  tool, available from the <package>dpkg</package> package since
+  <em>Wheezy</em>, can help with this.
+  </item>
+<tag>10.10</tag>
+  <item>The name of the files and directories installed by binary packages
+  must be encoded in UTF-8 and should be restricted to ASCII when possible.
+  In the system PATH, they must be restricted to ASCII.
+  </item>
+<tag>11.5.2</tag>
+  <item>Stop recommending to serve HTML documents from
+  <file>/usr/share/doc/<var>package</var></file>.
+  </item>
+<tag>12.2</tag>
+  <item>Packages distributing Info documents should use
+  <package>install-info</package>'s trigger, and do not need anymore
+  to depend on <tt>dpkg (>= 1.15.4) | install-info</tt>.
+  </item>
+<tag>debconf</tag>
+  <item>The <tt>escape</tt> capability is now documented.
+  </item>
+<tag>virtual</tag>
+  <item><tt>mp3-decoder</tt> and <tt>mp3-encoder</tt> are removed.</item>
+</taglist></p>
+
+<sect id="3.9.4.0"> Version 3.9.4.0
+<p>
+
+Released August, 2012.
+
+</p><p><taglist>
+<tag>2.4</tag>
+  <item>New <em>tasks</em> archive section.
+  </item>
+<tag>4.9</tag>
+  <item><tt>build-arch</tt> and <tt>build-indep</tt> are now mandatory
+  targets in <file>debian/rules</file>.
+  </item>
+<tag>5.6.26</tag>
+  <item>New section documenting the <tt>Vcs-*</tt> fields, which are
+  already in widespread use.  Note the mechanism for specifying the Git
+  branch used for packaging in the Vcs-Git field.
+  </item>
+<tag>7.1</tag>
+  <item>The deprecated relations &lt; and &gt; now must not be used.
+  </item>
+<tag>7.8</tag>
+  <item>New <tt>Built-Using</tt> field, which must be used to document the
+  source packages for any binaries that are incorporated into this package
+  at build time.  This is used to ensure that the archive meets license
+  requirements for providing source for all binaries.
+  </item>
+<tag>8.6</tag>
+  <item>Policy for dependencies between shared libraries and other
+  packages has been largely rewritten to document the <tt>symbols</tt>
+  system and more clearly document handling of shared library ABI
+  changes.  <file>symbols</file> files are now recommended
+  over <file>shlibs</file> files in most situations.  All maintainers of
+  shared library packages should review the entirety of this section.
+  </item>
+<tag>9.1.1</tag>
+  <item>Packages must not assume the <file>/run</file> directory exists or
+  is usable without a dependency on <tt>initscripts (>= 2.88dsf-13.3)</tt>
+  until the stable release of Debian supports <file>/run</file>.
+  </item>
+<tag>9.7</tag>
+  <item>Packages including MIME configuration can now rely on triggers and
+  do not need to call update-mime.</item>
+<tag>9.11</tag>
+  <item>New section documenting general requirements for alternate init
+  systems and specific requirements for integrating with upstart.
+  </item>
+<tag>12.5</tag>
+  <item>All copyright files must be encoded in UTF-8.
+  </item>
+</taglist></p>
+
+<sect id="3.9.3.0"> Version 3.9.3.0
+<p>
+
+Released February, 2012.
+
+</p><p><taglist>
+<tag>2.4</tag>
+  <item>New archive sections <em>education</em>, <em>introspection</em>,
+  and <em>metapackages</em> added.
+  </item>
+<tag>5.6.8</tag>
+  <item>The <tt>Architecture</tt> field in <file>*.dsc</file> files may
+  now contain the value <tt>any all</tt> for source packages building both
+  architecture-independent and architecture-dependent packages.
+  </item>
+<tag>7.1</tag>
+  <item>If a dependency is restricted to particular architectures, the
+  list of architectures must be non-empty.
+  </item>
+<tag>9.1.1</tag>
+  <item><file>/run</file> is allowed as an exception to the FHS and
+  replaces <file>/var/run</file>.  <file>/run/lock</file>
+  replaces <file>/var/lock</file>.  The FHS requirements for the older
+  directories apply to these directories as well.  Backward compatibility
+  links will be maintained and packages need not switch to
+  referencing <file>/run</file> directly yet.  Files in <file>/run</file>
+  should be stored in a temporary file system.
+  </item>
+<tag>9.1.4</tag>
+  <item>New section spelling out the requirements for packages that use
+  files in <file>/run</file>, <file>/var/run</file>,
+  or <file>/var/lock</file>.  This generalizes information previously only
+  in 9.3.2.
+  </item>
+<tag>9.5</tag>
+  <item>Cron job file names must not contain <tt>.</tt> or <tt>+</tt> or
+  they will be ignored by cron.  They should replace those characters
+  with <tt>_</tt>.  If a package provides multiple cron job files in the
+  same directory, they should each start with the package name (possibly
+  modified as above), <tt>-</tt>, and then some suitable suffix.
+  </item>
+<tag>9.10</tag>
+  <item>Packages using doc-base do not need to call install-docs anymore.
+  </item>
+<tag>10.7.4</tag>
+  <item>Packages that declare the same <tt>conffile</tt> may see left-over
+  configuration files from each other even if they conflict.
+  </item>
+<tag>11.8</tag>
+  <item>The Policy rules around Motif libraries were just a special case
+  of normal rules for non-free dependencies and were largely obsolete, so
+  they have been removed.
+  </item>
+<tag>12.5</tag>
+  <item><file>debian/copyright</file> is no longer required to list the
+  Debian maintainers involved in the creation of the package (although
+  note that the requirement to list copyright information is unchanged).
+  </item>
+<tag>copyright-format</tag>
+  <item>Version 1.0 of the "Machine-readable <file>debian/copyright</file>
+  file" specification is included.
+  </item>
+<tag>mime</tag>
+  <item>This separate document has been retired and and its (short)
+  contents merged into Policy section 9.7.  There are no changes to the
+  requirements.
+  </item>
+<tag>perl</tag>
+  <item>Packages may declare an interest in the <var>perl-major-upgrade</var> 
+  trigger to be notified of major upgrades of perl.
+  </item>
+<tag>virtual</tag>
+  <item><tt>ttf-japanese-{mincho, gothic}</tt> is renamed to 
+        <tt>fonts-japanese-{mincho, gothic}</tt>.
+  </item>
+</taglist></p>
+
+<sect id="3.9.2.0"> Version 3.9.2.0
+<p>
+
+Released April, 2011.
 
 </p><p><taglist>
 <tag>*</tag>
@@ -46,52 +312,65 @@ Unreleased.
   intended.
   </item>
 <tag>3.3</tag>
-  <item>Clarify the duties of a maintainer, require that the maintainer
-  address accept mail from Debian role accounts and the BTS, and require
-  at least one human with their personal email address
-  in <tt>Uploaders</tt> if the maintainer is a shared email address.
+  <item>The maintainer address must accept mail from Debian role accounts
+  and the BTS.  At least one human must be listed with their personal
+  email address in <tt>Uploaders</tt> if the maintainer is a shared email
+  address.  The duties of a maintainer are also clearer.
+  </item>
+<tag>5</tag>
+  <item>All control fields are now classified as simple, folded, or
+  multiline, which governs whether their values must be a single line or
+  may be continued across multiple lines and whether line breaks are
+  significant.
+  </item>
+<tag>5.1</tag>
+  <item>Parsers are allowed to accept paragraph separation lines
+  containing whitespace, but control files should use completely empty
+  lines.  Ordering of paragraphs is significant.  Field names must be
+  composed of printable ASCII characters except colon and must not begin
+  with #.
   </item>
 <tag>5.6.25</tag>
-  <item>Document the <tt>DM-Upload-Allowed</tt> field.
+  <item>The <tt>DM-Upload-Allowed</tt> field is now documented.
   </item>
 <tag>6.5</tag>
-  <item>Document the system state maintainer scripts can rely upon during
-  each possible invocation.  In several less-common cases, this is
-  stricter than Policy had previously documented.  Packages with complex
-  maintainer scripts should be reviewed in light of this new
+  <item>The system state maintainer scripts can rely upon during each
+  possible invocation is now documented.  In several less-common cases,
+  this is stricter than Policy had previously documented.  Packages with
+  complex maintainer scripts should be reviewed in light of this new
   documentation.
   </item>
 <tag>7.2</tag>
-  <item>Better document the impact on system state when maintainer scripts
-  that are part of a circular dependency are run.  Circular dependencies
-  are now a should not.
+  <item>The impact on system state when maintainer scripts that are part
+  of a circular dependency are run is now documented.  Circular
+  dependencies are now a should not.
   </item>
 <tag>7.2</tag>
-  <item>Document the system state when <prgn>postinst</prgn>
-  and <prgn>prerm</prgn> scripts are run, and better document the special
-  case of dependency state for <prgn>postrm</prgn>
-  scripts.  <prgn>postrm</prgn> scripts are required to gracefully skip
+  <item>The system state when <prgn>postinst</prgn> and <prgn>prerm</prgn>
+  scripts are run is now documented, and the documentation of the special
+  case of dependency state for <prgn>postrm</prgn> scripts has been
+  improved.  <prgn>postrm</prgn> scripts are required to gracefully skip
   actions if their dependencies are not available.
   </item>
 <tag>9.1.1</tag>
   <item>GNU/Hurd systems are allowed <file>/hurd</file>
   and <file>/servers</file> directories in the root filesystem.
   </item>
-<tag>virtual</tag>
-  <item><tt>mailx</tt> added as a virtual package provided by packages
-  that install <prgn>/usr/bin/mailx</prgn> and implement at least the
-  POSIX-required interface.
-  </item>
 <tag>9.1.1</tag>
   <item>Packages installing to architecture-specific subdirectories of
-  <file>/url/lib</file> must use the value returned by
+  <file>/usr/lib</file> must use the value returned by
   <prgn>dpkg-architecture -qDEB_HOST_MULTIARCH</prgn>, not by
   <prgn>dpkg-architecture -qDEB_HOST_GNU_TYPE</prgn>; this is a path change
   on i386 architectures and a no-op for other architectures.
   </item>
+<tag>virtual</tag>
+  <item><tt>mailx</tt> is now a virtual package provided by packages that
+  install <prgn>/usr/bin/mailx</prgn> and implement at least the
+  POSIX-required interface.
+  </item>
 </taglist></p>
 
-<sect> Version 3.9.1.0
+<sect id="3.9.1.0"> Version 3.9.1.0
 <p>
 
 Released July, 2010.
@@ -163,8 +442,8 @@ Released July, 2010.
   with <prgn>trap</prgn>.
   </item>
 <tag>10.8</tag>
-  <item>Recommend <file>/etc/logrotate.d/<var>package</var></file> for
-  logrotate rules.
+  <item>Use of <file>/etc/logrotate.d/<var>package</var></file> for
+  logrotate rules is now recommended.
   </item>
 <tag>10.9</tag>
   <item>Control information files should be owned by <tt>root:root</tt>
@@ -188,7 +467,7 @@ Released July, 2010.
   </item>
 </taglist></p>
 
-<sect> Version 3.9.0.0
+<sect id="3.9.0.0"> Version 3.9.0.0
 <p>
 
 Released June, 2010.
@@ -203,9 +482,9 @@ Released June, 2010.
   particular field name.
   </item>
 <tag>5.4, 5.5, 5.6.24</tag>
-  <item>Document and recommend the <tt>Checksums-Sha1</tt>
-  and <tt>Checksums-Sha256</tt> fields in <file>*.dsc</file>
-  and <file>*.changes</file> files.
+  <item>The <tt>Checksums-Sha1</tt> and <tt>Checksums-Sha256</tt> fields
+  in <file>*.dsc</file> and <file>*.changes</file> files are now
+  documented and recommended.
   </item>
 <tag>5.5, 5.6.16</tag>
   <item>The <tt>Format</tt> field of <file>.changes</file> files is now
@@ -269,9 +548,9 @@ Released June, 2010.
   common-licenses for the time being.
   </item>
 <tag>debconf</tag>
-  <item>Add <tt>SETTITLE</tt> (which has been supported for some time).
-  Like <tt>TITLE</tt> but takes a template instead of a string to allow
-  translation.
+  <item><tt>SETTITLE</tt> is now documented (it has been supported for
+  some time).  <tt>SETTITLE</tt> is like <tt>TITLE</tt> but takes a
+  template instead of a string to allow translation.
   </item>
 <tag>perl</tag>
   <item><package>perl-base</package> now
@@ -287,7 +566,7 @@ Released June, 2010.
   </item>
 </taglist></p>
 
-<sect> Version 3.8.4.0
+<sect id="3.8.4.0"> Version 3.8.4.0
 <p>
 
 Release Jan 2010.
@@ -299,8 +578,8 @@ Release Jan 2010.
   <file>/usr/lib/triplet</file> directories.
   </item>
 <tag>10.6</tag>
-  <item>Explicitly state that packages may not contain named pipes and
-  should instead create them in postinst and remove them in prerm or postrm.
+  <item>Packages may not contain named pipes and should instead create
+  them in postinst and remove them in prerm or postrm.
   </item>
 <tag>9.1.1</tag>
   <item><file>/sys</file> and <file>/selinux</file> directories are explicitly
@@ -308,14 +587,14 @@ Release Jan 2010.
   </item>
 </taglist></p>
 
-<sect> Version 3.8.3.0
+<sect id="3.8.3.0"> Version 3.8.3.0
 <p>
 Released Aug 2009.
 
 </p><p><taglist>
 <tag>4.9</tag>
-  <item>Add DEB_*_ARCH_CPU and DEB_*_ARCH_OS variables and
-  recommend them over GNU-style variables for that information.
+  <item>DEB_*_ARCH_CPU and DEB_*_ARCH_OS variables are now documented and
+  recommended over GNU-style variables for that information.
   </item>
 <tag>5.6.8</tag>
   <item>Source package Architecture fields may contain <em/all/ in
@@ -330,19 +609,20 @@ Released Aug 2009.
   <item>The Binary field may span multiple lines.
   </item>
 <tag>10.2</tag>
-  <item>Remove the permission for shared library packages to
-  install libraries in a non-standard location and modify <file/ld.so.conf/.
-  Packages should either be installed in a standard library directory
-  or packages using them should be built with RPATH.
+  <item>Shared library packages are no longer allowed to install libraries
+  in a non-standard location and modify <file/ld.so.conf/.  Packages
+  should either be installed in a standard library directory or packages
+  using them should be built with RPATH.
   </item>
 <tag>11.8.7</tag>
-  <item>Clarify installation directories for X programs and
-  remove the requirement to pre-depend on x11-common before installing
-  into <file>/usr/include/X11</file> and <file>/usr/lib/X11</file>.
+  <item>Installation directories for X programs have been clarified.
+  Packages are no longer required to pre-depend on x11-common before
+  installing into <file>/usr/include/X11</file>
+  and <file>/usr/lib/X11</file>.
   </item>
 <tag>12.1</tag>
-  <item>Remove the requirement that all characters in a manual
-  page be representable in the legacy encoding for that language.
+  <item>Manual pages are no longer required to contain only characters
+  representable in the legacy encoding for that language.
   </item>
 <tag>12.1</tag>
   <item>Localized man pages should either be kept up-to-date with
@@ -363,7 +643,7 @@ Released Aug 2009.
   </item>
 </taglist></p>
 
-<sect> Version 3.8.2.0
+<sect id="3.8.2.0"> Version 3.8.2.0
 <p>
 
 Released Jun 2009.
@@ -403,7 +683,7 @@ Released Jun 2009.
   </item>
 </taglist></p>
 
-<sect> Version 3.8.1.0
+<sect id="3.8.1.0"> Version 3.8.1.0
 <p>
 
 Released  Mar 2009.
@@ -418,12 +698,12 @@ Released  Mar 2009.
   <item>Changelog files must be encoded in UTF-8.                
   </item>
 <tag>4.4</tag>
-  <item>Tighten some format requirements for changelog files from a should
-  to a must.                                               
+  <item>Some format requirements for changelog files are now "must"
+  instead of "should."
   </item>
 <tag>4.4.1</tag>
-  <item>Remove alternative changelog formats.  Debian only supports one
-  changelog format for the Debian Archive.                 
+  <item>Alternative changelog formats have been removed.  Debian only
+  supports one changelog format for the Debian Archive.
   </item>
 <tag>4.9.1</tag>
   <item>New nocheck option for DEB_BUILD_OPTIONS indicating any build-time
@@ -433,8 +713,8 @@ Released  Mar 2009.
   <item>All control files must be encoded in UTF-8.              
   </item>
 <tag>5.2</tag>
-  <item>debian/control allows comment lines starting with # with no
-  preceding whitespace.                                    
+  <item><file>debian/control</file> allows comment lines starting with #
+  with no preceding whitespace.
   </item>
 <tag>9.3</tag>
   <item>Init scripts ending in .sh are not handled specially.  They are not
@@ -461,7 +741,7 @@ Released  Mar 2009.
   </item>
 </taglist></p>
 
-<sect> Version 3.8.0.0
+<sect id="3.8.0.0"> Version 3.8.0.0
 <p>
 
 Released  Jun 2008.
@@ -540,7 +820,7 @@ Released  Jun 2008.
 <item>Underscore (_) is allowed in debconf template names.     
 </taglist></p>
 
-<sect> Version 3.7.3.0
+<sect id="3.7.3.0"> Version 3.7.3.0
 <p>
 
 Released  Dec 2007.
@@ -582,7 +862,7 @@ Released  Dec 2007.
   be referenced rather than quoted in debian/copyright.
 </taglist></p>
 
-<sect> Version 3.7.2.2
+<sect id="3.7.2.2"> Version 3.7.2.2
 <p>
 
 Released  Oct 2006.
@@ -592,7 +872,7 @@ Released  Oct 2006.
     should to a must)</item>   
 </taglist></p>
 
-<sect> Version 3.7.2.0
+<sect id="3.7.2.0"> Version 3.7.2.0
 <p>
 
 Released  Apr 2006.
@@ -601,7 +881,7 @@ Released  Apr 2006.
 <tag>11.5</tag> <item>Revert the cgi-lib change. </item>
 </taglist></p>
 
-<sect> Version 3.7.1.0
+<sect id="3.7.1.0"> Version 3.7.1.0
 <p>
 
 Released  Apr 2006.
@@ -621,7 +901,7 @@ Released  Apr 2006.
   they do so, they must pre-depend on <tt>x11-common (&gt;= 1:7.0.0)</tt>
 </taglist></p>
 
-<sect> Version 3.7.0.0
+<sect id="3.7.0.0"> Version 3.7.0.0
 <p>
 
 Released  Apr 2006.
@@ -662,7 +942,7 @@ Released  Apr 2006.
   is gone.
 </taglist></p>
 
-<sect> Version 3.6.2.0
+<sect id="3.6.2.0"> Version 3.6.2.0
 <p>
 
 Released  2005
@@ -682,7 +962,7 @@ Released  2005
 </item>
 </taglist></p>
 
-<sect> Version 3.6.1.0
+<sect id="3.6.1.0"> Version 3.6.1.0
 <p>
 
 Released  Aug 2003.
@@ -693,7 +973,7 @@ Released  Aug 2003.
   user prompts are now deprecated.
 </taglist></p>
 
-<sect> Version 3.6.0
+<sect id="3.6.0.0"> Version 3.6.0
 <p>
 
 Released  Jul 2003.
@@ -737,7 +1017,7 @@ Released  Jul 2003.
   target.
 </taglist></p>
 
-<sect> Version 3.5.10
+<sect id="3.5.10.0"> Version 3.5.10
 <p>
 
 Released  May 2003.
@@ -752,7 +1032,7 @@ Released  May 2003.
   Project may add 40 points for ranking in the alternatives
 </taglist></p>
 
-<sect> Version 3.5.9.0
+<sect id="3.5.9.0"> Version 3.5.9.0
 <p>
 
 Released  Mar 2003.
@@ -774,7 +1054,7 @@ Released  Mar 2003.
   (rather than <file>/usr/share/doc/package/examples</file>).
 </taglist></p>
 
-<sect> Version 3.5.8.0
+<sect id="3.5.8.0"> Version 3.5.8.0
 <p>
 
 Released  Nov 2002.
@@ -798,7 +1078,7 @@ Released  Nov 2002.
   are still a bug.
 </taglist></p>
 
-<sect> Version 3.5.7.0
+<sect id="3.5.7.0"> Version 3.5.7.0
 <p>
 
 Released  Aug 2002.
@@ -837,7 +1117,7 @@ Added the last note in 3.5.6 upgrading checklist item regarding build
 rules, please see below
 </em></p>
 
-<sect> Version 3.5.6.0
+<sect id="3.5.6.0"> Version 3.5.6.0
 <p>
 
 Released  Jul 2001.
@@ -862,7 +1142,7 @@ Released  Jul 2001.
   there is a new Build-Depend-Indep semantic.
 </taglist></p>
 
-<sect> Version 3.5.5.0
+<sect id="3.5.5.0"> Version 3.5.5.0
 <p>
 
 Released  May 2001.
@@ -916,7 +1196,7 @@ Released  May 2001.
   </taglist></item>
 </taglist></p>
 
-<sect> Version 3.5.4.0
+<sect id="3.5.4.0"> Version 3.5.4.0
 <p> Released  Apr 2001.
 
 </p><p><taglist>
@@ -924,7 +1204,6 @@ Released  May 2001.
 <item>The system-wide mail directory is now /var/mail, no longer
   /var/spool/mail.  Any packages accessing the mail spool should
   access it via /var/mail and include a suitable Depends field;
-  details in
 </item>
 <tag>11.9; perl-policy</tag>
 <item>The perl policy is now part of Debian policy
@@ -933,7 +1212,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.5.3.0
+<sect id="3.5.3.0"> Version 3.5.3.0
 <p> Released Apr 2001
 
 </p><p><taglist>
@@ -949,7 +1228,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.5.2.0
+<sect id="3.5.2.0"> Version 3.5.2.0
 
 <p> Released Feb 2001.
 
@@ -961,7 +1240,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.5.1.0
+<sect id="3.5.1.0"> Version 3.5.1.0
 
 <p> Released Feb 2001.
 
@@ -972,7 +1251,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.5.0.0
+<sect id="3.5.0.0"> Version 3.5.0.0
 
 <p> Released Jan 2001.
 
@@ -983,7 +1262,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.2.1.1
+<sect id="3.2.1.1"> Version 3.2.1.1
 
 <p> Released Jan 2001.
 
@@ -1005,7 +1284,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.2.1.0
+<sect id="3.2.1.0"> Version 3.2.1.0
 
 <p> Released Aug 00.
 
@@ -1017,7 +1296,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.2.0.0
+<sect id="3.2.0.0"> Version 3.2.0.0
 
 <p> Released Aug 00.
 
@@ -1025,7 +1304,7 @@ Released  May 2001.
 <tag>10.1</tag>
 <item>By default executables should not be built with the debugging
   option -g. Instead, it is recommended to support building the
-  package with debugging information optionally.  Details in
+  package with debugging information optionally.
 </item>
 <tag>12.8</tag>
 <item>Policy for packages where the upstream uses HTML changelog
@@ -1068,7 +1347,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.1.1.0
+<sect id="3.1.1.0"> Version 3.1.1.0
 
 <p> Released Nov 1999.
 
@@ -1079,7 +1358,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.1.0.0
+<sect id="3.1.0.0"> Version 3.1.0.0
 
 <p> Released Oct 1999.
 
@@ -1134,7 +1413,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.0.1.0
+<sect id="3.0.1.0"> Version 3.0.1.0
 
 <p> Released Jul 1999.
 
@@ -1146,7 +1425,7 @@ Released  May 2001.
 </item>
 </taglist></p>
 
-<sect> Version 3.0.0.0
+<sect id="3.0.0.0"> Version 3.0.0.0
 
 <p> Released Jun 1999.
 
@@ -1191,7 +1470,7 @@ Released  May 2001.
    Please note that section numbers below this point may not be up to date
 </em></p>
 
-<sect> Version 2.5.0.0
+<sect id="2.5.0.0"> Version 2.5.0.0
 
 <p> Released Oct 1998.
 
@@ -1230,7 +1509,7 @@ Policy Manual:
   </item>
 </list></p>
 
-<sect> Version 2.4.1.0
+<sect id="2.4.1.0"> Version 2.4.1.0
 
 <p> Released Apr 1998.
 </p>
@@ -1257,7 +1536,7 @@ Policy Manual:
 </item>
 </list></p>
 
-<sect> Version 2.4.0.0
+<sect id="2.4.0.0"> Version 2.4.0.0
 
 <p> Released Jan 1998
 
@@ -1333,7 +1612,7 @@ Policy Manual:
   </item>
 </taglist></p>
 
-<sect> Version 2.3.0.1, 2.3.0.0
+<sect id="2.3.0.0"> Version 2.3.0.1, 2.3.0.0
 
 <p> Released Sep 1997.
 
@@ -1350,7 +1629,7 @@ Policy Manual:
 <item>MUAs and MTAs have to use liblockfile</item>
 </list></p>
 
-<sect> Version 2.2.0.0
+<sect id="2.2.0.0"> Version 2.2.0.0
 
 <p> Released July 1997.
 
@@ -1377,7 +1656,7 @@ Policy Manual:
 <item>app-defaults files may not be conffiles</item>
 </list></p>
 
-<sect> Version 2.1.3.2, 2.1.3.1, 2.1.3.0
+<sect id="2.1.3.0"> Version 2.1.3.2, 2.1.3.1, 2.1.3.0
 
 <p> Released Mar 1997.
 
@@ -1395,7 +1674,7 @@ Policy Manual:
 </item>
 </list></p>
 
-<sect> Version 2.1.2.2, 2.1.2.1, 2.1.2.0
+<sect id="2.1.2.0"> Version 2.1.2.2, 2.1.2.1, 2.1.2.0
 
 <p> Released Nov 1996.
 
@@ -1403,7 +1682,7 @@ Policy Manual:
 <item>Some changes WRT shared libraries
 </list></p>
 
-<sect> Version 2.1.1.0
+<sect id="2.1.1.0"> Version 2.1.1.0
 
 <p> Released Sep 1996.
 
@@ -1416,7 +1695,7 @@ without consultation </item>
 <item>Shared libraries must be installed stripped </item>
 </list></p>
 
-<sect> Version 2.1.0.0
+<sect id="2.1.0.0"> Version 2.1.0.0
 
 <p> Released Aug 1996.