]> git.donarmstrong.com Git - debian/debian-policy.git/blob - upgrading-checklist.html
Synchronized with patch 55 from Manojs tree
[debian/debian-policy.git] / upgrading-checklist.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
2 <html>
3   <head>
4  <!--                             -*- Mode: Sgml -*- 
5     upgrading-checklist.html
6     Author           : Manoj Srivastava ( srivasta@tiamat.datasync.com ) 
7     Created On       : Thu Oct 29 20:54:48 1998
8     Created On Node  : tiamat.datasync.com
9     Last Modified By : Julian Gilbey
10     Last Modified On : Mon Jun 19 20:06:50 2000
11     Last Machine Used: polya.maths.qmw.ac.uk
12     Update Count     : 11
13     Status           : Unknown, Use with caution!
14     HISTORY          : 
15     Description      : 
16
17     -->
18
19
20     <title>Policy checklist for upgrading your packages</title>
21   </head>
22   <body>
23
24     <h1>Policy checklist for upgrading your packages</h1>
25
26     <h2>About the checklist</h2>
27
28 <p>
29 The checklist below has been created to simplify the upgrading process
30 of old packages. Note, that this list is not `official.' If you have
31 doubts about a certain topic, if you need more details, or if you
32 think some other package does not comply with policy, please refer to
33 the Policy Manual.
34 </p>
35
36 <p>
37 Here is how the check list works: Check out which policy version your
38 packages complies with currently. Than move upwards until the top and
39 check which of the items on the list might concern your package. If an
40 item does not give you enough details, please check out the Policy
41 Manual.
42 </p>
43
44 <h2>The checklist</h2>
45
46 <pre>
47 3.2.0.0                    Jun 00
48
49   Policy Manual:
50      - By default executables should not be built with the debugging
51        option -g. Instead, it is recommended to support building the
52        package with debugging information optionally.
53      - Policy for packages where the upstream uses html changelog
54        files has been expanded. In short, a plain text changelog file
55        should always be generated for the upstream changes.
56      - Please note that the new release of the X window system (4.x)
57        shall probably need sweeping changes in policy.
58      - Policy for packages providing an X server has been codified
59        (formalizes existing practice - use virtual package xserver)
60      - Policy for packages providing an X terminal emulator has been
61        codified (use virtual package x-terminal-emulator)
62      - Policy for packages providing an X window manager has been
63        codified (use virtual package x-window-anager, and also as an
64        alternative for /usr/bin/x-window-manager. The policy has
65        guidelines on how to calculate priority)
66      - Policy for packages providing an X fonts has been
67        codified. Please look into the manual for details; this section
68        has been written from scratch.
69      - Policy for packages using the X Window System and FHS issues
70        has been clarified. Please read the manual for details.
71      - Policy for packages providing an X application default has been
72        clarified. 
73
74   Packaging Manual:
75      - Noted that newer dpkg versions do not require extreme care in
76        always creating theshared lib before the symlink, so the unpack
77        order be correct. 
78
79 3.1.1.0                    Nov 99
80
81   Packaging Manual:
82      - Correction to semantics of architecture lists in Build-Depends
83       etc.  Should not affect many packages.
84
85 3.1.0.0                    Oct 99
86
87   Policy Manual:
88      - /usr/doc/&lt;package&gt; has to be a symlink pointing to
89        /usr/share/doc/&lt;package&gt;.  This symlink has to be
90        maintained by postinst and prerm, because dpkg will cause
91        problems otherwise.  Create/remote the symlinks using debhelper
92        or see section "6.4. Accessing the documentation" for more
93        information.
94      - Introduced source dependencies.  (Whereas this ought to demand a
95        major policy number rise, we've only just had one of them, so
96        I'm going to use a minor number instead.)
97      - /etc/rc.boot has been deprecated in favour of /etc/rcS.d.
98        Packages should not be touching this directory, anyway, but
99        should use update-rc.d instead.
100      - update-rc.d is now the *only* allowable way of accessing the
101        /etc/rc?.d/[SK]??* links.  Any scripts which manipulate them
102        directly must be changed to use update-rc.d instead.  (This is
103        because the file-rc package handles this information in an
104        incompatible way.)
105      - Compiled examples go in /usr/lib/&lt;package&gt;/examples with
106        symlinks from /usr/share/doc/&lt;package&gt;/examples/* or from
107        /usr/share/doc/&lt;package&gt;/examples itself.
108      - Updated FHS to a 2.1 draft; this reverts /var/state to
109       /var/lib.
110      - Added MIME sub-policy document.
111      - VISUAL is allowed as a (higher priority) alternative to EDITOR.
112      - Modified liblockfile description, which affects
113        mailbox-accessing programs.  Please see the policy document for
114        details.
115      - If a package provides a changelog in HTML format, a text-only
116        version should also be included.  Such a version may be prepared
117        using lynx -dump -nolist.)
118
119   Packaging Manual:
120      - Description of how to handle version numbers based on dates
121        added: see section 5.1.
122
123
124 3.0.1.0                    Jul 99
125
126   Policy Manual:
127     -  Added the clarification that the .la files are essential for the
128        packages using libtool's libltdl library, in which case the
129        .la files must go in the run-time library package.
130
131
132 3.0.0.0                    Jun 99
133
134   Policy Manual:
135     - Debian formally moves from the FSSTND to the FHS. This is a
136       major change, and the implications of this move are probably
137       not all known.
138     - Only 3 digits of the Standards version need be included in
139       control files, though all four digits are still permitted. 
140     - The location of the GPL has changed to
141       /usr/share/common-licenses. This may require changing the
142       copyright files to point to the correct location of the GPL and
143       other major licences
144     - Packages that use libtool to create shared libraries must
145       include the .la files in the -dev packages.
146     - Use logrotate to rotate log files
147     - section 5.8 has been rewritten (Programs for the X Window
148       System) 
149     - There is now anassi=ociated menu policy, in a separate document,
150       that carries the full weight of Debian policy. 
151     - The files `/var/run/utmp', `/var/log/wtmp' and
152       `/var/log/lastlog' must be installed writeable by group
153       utmp. Programs who need to modify those files must be installed
154       install setgid utmp.
155
156
157 2.5.0.0                         Oct 98
158
159   Policy Manual:
160     - Rearranged the manual to create a new Section 4, Files
161       + Section 3.3 ("Files") was moved to Section 4. The Sections
162         that  were Section 4 and Section 5 were  moved down to become
163         Section 5 and Section 6.
164       + What was Section 5.5 ("Log files") is now a subsection of the
165         new Section 4 ("Files"), becoming section 4.8, placed after
166         "Configuration files", moving the Section 4.8 ("Permissions
167         and owners") to Section 4.9.  All subsections of the old
168         Section 5 after 5.5  were moved down to fill in the number
169         gap. 
170     - Modified the section about changelog files to accomodate
171       upstream changelogs which were formatted as HTML/ These
172       upstream chagelog files should now be accessible as
173       /usr/doc/package/changelog.html.gz 
174       + Symlinks are permissible to link the real, or upstream,
175         changelog name to the Debian mandated name.
176     - Clarified that HTML documentation should be present in some
177       package, though not necessarily the main binary package.
178     - Corrected all references to the location of the copyright
179       files. The correct location is /usr/doc/package/copyright
180     - Ratified the architecture specification strings to cater to the
181       HURD. 
182
183 2.4.1.0                         Apr 98
184
185   Policy Manual:
186     - Updated section 3.3.5 Symbolic links:
187       + symbolic links within a toplevel directory should be relative,
188         symbolic links between toplevel directories should be absolute
189         (cf., Policy Weekly Issue#6, topic 2)
190
191     - Updated section 4.9 Games:
192       + manpages for games should be installed in /usr/man/man6
193         (cf., Policy Weekly Issue#6, topic 3)
194
195   Packaging Manual:
196     - Updated prefix of chapter 12, Shared Libraries:
197       ldconfig must be called in the postinst script if the package
198       installs shared libraries
199       (cf., Policy Weekly Issue #6, fixes:bug#20515)
200   
201 2.4.0.0                         Jan 98
202
203     - Updated section 3.3.4 Scripts:
204       + /bin/sh may be any POSIX compatible shell
205       + scripts including bashisms have to specify /bin/bash as
206         interpreter
207       + scripts which create files in world-writable directories
208         (e.g., in /tmp) should use tempfile or mktemp for creating
209         the directory
210
211     - Updated section 3.3.5 Symbolic Links:
212       + symbolic links referencing compressed files must have the same
213         file extension as the referenced file
214
215     - Updated section 3.3.6 Device files:
216       + /dev/tty* serial devices should be used instead of /dev/cu*
217
218     - Updated section 3.4.2 Writing the scripts [in /etc/init.d]:
219       + all /etc/init.d scripts have to provide the following options:
220         start, stop, restart, force-reload
221       + the reload option is optional and must never stop and restart
222         the service
223
224     - Updated section 3.5 Cron jobs:
225       + cron jobs that need to be executed more often than daily should
226         be installed into /etc/cron.d
227
228     - Updated section 3.7 Menus:
229       + removed section about how to register HTML docs to `menu'
230         (the corresponding section in 4.4, Web servers and applications,
231         has been removed in policy 2.2.0.0 already, so this one was
232         obsolete)
233
234     - New section 3.8 Keyboard configuration:
235       + details about how the backspace and delete keys should be
236         handled
237
238     - New section 3.9 Environment variables:
239       + no program must depend on environment variables to get a
240         reasonable default configuration
241
242     - New section 4.6 News system configuration:
243       + /etc/news/organization and /etc/news/server should be supported
244         by all news servers and clients
245
246     - Updated section 4.7 Programs for the X Windows system:
247       + programs requiring a non-free Motif library should be provided
248         as foo-smotif and foo-dmotif package
249       + if lesstif works reliably for such program, it should be linked
250         against lesstif and not against a non-free Motif library
251
252     - Updated section 4.9 Games:
253       + games for X Windows have to be installed in /usr/games, just as
254         non-X games
255
256 2.3.0.1, 2.3.0.0                Sep 97
257
258         * new section `4.2 Daemons' including rules for
259           /etc/services, /etc/protocols, /etc/rpc, and /etc/inetd.conf
260
261         * updated section about `Configuration files':
262           packages may not touch other packages' configuration files  
263
264         * MUAs and MTAs have to use liblockfile
265
266 2.2.0.0                         Jul 97
267
268         * added section 4.1 `Architecture specification strings':
269           use
270                &lt;arch&gt;-linux 
271           where &lt;arch&gt; is one of the following:
272                i386, alpha, arm, m68k, powerpc, sparc.
273
274         * detailed rules for /usr/local
275
276         * user ID's
277
278         * editor/pager policy
279
280         * cron jobs
281
282         * device files
283
284         * don't install shared libraries as executable
285
286         * app-defaults files may not be conffiles
287
288 2.1.3.2, 2.1.3.1, 2.1.3.0       Mar 97
289
290         * two programs with different functionality must not have the
291           same name
292
293         * "Webstandard 3.0"
294
295         * "Standard for Console Messages"
296
297         * Libraries should be compiled with `-D_REENTRANT'
298
299         * Libraries should be stripped with "strip --strip-unneeded"
300
301 2.1.2.2, 2.1.2.1, 2.1.2.0       Nov 96
302
303         * Some changes WRT shared libraries
304
305 2.1.1.0                         Sep 96
306
307         * No hard links in source packages
308         
309         * Do not use dpkg-divert or update-alternatives without consultation
310
311         * Shared libraries must be installed stripped
312
313 2.1.0.0                         Aug 96
314
315         * Upstream changelog must be installed too
316 </pre>
317
318     <hr>
319
320   </body>
321 </html>
322
323
324
325
326
327
328
329
330
331
332 <!-- Keep this comment at the end of the file
333 Local variables:
334 mode: sgml
335 sgml-indent-data: t
336 sgml-live-element-indicator: t
337 sgml-set-face: t
338 End:
339 -->