release-process 7.76 KB
Newer Older
1 2
Tasks needed before the next release.

Luc Teirlinck's avatar
Luc Teirlinck committed
3
* TO BE DONE SHORTLY BEFORE RELEASE
Luc Teirlinck's avatar
Luc Teirlinck committed
4

5 6 7 8
** Make sure the necessary sources and scripts for any generated files
are included in the source tarfile.  (They don't need to be installed,
so eg admin/ is fine.)

Glenn Morris's avatar
Glenn Morris committed
9
** Manuals
10 11 12 13
Check for node names using problematic characters:
  find doc -name '*.texi' -exec grep '^@node[^,]*[:.()]' {} +
Sadly makeinfo does not warn about such characters.

14 15 16 17
Check for major new features added since the last release (e.g. new
lisp files), and add the relevant authors to the Acknowledgments in
doc/emacs/ack.texi and emacs.texi.

Glenn Morris's avatar
Glenn Morris committed
18
Check cross-references between the manuals (eg from emacs to elisp)
Glenn Morris's avatar
Glenn Morris committed
19 20 21
are correct.  You can use something like the following in the info
directory in the Emacs build tree:

22
emacs -Q --eval "(progn (require 'info) (setq Info-directory-list '(\".\")))" \
Glenn Morris's avatar
Glenn Morris committed
23
  -f info-xref-check-all
Glenn Morris's avatar
Glenn Morris committed
24

25 26 27 28 29 30 31 32
Setting Info-directory-list avoids having system info pages confuse
things.  References to external manuals will be flagged as
uncheckable.  You should still check these, and also that each
external manual has an appropriate redirect in the file manual/.htaccess
in the web pages repository.  E.g.:
Redirect /software/emacs/manual/html_mono/automake.html /software/automake/manual/automake.html
Redirect /software/emacs/manual/html_node/automake/ /software/automake/manual/html_node/

33 34 35 36 37 38 39 40 41 42 43 44 45 46
Another tool you can use to check links is gnu.org's linc.py:
http://www.gnu.org/server/source/

You run this something like:

cd /path/to/cvs/emacs-www
linc.py -o /path/to/output-dir --url http://www.gnu.org/software/emacs/ .

Be warned that it is really, really slow (as in, can take ~ a full day
to check the manual/ directory).  It is probably best to run it on a
single directory at a time from eg manual/html_node.  It is very
inefficient, but may reveal a few things that info-xref does not.


Glenn Morris's avatar
Glenn Morris committed
47 48 49 50 51 52 53 54 55 56 57 58 59
make emacs.dvi, elisp.dvi, and deal with any errors (undefined
references etc) in the output.  Break any overfull lines.
Underfull hboxes are not serious, but it can be nice to get rid of
them if a simple rephrasing or rearrangement will work.

Update the master menu and detailed menu (eg the antinews version).
The command texinfo-multiple-files-update can do this, but you
probably want to apply the results selectively (eg the current master
menu has better line-breaks than the automatic version).  It includes
the menu-entry name (if there is one) as well as the node name - using
only the latter looks better.  Also, it doesn't seem to handle nested
includes, so will miss edebug.texi etc.

