Backport: Mention CONTRIBUTE in README
[emacs.git] / admin / FOR-RELEASE
blob6ecec8941a2805088870cc9c7ac474b12ceaa8bb
1 Tasks needed before the next release.
3 * TO BE DONE SHORTLY BEFORE RELEASE
5 ** Make sure the necessary sources and scripts for any generated files
6 are included in the source tarfile.  (They don't need to be installed,
7 so eg admin/ is fine.)
9 ** Manuals
10 Check for node names using problematic characters:
11   find doc -name '*.texi' -exec grep '^@node[^,]*[:.()]' {} +
12 Sadly makeinfo does not warn about such characters.
14 Check for major new features added since the last release (e.g. new
15 lisp files), and add the relevant authors to the Acknowledgments in
16 doc/emacs/ack.texi and emacs.texi.
18 Check cross-references between the manuals (eg from emacs to elisp)
19 are correct.  You can use something like the following in the info
20 directory in the Emacs build tree:
22 emacs -Q --eval "(progn (require 'info) (setq Info-directory-list '(\".\")))" \
23   -f info-xref-check-all
25 Setting Info-directory-list avoids having system info pages confuse
26 things.  References to external manuals will be flagged as
27 uncheckable.  You should still check these, and also that each
28 external manual has an appropriate redirect in the file manual/.htaccess
29 in the web pages repository.  E.g.:
30 Redirect /software/emacs/manual/html_mono/automake.html /software/automake/manual/automake.html
31 Redirect /software/emacs/manual/html_node/automake/ /software/automake/manual/html_node/
33 Another tool you can use to check links is gnu.org's linc.py:
34 http://www.gnu.org/server/source/
36 You run this something like:
38 cd /path/to/cvs/emacs-www
39 linc.py -o /path/to/output-dir --url http://www.gnu.org/software/emacs/ .
41 Be warned that it is really, really slow (as in, can take ~ a full day
42 to check the manual/ directory).  It is probably best to run it on a
43 single directory at a time from eg manual/html_node.  It is very
44 inefficient, but may reveal a few things that info-xref does not.
47 make emacs.dvi, elisp.dvi, and deal with any errors (undefined
48 references etc) in the output.  Break any overfull lines.
49 Underfull hboxes are not serious, but it can be nice to get rid of
50 them if a simple rephrasing or rearrangement will work.
52 Update the master menu and detailed menu (eg the antinews version).
53 The command texinfo-multiple-files-update can do this, but you
54 probably want to apply the results selectively (eg the current master
55 menu has better line-breaks than the automatic version).  It includes
56 the menu-entry name (if there is one) as well as the node name - using
57 only the latter looks better.  Also, it doesn't seem to handle nested
58 includes, so will miss edebug.texi etc.
60 Check for widow and orphan lines in the printed manual; make sure all
61 the pages really look ok in the manual as formatted.  Orphans/widows
62 are cases where the first/last line of a paragraph is on its own at
63 the end/start of a page, or where the last word in a paragraph is on
64 its own at the start of a line.  It looks better if you reword/respace
65 things to avoid these.  (AFAIK, there is no way to find these except
66 paging through the whole manual.)  This should be the very last thing
67 you do, since any change can alter the layout.
68 (Actually, there is probably little point in trying to do this.
69 It's only really relevant if printed versions of the manuals are going
70 to be published.  End-users are not likely to print out all 1000+
71 pages of the manuals, and even if they do, the resulting page breaks
72 depend on what paper and font size they use.  This also means that if
73 you _are_ going to do this, it should be done with the paper and font
74 size that the GNU Press are going to use when they print the manuals.
75 I think this is different to what you get if you just use eg 'make
76 emacs.pdf' (e.g., enable "smallbook").
78 ** Check the keybindings in the refcards are correct, and add any new ones.
79 What paper size are the English versions supposed to be on?
80 On Debian testing, the packages texlive-lang-czechslovak and
81 texlive-lang-polish will let you generate the cs-* and sk-* pdfs.
82 (You may need texlive-lang-cyrillic, texlive-lang-german for others.)
83 The Makefile rules did not work for me, I had to use something like:
84 csplain -output-format=pdf cs-refcard
86 ** Ask maintainers of refcard translations to update them.
88 Emacs 22 translators:
90 LANG    Translator            Status
91 cs      Pavel Janík           
92 de      Sven Joachim          
93 fr      Eric Jacoboni         
94 pl      Włodek Bzyl           
95 pt-br   Rodrigo Real          
96 ru      Alex Ott              
97 sk      Miroslav Vaško        
99 ** For a major release, add a "New in Emacs XX" section to faq.texi.
101 ** Remove temporary +++/--- lines in NEWS.
103 ** Try to reorder NEWS: most important things first, related items together.
105 ** Consider bumping customize-changed-options-previous-release.
107 ** cusver-check from admin.el can help find new defcustoms missing
108 :version tags.
110 ** Add a line to etc/HISTORY for the release version number and date.
112 * BUGS
114 ** Check for modes which bind M-s that conflicts with a new global binding M-s
115 and change key bindings where necessary.  The current list of modes:
117 1. Gnus binds 'M-s' to 'gnus-summary-search-article-forward'.
119 2. Minibuffer binds 'M-s' to 'next-matching-history-element'
120    (not useful any more since C-s can now search in the history).
122 3. 'center-line' in Text mode was already moved to the text formatting
123    keymap as 'M-o M-s' (thus this binding is not necessary any more
124    in 'nroff-mode-map' too and can be removed now from the nroff mode
125    because it can now use the global key binding 'M-o M-s' 'center-line').
127 4. PCL-CVS binds 'M-s' to 'cvs-status', and log-edit-mode binds it to
128    'log-edit-comment-search-forward'.  Perhaps search commands
129    on the global key binding 'M-s' are useless in these modes.
131 5. Rmail binds '\es' to 'rmail-search'/'rmail-summary-search'.
134 * DOCUMENTATION
136 ** Check the Emacs Tutorial.
138 The first line of every tutorial must begin with text ending in a
139 period (".", ASCII 0x2E) saying "Emacs Tutorial" in the respective
140 language. This should be followed by "See end for copying conditions",
141 likewise in the respective language.
143 After each file name, on the same line or the following line, come the
144 names of the people who have checked it.
146 SECTION                  READERS
147 ----------------------------------
148 TUTORIAL             cyd
149 TUTORIAL.bg          ogi
150 TUTORIAL.cn          xfq
151 TUTORIAL.cs          
152 TUTORIAL.de          wl
153 TUTORIAL.eo
154 TUTORIAL.es          
155 TUTORIAL.fr          
156 TUTORIAL.he          eliz
157 TUTORIAL.it          
158 TUTORIAL.ja          
159 TUTORIAL.ko
160 TUTORIAL.nl          Pieter Schoenmakers
161 TUTORIAL.pl          
162 TUTORIAL.pt_BR       
163 TUTORIAL.ro
164 TUTORIAL.ru          Alex Ott
165 TUTORIAL.sk          
166 TUTORIAL.sl          Primoz PETERLIN
167 TUTORIAL.sv          Mats Lidell
168 TUTORIAL.th          
169 TUTORIAL.zh
171 ** Check the manual.
173 abbrevs.texi      
174 ack.texi          
175 anti.texi         
176 arevert-xtra.texi 
177 basic.texi        
178 buffers.texi      
179 building.texi     
180 calendar.texi     
181 cal-xtra.texi     
182 cmdargs.texi      
183 commands.texi     
184 custom.texi       
185 dired.texi        
186 dired-xtra.texi   
187 display.texi      
188 emacs.texi        
189 emacs-xtra.texi   
190 emerge-xtra.texi  
191 entering.texi     
192 files.texi        
193 fixit.texi        
194 fortran-xtra.texi 
195 frames.texi       
196 glossary.texi     
197 help.texi         
198 indent.texi       
199 killing.texi      
200 kmacro.texi       
201 macos.texi        
202 maintaining.texi  
203 mark.texi         
204 mini.texi         
205 misc.texi         
206 modes.texi        
207 msdos.texi        
208 msdos-xtra.texi   
209 mule.texi         
210 m-x.texi          
211 package.texi      
212 picture-xtra.texi 
213 programs.texi     
214 regs.texi         
215 rmail.texi        
216 screen.texi       
217 search.texi       
218 sending.texi      
219 text.texi         
220 trouble.texi      
221 vc-xtra.texi      
222 vc1-xtra.texi     
223 windows.texi      
224 xresources.texi   
226 ** Check the Lisp manual.
228 abbrevs.texi      
229 anti.texi         
230 back.texi         
231 backups.texi      
232 buffers.texi      
233 commands.texi     
234 compile.texi      
235 control.texi      
236 customize.texi    
237 debugging.texi    
238 display.texi      
239 edebug.texi       
240 elisp.texi
241 errors.texi       
242 eval.texi         
243 files.texi        
244 frames.texi       
245 functions.texi    
246 hash.texi         
247 help.texi         
248 hooks.texi        
249 index.texi
250 internals.texi    
251 intro.texi        
252 keymaps.texi      
253 lists.texi        
254 loading.texi      
255 macros.texi       
256 maps.texi         
257 markers.texi      
258 minibuf.texi      
259 modes.texi        
260 nonascii.texi     
261 numbers.texi      Paul Eggert (24.4)
262 objects.texi      
263 os.texi           
264 package.texi      
265 positions.texi    
266 processes.texi    
267 searching.texi    
268 sequences.texi    
269 streams.texi      
270 strings.texi      
271 symbols.texi      
272 syntax.texi       
273 text.texi         
274 tips.texi         
275 variables.texi    
276 windows.texi      
279 Local variables:
280 mode: outline
281 coding: utf-8
282 end: