]> git.donarmstrong.com Git - debian/debian-policy.git/blobdiff - upgrading-checklist.sgml
Merge branch 'master' into bug477240-rra
[debian/debian-policy.git] / upgrading-checklist.sgml
index 99ad63cea2a5f3791175e7726197b48ad5784c9a..3dc378c102aef1bd31259dd41476a9675f8877a7 100644 (file)
@@ -34,14 +34,175 @@ picking your way through this list.
 
 <chapt> The checklist
 
-<sect> Version 3.8.5.0
+<sect> Version 3.9.1.0
 <p>
 
-Release Jun 2010.
+Not yet released.
 
 </p><p><taglist>
+<tag>3.2.1</tag>
+  <item>Date-based version components should be given as the four-digit
+  year, two-digit month, and then two-digit day, but may have embedded
+  punctuation.
+  </item>
+<tag>3.9</tag>
+  <item>Maintainer scripts must pass <tt>--package</tt>
+  to <prgn>dpkg-divert</prgn> when creating or removing diversions and
+  must not use <tt>--local</tt>.
+  </item>
+<tag>7.1</tag>
+  <item>Architecture restrictions and wildcards are also allowed in binary
+  package relationships provided that the binary package is not
+  architecture-independent.
+  </item>
+<tag>7.4</tag>
+  <item><tt>Conflicts</tt> and <tt>Breaks</tt> should only be used when
+  there are file conflicts or one package breaks the other, not just
+  because two packages provide similar functionality but don't interfere.
+  </item>
+<tag>8.1</tag>
+  <item>The SONAME of a library should change whenever the ABI of the
+  library changes in a way that isn't backward-compatible.  It should not
+  change if the library ABI changes are backward-compatible.  Discourage
+  bundling shared libraries together in one package.
+  </item>
+<tag>8.6.1, 8.6.2, 8.6.5</tag>
+  <item>Packages should normally not include a <file>shlibs.local</file>
+  file since we now have complete <file>shlibs</file> coverage.
+  </item>
+<tag>8.6.3</tag>
+  <item>The SONAME of a library may instead be of the
+  form <tt><var>name</var>-<var>major-version</var>.so</tt>.
+  </item>
+<tag>10.2</tag>
+  <item>Libtool <file>.la</file> files should not be installed for public
+  libraries.  If they're required (for <tt>libltdl</tt>, for instance),
+  the <tt>dependency_libs</tt> setting should be emptied.  Library
+  packages historically including <file>.la</file> files must continue to
+  include them (with <tt>dependency_libs</tt> emptied) until all libraries
+  that depend on that library have removed or emptied
+  their <file>.la</file> files.
+  </item>
+<tag>10.2</tag>
+  <item>Libraries no longer need to be built with <tt>-D_REENTRANT</tt>,
+  which was an obsolete LinuxThreads requirement.  Instead, say explicitly
+  that libraries should be built with threading support and to be
+  thread-safe if the library supports this.
+  </item>
+<tag>11.4, 11.8.3, 11.8.4</tag>
+  <item>Packages providing alternatives for <prgn>editor</prgn>,
+  <prgn>pager</prgn>, <prgn>x-terminal-emulator</prgn>, or
+  <prgn>x-window-manager</prgn> should also provide a slave alternative
+  for the corresponding manual page.
+  </item>
+<tag>11.5</tag>
+  <item>Cgi-bin executable files may be installed in subdirectories
+  of <file>/usr/lib/cgi-bin</file> and web servers should serve out
+  executables in those subdirectories.
+  </item>
+<tag>12.5</tag>
+  <item>The GPL version 1 is now included in common-licenses and should be
+  referenced from there instead of included in the <file>copyright</file>
+  file.
+  </item>
+</taglist></p>
+
+<sect> Version 3.9.0.0
+<p>
+
+Released June, 2010.
+
+</p><p><taglist>
+<tag>4.4, 5.6.15</tag>
+  <item>The required format for the date in a changelog entry and in the
+  Date control field is now precisely specified.
+  </item>
+<tag>5.1</tag>
+  <item>A control paragraph must not contain more than one instance of a
+  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>
+<tag>5.5, 5.6.16</tag>
+  <item>The <tt>Format</tt> field of <file>.changes</file> files is now
+  1.8.  The <tt>Format</tt> field syntax for source
+  package <file>.dsc</file> files allows a subtype in parentheses, and it
+  is used for a different purpose than the <tt>Format</tt> field
+  for <file>.changes</file> files.
+  </item>
+<tag>5.6.2</tag>
+  <item>The syntax of the <tt>Maintainer</tt> field is now must rather
+  than should.
+  </item>
+<tag>5.6.3</tag>
+  <item>The comma separating entries in <tt>Uploaders</tt> is now must
+  rather than should.
+  </item>
+<tag>5.6.8, 7.1, 11.1.1</tag>
+  <item>Architecture wildcards may be used in addition to specific
+  architectures in <file>debian/control</file> and <file>*.dsc</file>
+  Architecture fields, and in architecture restrictions in build
+  relationships.
+  </item>
+<tag>6.3</tag>
+  <item>Maintainer scripts are no longer guaranteed to run with a
+  controlling terminal and must be able to fall back to noninteractive
+  behavior (debconf handles this).  Maintainer scripts may abort if there
+  is no controlling terminal and no reasonable default for a high-priority
+  question, but should avoid this if possible.
+  </item>
+<tag>7.3, 7.6.1</tag>
+  <item><tt>Breaks</tt> should be used with <tt>Replaces</tt> for moving
+  files between packages.
+  </item>
+<tag>7.4</tag>
+  <item><tt>Breaks</tt> should normally be used instead
+  of <tt>Conflicts</tt> for transient issues and moving files between
+  packages.  New documentation of when each should be used.
+  </item>
+<tag>7.5</tag>
+  <item>Use <tt>Conflicts</tt> with <tt>Provides</tt> if only one provider
+  of a virtual facility can be installed at a time.
+  </item>
+<tag>8.4</tag>
+  <item>All shared library development files are no longer required to be
+  in the <tt>-dev</tt> package, only be available when the <tt>-dev</tt>
+  package is installed.  This allows the <tt>-dev</tt> package to be split
+  as long as it depends on the additional packages.
+  </item>
 <tag>9.2.2</tag>
-  <item> The UID range of user accounts is extended to 1000-59999.
+  <item>The UID range of user accounts is extended to 1000-59999.
+  </item>
+<tag>9.3.2, 10.4</tag>
+  <item><file>init.d</file> scripts are a possible exception from the
+  normal requirement to use <tt>set -e</tt> in each shell script.
+  </item>
+<tag>12.5</tag>
+  <item>The UCB BSD license was removed from the list of licenses that
+  should be referenced from <file>/usr/share/common-licenses/BSD</file>.
+  It should instead be included directly
+  in <file>debian/copyright</file>, although it will still be in
+  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>
+<tag>perl</tag>
+  <item><package>perl-base</package> now
+  provides <package>perlapi-<var>abiname</var></package> instead of a
+  package based solely on the Perl version.  Perl packages must now depend
+  on <package>perlapi-$Config{debian_abi}</package>, falling back
+  on <tt>$Config{version}</tt> if <tt>$Config{debian_abi}</tt> is not set.
+  </item>
+<tag>perl</tag>
+  <item>Packages using <file>Makefile.PL</file> should use
+  <tt>DESTDIR</tt> rather than <tt>PREFIX</tt> to install into the package
+  staging area.  <tt>PREFIX</tt> only worked due to a Debian-local patch.
   </item>
 </taglist></p>