Glenn Morris's avatar
Glenn Morris committed
60 61 62 63 64 65 66 67
Check for widow and orphan lines in the printed manual; make sure all
the pages really look ok in the manual as formatted.  Orphans/widows
are cases where the first/last line of a paragraph is on its own at
the end/start of a page, or where the last word in a paragraph is on
its own at the start of a line.  It looks better if you reword/respace
things to avoid these.  (AFAIK, there is no way to find these except
paging through the whole manual.)  This should be the very last thing
you do, since any change can alter the layout.
Glenn Morris's avatar
Glenn Morris committed
68 69 70 71 72 73 74
(Actually, there is probably little point in trying to do this.
It's only really relevant if printed versions of the manuals are going
to be published.  End-users are not likely to print out all 1000+
pages of the manuals, and even if they do, the resulting page breaks
depend on what paper and font size they use.  This also means that if
you _are_ going to do this, it should be done with the paper and font
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
Glenn Morris's avatar
Glenn Morris committed
76
emacs.pdf' (e.g., enable "smallbook").
77

Glenn Morris's avatar
Glenn Morris committed
78 79
** Check the keybindings in the refcards are correct, and add any new ones.
What paper size are the English versions supposed to be on?
Glenn Morris's avatar
Glenn Morris committed
80 81
On Debian testing, the packages texlive-lang-czechslovak and
texlive-lang-polish will let you generate the cs-* and sk-* pdfs.
Glenn Morris's avatar
Glenn Morris committed
82
(You may need texlive-lang-cyrillic, texlive-lang-german for others.)
Glenn Morris's avatar
Glenn Morris committed
83 84
The Makefile rules did not work for me, I had to use something like:
csplain -output-format=pdf cs-refcard
Glenn Morris's avatar
Glenn Morris committed
85

86 87
** Ask maintainers of refcard translations to update them.

Glenn Morris's avatar
Glenn Morris committed
88
Emacs 22 translators:
89 90

LANG	Translator            Status
91 92 93 94 95 96 97
cs	Pavel Janík
de	Sven Joachim
fr	Eric Jacoboni
pl	Włodek Bzyl
pt-br	Rodrigo Real
ru	Alex Ott
sk	Miroslav Vaško
98

Glenn Morris's avatar
Glenn Morris committed
99 100
** For a major release, add a "New in Emacs XX" section to faq.texi.

101 102 103 104
** Remove temporary +++/--- lines in NEWS.

** Try to reorder NEWS: most important things first, related items together.

Glenn Morris's avatar
Glenn Morris committed
105 106
** Consider bumping customize-changed-options-previous-release.

Glenn Morris's avatar
Glenn Morris committed
107
** cusver-check from admin.el can help find new defcustoms missing
Glenn Morris's avatar
Glenn Morris committed
108 109
:version tags.

Paul Eggert's avatar
Paul Eggert committed
110 111
** Add a line to etc/HISTORY for the release version number and date.

112 113
* BUGS

114 115 116
** Check for modes which bind M-s that conflicts with a new global binding M-s
and change key bindings where necessary.  The current list of modes:

117
1. Gnus binds 'M-s' to 'gnus-summary-search-article-forward'.
118

119
2. Minibuffer binds 'M-s' to 'next-matching-history-element'
120 121
   (not useful any more since C-s can now search in the history).

122 123 124 125
3. 'center-line' in Text mode was already moved to the text formatting
   keymap as 'M-o M-s' (thus this binding is not necessary any more
   in 'nroff-mode-map' too and can be removed now from the nroff mode
   because it can now use the global key binding 'M-o M-s' 'center-line').
126

127 128 129
4. PCL-CVS binds 'M-s' to 'cvs-status', and log-edit-mode binds it to
   'log-edit-comment-search-forward'.  Perhaps search commands
   on the global key binding 'M-s' are useless in these modes.
130

131
5. Rmail binds '\es' to 'rmail-search'/'rmail-summary-search'.
132 133


134
* DOCUMENTATION
135

136 137
** Check the Emacs Tutorial.

138 139
The first line of every tutorial must begin with text ending in a
period (".", ASCII 0x2E) saying "Emacs Tutorial" in the respective
Glenn Morris's avatar
Glenn Morris committed
140 141
language. This should be followed by "See end for copying conditions",
likewise in the respective language.
142 143 144 145

After each file name, on the same line or the following line, come the
names of the people who have checked it.

146 147
SECTION                  READERS
----------------------------------
Chong Yidong's avatar
Chong Yidong committed
148
TUTORIAL             cyd
Ognyan Kulev's avatar
Ognyan Kulev committed
149
TUTORIAL.bg          ogi
Xue Fuqiao's avatar
Xue Fuqiao committed
150
TUTORIAL.cn          xfq
151
TUTORIAL.cs
Ognyan Kulev's avatar
Ognyan Kulev committed
152
TUTORIAL.de          wl
153
TUTORIAL.eo
154 155
TUTORIAL.es
TUTORIAL.fr
Eli Zaretskii's avatar
Eli Zaretskii committed
156
TUTORIAL.he          eliz
157 158
TUTORIAL.it
TUTORIAL.ja
159
TUTORIAL.ko
160
TUTORIAL.nl	     Pieter Schoenmakers
161 162
TUTORIAL.pl
TUTORIAL.pt_BR
163
TUTORIAL.ro
164
TUTORIAL.ru          Alex Ott
165
TUTORIAL.sk
Primoz PETERLIN's avatar
Primoz PETERLIN committed
166
TUTORIAL.sl          Primoz PETERLIN
Mats Lidell's avatar
Mats Lidell committed
167
TUTORIAL.sv          Mats Lidell
168
TUTORIAL.th
169
TUTORIAL.zh
170

Chong Yidong's avatar
Chong Yidong committed
171 172
** Check the manual.

173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
abbrevs.texi
ack.texi
anti.texi
arevert-xtra.texi
basic.texi
buffers.texi
building.texi
calendar.texi
cal-xtra.texi
cmdargs.texi
commands.texi
custom.texi
dired.texi
dired-xtra.texi
display.texi
emacs.texi
emacs-xtra.texi
emerge-xtra.texi
entering.texi
files.texi
fixit.texi
fortran-xtra.texi
frames.texi
glossary.texi
help.texi
indent.texi
killing.texi
kmacro.texi
macos.texi
maintaining.texi
mark.texi
mini.texi
misc.texi
modes.texi
msdos.texi
msdos-xtra.texi
mule.texi
m-x.texi
package.texi
picture-xtra.texi
programs.texi
regs.texi
rmail.texi
screen.texi
search.texi
sending.texi
text.texi
trouble.texi
vc-xtra.texi
vc1-xtra.texi
windows.texi
xresources.texi
Chong Yidong's avatar
Chong Yidong committed
225 226 227

** Check the Lisp manual.

228 229 230 231 232 233 234 235 236 237 238 239
abbrevs.texi
anti.texi
back.texi
backups.texi
buffers.texi
commands.texi
compile.texi
control.texi
customize.texi
debugging.texi
display.texi
edebug.texi
Chong Yidong's avatar
Chong Yidong committed
240
elisp.texi
241 242 243 244 245 246 247 248
errors.texi
eval.texi
files.texi
frames.texi
functions.texi
hash.texi
help.texi
hooks.texi
Chong Yidong's avatar
Chong Yidong committed
249
index.texi
250 251 252 253 254 255 256 257 258 259 260
internals.texi
intro.texi
keymaps.texi
lists.texi
loading.texi
macros.texi
maps.texi
markers.texi
minibuf.texi
modes.texi
nonascii.texi
261
numbers.texi      Paul Eggert (24.4)
262 263 264 265 266 267 268 269 270 271 272 273 274 275 276
objects.texi
os.texi
package.texi
positions.texi
processes.texi
searching.texi
sequences.texi
streams.texi
strings.texi
symbols.texi
syntax.texi
text.texi
tips.texi
variables.texi
windows.texi
Chong Yidong's avatar
Chong Yidong committed
277

Kim F. Storm's avatar
Kim F. Storm committed
278 279 280

Local variables:
mode: outline
281
coding: utf-8
Kim F. Storm's avatar
Kim F. Storm committed
282
end: