*** empty log message ***
[emacs.git] / admin / FOR-RELEASE
blob1d3b6432f4bb295f71716482941de2083647d467
1 Tasks needed before the next release.
3 * NEW FEATURES
5 ** Face remapping.
7 ** Let mouse-1 follow links.
9 ** Make Rmail find the best version of movemail.
10 To be done by Sergey Poznyakoff <gray@Mirddin.farlep.net>.
12 ** Make VC-over-Tramp work where possible, or at least fail
13 gracefully if something isn't supported over Tramp.
14 To be done by Andre Spiegel <spiegel@gnu.org>.
16 * FATAL ERRORS
18 ** Investigate face cache related crash.
20 Indications: Face cache seems to have been cleared, but
21 redisplay uses an invalidated face_id with FACE_FROM_ID
22 which then returns a NULL pointer.  Said to happen with
23 isearch faces.
25 ** Investigate reported crashes in compact_small_strings.
27 ** Investigate reported crashes related to using an
28 invalid pointer from string_free_list.
31 * LOSSAGE
33 ** Clean up flymake.el to follow Emacs Lisp conventions.
35 * BUGS
37 ** Mailabbrev should quote addresses to correspond to RFC 822.
38 See http://article.gmane.org/gmane.emacs.devel/27585
40 ** The '@' character should not expand addresses in mailabbrev
41 See http://article.gmane.org/gmane.emacs.devel/27585
43 ** Bug in url-http-parse-headers, reported in
44 From: Vivek Dasmohapatra <vivek@zeus.com>
45 Date: Tue, 28 Sep 2004 16:13:13 +0100
47 Fetching a url with url-retrieve can reult in an anrbitrary buffer
48 being killed if a 401 (or possibly a 407) result is encountered:
50 url-http-parse-headers calls url-http-handle-authentication, 
51 which can call url-retrieve. 
53 This results in the current buffer being killed, and a new http buffer 
54 being generated. However, when the old http buffer is killed, emacs 
55 picks the top buffer from the list as the new current buffer, so by the 
56 time we get to the end of url-http-parse-headers, _that_ buffer is marked 
57 as dead even though it is not necessarily a url buffer, so next time the 
58 url libraries reap their dead buffers, an innocent bystander buffer is 
59 killed instead (and an obsolete http buffer may be left lying around too).
61 A possible fix (which I am currently using) is to call set-buffer
62 on the return value of url-http-parse-headers:
64       (case url-http-response-status
65         (401
66          ;; The request requires user authentication.  The response
67          ;; MUST include a WWW-Authenticate header field containing a
68          ;; challenge applicable to the requested resource.  The
69          ;; client MAY repeat the request with a suitable
70          ;; Authorization header field.
71          (url-mark-buffer-as-dead (current-buffer))
72          (set-buffer (url-http-handle-authentication nil)))
73 etc ....
75 which makes sure that it is the right http buffer that is current when 
76 we come to mark the http buffers as dead.
80 * GTK RELATED BUGS
82 ** Make GTK scrollbars behave like others w.r.t. overscrolling.
85 * REDISPLAY RELATED BUGS
87 ** Avoid unbreakable loops in redisplay.
89 Redisplay may loop if there is an error in some display property, e.g.
90      (space 'left-margin)
92 A fix would be to somehow disable handling of display properties if an error
93 is encountered.
95 ** Problem with cursor border around images and window-margins:
97 The border around the image when the cursor is on the image
98 flows into the right fringe and margin.
100      (progn
101        (auto-image-file-mode 1)
102        (find-file (concat data-directory "splash.xpm"))
103        (set-window-margins (selected-window) 25 25))
106 ** Problem with modeline and window margins:
108 The mode line's right "box" line is misplaced under the right margin,
109 rather than at the right window edge.
111 emacs -Q
112 (set-window-margins nil 25 25)
113 C-x 2
116 ** custom mode-line face makes Emacs freeze up
118 From: Stephen Berman <Stephen.Berman@gmx.net>
119 Date: Sun, 24 Oct 2004 02:08:56 +0200
121 1. Start Emacs with -q -no-site-file.
123 2. Type `M-x customize-face' and at the prompt `mode-line'.
125 3. In the Custom buffer for mode-line face
126    a. check width and give it the value `narrow';
127    b. check height and give it the value 120 in 1/10 pt;
128    c. check underline and give it the value `on' (or `colored');
129    d. check overline and give it the value `on' (or `colored').
131 4. Set for current session.
133 5. Invoke Ediff on any two files.
135 6. Now Emacs is frozen and consumes 95-99% of CPU.
137 The customizations in step 3 appear to be the minimum necessary to
138 induce this bug.  Leave out any one of them and Ediff runs without a
139 problem.  Also if the 1/10 point value of height is 130 or greater
140 there's no bug (with the default font family; with e.g. Helvetica the
141 bug is induced only by a value of 100 or less).
143 I've noticed this freeze up only when invoking Ediff.  The only thing
144 I've been able to do is kill Emacs externally, via top or with kill
145 when run in gdb, after interrupting.  When the freeze up happens
146 within a gdb session, there is no automatic debugging feedback.  After
147 interrupting I can get a backtrace, here's an example:
149 Update: Maybe only reveals itself when compiled with GTK+
152 ** line-spacing and Electric-pop-up-window
154 From: SAITO Takuya <tabmore@rivo.mediatti.net>
155 Date: Mon, 31 May 2004 02:08:10 +0900 (JST)
157 Electric-pop-up-window does not work well
158 if truncate long lines disabled and/or
159 `line-spacing' is set to positive integer.
161 For example, start emacs -Q --line-spacing 1, and type M-` .
162 Then, the last line of *Completions* buffer is not visible.
164 fit-window-to-buffer works well for me, so I guess
165 Electric-pop-up-window can use it.
168 ** Partial highlighting of wrapped overlay
170 From: Ralf Angeli <angeli@iwi.uni-sb.de>
171 Date: Mon, 18 Oct 2004 19:09:19 +0200
173 If you put
175 (let* ((length (+ (- (window-width) (current-column)) 40))
176        (start (point))
177        (end (+ (point) length))
178        (string (make-string length ?x))
179        ov)
180   (insert string)
181   (setq ov (make-overlay start end))
182   (overlay-put ov 'mouse-face 'highlight)
183   (overlay-put ov 'display string))
185 into the *scratch* buffer and type `C-x C-e' with point at the last
186 parenthesis, you will get a string which does not fit into the line
187 and has to be wrapped.  If you move over it with your mouse, you
188 should see that only the part on the second line is being highlighted.
189 The full string is highlighted only if the 'display property is not
190 set.
194 * DOCUMENTATION
196 ** Document Custom Themes.
198 ** Finish updating the Emacs Lisp manual.
200 ** Update the Emacs manual.
202 *** Update man/info.texi.
204 *** Update man/ack.texi.
206 ** Add missing years in copyright notices of all files.
208 ** Update AUTHORS.
210 ** Reorder NEWS entries.
212 ** Check the Emacs manual.
214 Each manual section should be proof-read by at least two people.
215 After each file name, on the same line or the following line, come the
216 names of the people who have checked it.
219 SECTION             READERS
220 -----------------------------
221 man/abbrevs.texi
222 man/anti.texi
223 man/basic.texi      "Luc Teirlinck"
224 man/buffers.texi    "Luc Teirlinck"
225 man/building.texi   "Ted Zlatanov" <tzz@lifelogs.com>
226 man/calendar.texi
227 man/cmdargs.texi
228 man/commands.texi   "Luc Teirlinck"
229 man/custom.texi
230 man/dired.texi
231 man/display.texi    "Luc Teirlinck"
232 man/emacs.texi      "Luc Teirlinck"
233 man/entering.texi   "Luc Teirlinck"
234 man/files.texi      "Luc Teirlinck"
235 man/fixit.texi      "Luc Teirlinck"
236 man/frames.texi     "Luc Teirlinck"
237 man/glossary.texi
238 man/help.texi       "Luc Teirlinck"
239 man/indent.texi     "Luc Teirlinck"
240 man/killing.texi    "Luc Teirlinck"
241 man/kmacro.texi     "Luc Teirlinck"
242 man/macos.texi
243 man/maintaining.texi
244 man/major.texi      "Luc Teirlinck"
245 man/mark.texi       "Luc Teirlinck"
246 man/mini.texi       "Luc Teirlinck"
247 man/misc.texi
248 man/msdog.texi
249 man/mule.texi       "Luc Teirlinck"
250 man/m-x.texi        "Luc Teirlinck"
251 man/picture.texi
252 man/programs.texi
253 man/regs.texi       "Luc Teirlinck"
254 man/rmail.texi
255 man/screen.texi     "Luc Teirlinck"
256 man/search.texi     "Luc Teirlinck"
257 man/sending.texi
258 man/text.texi       "Luc Teirlinck"
259 man/trouble.texi
260 man/windows.texi    "Luc Teirlinck"
261 man/xresources.texi
263 ** Check the Emacs Lisp manual.
265 Each manual section should be proof-read by at least two people.
266 After each file name, on the same line or the following line, come the
267 names of the people who have checked it.
269 SECTION                  READERS
270 ----------------------------------
271 lispref/abbrevs.texi     "Luc Teirlinck"
272 lispref/advice.texi      Joakim Verona <joakim@verona.se>
273 lispref/anti.texi
274 lispref/backups.texi     "Luc Teirlinck"
275 lispref/buffers.texi     "Luc Teirlinck"
276 lispref/calendar.texi    Joakim Verona <joakim@verona.se>
277 lispref/commands.texi    "Luc Teirlinck"
278 lispref/compile.texi     "Luc Teirlinck"
279 lispref/control.texi     "Luc Teirlinck"
280 lispref/customize.texi
281 lispref/debugging.texi   Joakim Verona <joakim@verona.se>
282 lispref/display.texi
283 lispref/edebug.texi
284 lispref/elisp.texi       "Luc Teirlinck"
285 lispref/errors.texi      "Luc Teirlinck"
286 lispref/eval.texi        "Luc Teirlinck"
287 lispref/files.texi       "Luc Teirlinck"
288 lispref/frames.texi      "Luc Teirlinck"
289 lispref/functions.texi   "Luc Teirlinck"
290 lispref/hash.texi        "Luc Teirlinck"
291 lispref/help.texi        "Luc Teirlinck"
292 lispref/hooks.texi
293 lispref/internals.texi   "Luc Teirlinck"
294 lispref/intro.texi       "Luc Teirlinck"
295 lispref/keymaps.texi     "Luc Teirlinck"
296 lispref/lists.texi       "Luc Teirlinck"
297 lispref/loading.texi     "Luc Teirlinck"
298 lispref/locals.texi
299 lispref/macros.texi      "Luc Teirlinck"
300 lispref/maps.texi
301 lispref/markers.texi     "Luc Teirlinck"
302 lispref/minibuf.texi     "Luc Teirlinck"
303 lispref/modes.texi
304 lispref/nonascii.texi    "Luc Teirlinck"
305 lispref/numbers.texi     "Luc Teirlinck"
306 lispref/objects.texi     "Luc Teirlinck"
307 lispref/os.texi          "Luc Teirlinck"
308 lispref/positions.texi   "Luc Teirlinck"
309 lispref/processes.texi
310 lispref/searching.texi   "Luc Teirlinck"
311 lispref/sequences.texi   "Luc Teirlinck"
312 lispref/streams.texi     "Luc Teirlinck"
313 lispref/strings.texi     "Luc Teirlinck"
314 lispref/symbols.texi     "Luc Teirlinck"
315 lispref/syntax.texi      "Luc Teirlinck"
316 lispref/text.texi
317 lispref/tips.texi        "Luc Teirlinck"
318 lispref/variables.texi   "Luc Teirlinck"
319 lispref/windows.texi     "Luc Teirlinck"
322 Local variables:
323 mode: outline
324 end: