Avoid compiler warnings in decode_env_path.
[emacs.git] / admin / FOR-RELEASE
blobb5bf6739a86382dc165cfae0ea18e47eaf54422c
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 * BUGS
112 ** Check for modes which bind M-s that conflicts with a new global binding M-s
113 and change key bindings where necessary.  The current list of modes:
115 1. Gnus binds `M-s' to `gnus-summary-search-article-forward'.
117 2. Minibuffer binds `M-s' to `next-matching-history-element'
118    (not useful any more since C-s can now search in the history).
120 3. `center-line' in Text mode was already moved to the text formatting
121    keymap as `M-o M-s' (thus this binding is not necessary any more
122    in `nroff-mode-map' too and can be removed now from the nroff mode
123    because it can now use the global key binding `M-o M-s' `center-line').
125 4. PCL-CVS binds `M-s' to `cvs-status', and log-edit-mode binds it to
126    `log-edit-comment-search-forward'.  Perhaps search commands
127    on the global key binding `M-s' are useless in these modes.
129 5. Rmail binds `\es' to `rmail-search'/`rmail-summary-search'.
132 * DOCUMENTATION
134 ** Check the Emacs Tutorial.
136 The first line of every tutorial must begin with text ending in a
137 period (".", ASCII 0x2E) saying "Emacs Tutorial" in the respective
138 language. This should be followed by "See end for copying conditions",
139 likewise in the respective language.
141 After each file name, on the same line or the following line, come the
142 names of the people who have checked it.
144 SECTION                  READERS
145 ----------------------------------
146 TUTORIAL             cyd
147 TUTORIAL.bg          ogi
148 TUTORIAL.cn          xfq
149 TUTORIAL.cs          
150 TUTORIAL.de          wl
151 TUTORIAL.eo
152 TUTORIAL.es          
153 TUTORIAL.fr          
154 TUTORIAL.he          eliz
155 TUTORIAL.it          
156 TUTORIAL.ja          
157 TUTORIAL.ko
158 TUTORIAL.nl          Pieter Schoenmakers
159 TUTORIAL.pl          
160 TUTORIAL.pt_BR       
161 TUTORIAL.ro
162 TUTORIAL.ru          Alex Ott
163 TUTORIAL.sk          
164 TUTORIAL.sl          Primoz PETERLIN
165 TUTORIAL.sv          Mats Lidell
166 TUTORIAL.th          
167 TUTORIAL.zh
169 ** Check the manual.
171 abbrevs.texi      
172 ack.texi          
173 anti.texi         
174 arevert-xtra.texi 
175 basic.texi        
176 buffers.texi      
177 building.texi     
178 calendar.texi     
179 cal-xtra.texi     
180 cmdargs.texi      
181 commands.texi     
182 custom.texi       
183 dired.texi        
184 dired-xtra.texi   
185 display.texi      
186 emacs.texi        
187 emacs-xtra.texi   
188 emerge-xtra.texi  
189 entering.texi     
190 files.texi        
191 fixit.texi        
192 fortran-xtra.texi 
193 frames.texi       
194 glossary.texi     
195 help.texi         
196 indent.texi       
197 killing.texi      
198 kmacro.texi       
199 macos.texi        
200 maintaining.texi  
201 mark.texi         
202 mini.texi         
203 misc.texi         
204 modes.texi        
205 msdog.texi        
206 msdog-xtra.texi   
207 mule.texi         
208 m-x.texi          
209 package.texi      
210 picture-xtra.texi 
211 programs.texi     
212 regs.texi         
213 rmail.texi        
214 screen.texi       
215 search.texi       
216 sending.texi      
217 text.texi         
218 trouble.texi      
219 vc-xtra.texi      
220 vc1-xtra.texi     
221 windows.texi      
222 xresources.texi   
224 ** Check the Lisp manual.
226 abbrevs.texi      
227 anti.texi         
228 back.texi         
229 backups.texi      
230 buffers.texi      
231 commands.texi     
232 compile.texi      
233 control.texi      
234 customize.texi    
235 debugging.texi    
236 display.texi      
237 edebug.texi       
238 elisp.texi
239 errors.texi       
240 eval.texi         
241 files.texi        
242 frames.texi       
243 functions.texi    
244 hash.texi         
245 help.texi         
246 hooks.texi        
247 index.texi
248 internals.texi    
249 intro.texi        
250 keymaps.texi      
251 lists.texi        
252 loading.texi      
253 macros.texi       
254 maps.texi         
255 markers.texi      
256 minibuf.texi      
257 modes.texi        
258 nonascii.texi     
259 numbers.texi      Paul Eggert (24.4)
260 objects.texi      
261 os.texi           
262 package.texi      
263 positions.texi    
264 processes.texi    
265 searching.texi    
266 sequences.texi    
267 streams.texi      
268 strings.texi      
269 symbols.texi      
270 syntax.texi       
271 text.texi         
272 tips.texi         
273 variables.texi    
274 windows.texi      
277 Local variables:
278 mode: outline
279 coding: utf-8
280 end: