comparison etc/BETA @ 743:968a715e8c6f

[xemacs-hg @ 2002-02-04 13:19:13 by stephent] update to current reality <87vgddxu9t.fsf@tleepslib.sk.tsukuba.ac.jp>
author stephent
date Mon, 04 Feb 2002 13:19:17 +0000
parents 37441ddea94d
children ccaf90c5a53a
comparison
equal deleted inserted replaced
742:ececdfb867ce 743:968a715e8c6f
1 -*- mode:outline -*- 1 -*- mode:outline -*-
2 2
3 * Introduction 3 * Introduction
4 ============== 4 ==============
5 5
6 You are running an experimental version of XEmacs. Please do not 6 You are running a potentially unstable version of XEmacs. Please do
7 report problems with Beta XEmacs to comp.emacs.xemacs. Report them to 7 not report problems with Beta XEmacs to comp.emacs.xemacs. Report
8 xemacs-beta@xemacs.org. 8 them to xemacs-beta@xemacs.org.
9 9
10 ** XEmacs Beta Mailing List 10 ** Mailing Lists
11 =========================== 11 ================
12 12
13 *** Subscribing 13 *** XEmacs Beta Mailing List
14 --------------- 14 ----------------------------
15 15
16 If you are not subscribed to the XEmacs beta list you should be. Send 16 If you are not subscribed to the XEmacs beta list you should be.
17 an email message to xemacs-beta-request@xemacs.org with `subscribe' 17 Currently all discussion of development issues, including bug reports
18 (without the quotes) as the BODY of the message. 18 and coding discussion, takes place on the XEmacs Beta mailing list.
19 19 Only patches and administrative actions regarding patches are sent
20 *** Unsubscribing 20 elsewhere (to the XEmacs Patches list).
21 ----------------- 21
22 22 ** XEmacs Patches Mailing List
23 To unsubscribe from the list send an email message to 23 ==============================
24 xemacs-beta-request@xemacs.org with `unsubscribe' (without the quotes) 24
25 as the BODY of the message. 25 XEmacs Patches records proposed changes to XEmacs, and their
26 26 disposition. It is open subscription, but only patches and actions by
27 *** Administrivia 27 members of the XEmacs Review Board should be posted to this list. You
28 ----------------- 28 can follow progress of your patch by subscribing to the mailing list
29 29 or in the archives.
30 The XEmacs beta list is managed by the Majordomo mailing list package, 30
31 and the usual Majordomo commands work. Do not send mailing list 31 ** List Administrivia
32 requests to the main address (xemacs-beta@xemacs.org), always send 32 =====================
33 them to xemacs-beta-request@xemacs.org. If you have problems with the 33
34 list itself, they should be brought to the attention of the XEmacs 34 In the descriptions below, the word LIST (all uppercase) is a
35 Mailing List manager Jason Mastaler <list-manager@xemacs.org>. 35 variable. Substitute "beta" or "patches" as appropriate (to get
36 36 "xemacs-beta" as the mailbox for the XEmacs Beta mailing list, or
37 http://www.xemacs.org/Lists/#xemacs-beta for its URL).
38
39 The XEmacs mailing lists are managed by the Mailman mailing list
40 package, and the usual Mailman commands work. Do not send mailing
41 list requests to the main address (xemacs-LIST@xemacs.org), always
42 send them to xemacs-LIST-request@xemacs.org. If you have problems
43 with the list itself, they should be brought to the attention of the
44 XEmacs Mailing List manager <list-manager@xemacs.org> (the same
45 mailbox, "list-manager", for all lists). All public mailing lists
46 have searchable archives. The URL is
47
48 http://list-archive.xemacs.org/xemacs-LIST
49
50 *** Managing your subscription via the Web
51 ------------------------------------------
52
53 Subscription, unsubscription, and options (such as digests and
54 temporarily suspending delivery) can be accomplished via the web
55 interface at http://www.xemacs.org/Lists/#xemacs-LIST.
56
57 *** Subscribing by e-mail
58 -------------------------
59
60 Send an email message to xemacs-LIST-request@xemacs.org with
61 `subscribe' (without the quotes) as the BODY of the message.
62
63 *** Unsubscribing by e-mail
64 ---------------------------
65
66 Send an email message to xemacs-LIST-request@xemacs.org with
67 `unsubscribe' (without the quotes) as the BODY of the message.
37 68
38 ** Beta Release Schedule 69 ** Beta Release Schedule
39 ======================== 70 ========================
40 71
41 The URL ftp://ftp.xemacs.org/pub/xemacs/beta/README always contains 72 Betas are now released rather sporadically. We would like to achieve
42 the best estimate of when the next beta XEmacs will be released. For 73 a weekly release schedule, but personnel availability does not
43 weekend betas the release time is generally in the vicinity of 2PM to 74 permit. For access to the most recent code, use CVS (see
44 5PM US Pacific Time (Universal Time minus 8 hours). For weekday 75 http://www.xemacs.org/Develop/cvsaccess.html for more information).
45 betas, the release time is generally in the vicinity of 8PM to 76 If you have need for FTP access, please let us know. It will make it
46 Midnight US Pacific Time on the listed day. 77 more likely that we release betas more often.
47
48 Betas are nominally a week apart, scheduled on every Saturday.
49 Midweek releases are made when a serious enough problem warrants it.
50
51 78
52 ** Reporting Problems 79 ** Reporting Problems
53 ===================== 80 =====================
54 81
55 The best way to get problems fixed in XEmacs is to submit good problem 82 The best way to get problems fixed in XEmacs is to submit good problem
64 possible to recreate problems which afflict a specific platform. 91 possible to recreate problems which afflict a specific platform.
65 The line numbers in the C stack backtrace help isolate where the 92 The line numbers in the C stack backtrace help isolate where the
66 problem is actually occurring. 93 problem is actually occurring.
67 94
68 2. Attempt to recreate the problem starting with an invocation of 95 2. Attempt to recreate the problem starting with an invocation of
69 XEmacs with `xemacs -q -no-site-file'. Quite often, problems are 96 XEmacs with `xemacs -q -no-site-file -no-autoloads'. Quite often,
70 due to package interdependencies, and the like. An actual bug in 97 problems are due to package interdependencies, and the like. An
71 XEmacs should be reproducible in a default configuration without 98 actual bug in XEmacs should be reproducible in a default
72 loading any special packages (or the one or two specific packages 99 configuration without loading any special packages (or the one or
73 that cause the bug to appear). 100 two specific packages that cause the bug to appear). If you have
101 trouble getting anything to work at all with the above invocation,
102 use `xemacs -q -no-site-file' instead. If you need to load your
103 user init file or the site file to get the problem to occur, then
104 it has something to do with them, and you should try to isolate
105 the issue in those files.
74 106
75 3. A picture can be worth a thousand words. When reporting an 107 3. A picture can be worth a thousand words. When reporting an
76 unusual display, it is generally best to capture the problem in a 108 unusual display, it is generally best to capture the problem in a
77 screen dump and include that with the problem report. The easiest 109 screen dump and include that with the problem report. The easiest
78 way to get a screen dump is to use the xv program and its grab 110 way to get a screen dump is to use the xv program and its grab
82 114
83 ** Getting the Source 115 ** Getting the Source
84 ===================== 116 =====================
85 117
86 In addition to the normal tar distribution, XEmacs source is now 118 In addition to the normal tar distribution, XEmacs source is now
87 available via CVS. Please see the URL: <URL:http://cvs.xemacs.org/~xemacs/>. 119 available via CVS. Please see
120
121 http://www.xemacs.org/Develop/cvsaccess.html
88 122
89 * Compiling Beta XEmacs 123 * Compiling Beta XEmacs
90 ======================= 124 =======================
91 125
92 ** Building an XEmacs from patches 126 ** Building an XEmacs from patches
134 --cflags="-mpentium -march=pentium -O6 -g -fno-peep-spills" \ 168 --cflags="-mpentium -march=pentium -O6 -g -fno-peep-spills" \
135 --error-checking=all --debug=yes \ 169 --error-checking=all --debug=yes \
136 --with-scrollbars=athena3d --with-dialogs=athena3d \ 170 --with-scrollbars=athena3d --with-dialogs=athena3d \
137 --with-mule --with-xfs --with-xim=xlib 171 --with-mule --with-xfs --with-xim=xlib
138 172
139 Part of the configure output is a summary that looks something like: 173 Part of the configure output is a summary that looks something like
174 the following. (In XEmacs 21.1 and later, this summary is also
175 available as the file Installation in the top directory of your build
176 tree, and via the command M-x describe-installation.)
140 177
141 uname -a: Linux altair.xemacs.org 2.0.32 #2 Sun Nov 16 18:52:14 PST 1997 i586 178 uname -a: Linux altair.xemacs.org 2.0.32 #2 Sun Nov 16 18:52:14 PST 1997 i586
142 179
143 ./configure '--cflags=-mpentium -march=pentium -O6 -g -fno-peep-spills' '--error-checking=all' '--debug=yes' '--with-scrollbars=athena3d' '--with-dialogs=athena3d' '--with-mule' '--with-xfs' '--with-xim=xlib' 180 ./configure '--cflags=-mpentium -march=pentium -O6 -g -fno-peep-spills' '--error-checking=all' '--debug=yes' '--with-scrollbars=athena3d' '--with-dialogs=athena3d' '--with-mule' '--with-xfs' '--with-xim=xlib'
144 181
226 available by performing M-x describe-installation inside XEmacs. 263 available by performing M-x describe-installation inside XEmacs.
227 264
228 5. Any other unusual items you feel should be brought to the attention 265 5. Any other unusual items you feel should be brought to the attention
229 of the developers. 266 of the developers.
230 267
268
269 * Patching XEmacs
270 =================
271
231 ** Creating patches for submission 272 ** Creating patches for submission
232 ================================== 273 ==================================
233 274
234 Patches to XEmacs should be mailed to <xemacs-patches@xemacs.org>. 275 Patches to XEmacs should be mailed to <xemacs-patches@xemacs.org>.
235 Each patch will be reviewed by the patches review board, and will be 276 Each patch will be reviewed by the patches review board, and will be
236 acked and added to the distribution, or rejected with an explanation. 277 acknowledged and added to the distribution, or rejected with an
278 explanation. Progress of the patch is tracked on the XEmacs Patches
279 mailing list, which is open subscription.
237 280
238 Patches to XEmacs Lisp packages should be sent to the maintainer of 281 Patches to XEmacs Lisp packages should be sent to the maintainer of
239 the package. If the maintainer is listed as `XEmacs Development Team' 282 the package. If the maintainer is listed as `XEmacs Development Team'
240 patches should be sent to <xemacs-patches@xemacs.org>. 283 patches should be sent to <xemacs-patches@xemacs.org>.
241 284
242 Emailed patches should preferably be sent in MIME format and quoted 285 Emailed patches should preferably be sent in MIME format and quoted
243 printable encoding (if necessary). 286 printable encoding (if necessary).
244 287
245 When making patches, please use the `-u' option, or if your diff 288 The simplest way to create well-formed patches is to use CVS and
246 doesn't support it, `-c'. Using ordinary (context-free) diffs are 289 Didier Verna's Patcher library (available as patcher.el in the
247 notoriously prone to error, since line numbers tend to change when 290 xemacs-devel package). Patcher is new and requires some setup, but
291 most of the core developers are now using it for their own patches.
292 Patcher also can be configured to create patches for several projects,
293 and recognize the project from the directory it is invoked in. This
294 makes it a useful general tool (as long as XEmacs-style patches are
295 accepted at your other projects, which is likely since they conform to
296 the GNU standards).
297
298 When making patches by hand, please use the `-u' option, or if your
299 diff doesn't support it, `-c'. Using ordinary (context-free) diffs
300 are notoriously prone to error, since line numbers tend to change when
248 others make changes to the same source file. 301 others make changes to the same source file.
249 302
250 An example of the `diff' usage: 303 An example of the `diff' usage:
251 304
252 $ diff -u OLDFILE NEWFILE 305 $ diff -u OLDFILE NEWFILE
259 XEmacs source directory: 312 XEmacs source directory:
260 313
261 $ cp -p lwlib/xlwmenu.c lwlib/xlwmenu.c.orig 314 $ cp -p lwlib/xlwmenu.c lwlib/xlwmenu.c.orig
262 hack, hack, hack.... 315 hack, hack, hack....
263 $ diff -u lwlib/xlwmenu.c.orig lwlib/xlwmenu.c 316 $ diff -u lwlib/xlwmenu.c.orig lwlib/xlwmenu.c
264
265 Each patch should be accompanied by an update to the appropriate
266 ChangeLog file. Please don't mail patches to ChangeLog because they
267 have an extremely high rate of failure; just mail us the new part of
268 the ChangeLog you added.
269 317
270 Also note that if you cut & paste from an xterm to an XEmacs mail buffer 318 Also note that if you cut & paste from an xterm to an XEmacs mail buffer
271 you will probably lose due to tab expansion. The best thing to do is 319 you will probably lose due to tab expansion. The best thing to do is
272 to use an XEmacs shell buffer to run the diff commands, or ... 320 to use an XEmacs shell buffer to run the diff commands, or ...
273 M-x cd to the appropriate directory, and issue the command `C-u M-!' from 321 M-x cd to the appropriate directory, and issue the command `C-u M-!' from
274 within XEmacs. 322 within XEmacs.
275 323
276 Guidelines for writing ChangeLog entries is governed by the GNU coding
277 standards. Please see
278 http://www.gnu.org/prep/standards_toc.html [Change Logs section]
279 for details.
280
281 Patches should be as single-minded as possible. Mammoth patches can 324 Patches should be as single-minded as possible. Mammoth patches can
282 be very difficult to place into the right slot. They are much easier 325 be very difficult to place into the right slot. They are much easier
283 to deal with when broken down into functional or conceptual chunks. 326 to deal with when broken down into functional or conceptual chunks.
284 The patches submitted by Kyle Jones and Hrvoje Niksic are stellar 327 The patches submitted by Kyle Jones and Hrvoje Niksic are stellar
285 examples of how to Do The Right Thing. 328 examples of how to Do The Right Thing.
286 329
287 ** Packages directory on the FTP Site 330 Each patch should be accompanied by an update to the appropriate
288 ===================================== 331 ChangeLog file. Guidelines for writing ChangeLog entries is governed
289 332 by the GNU coding standards. Please see
290 The packages directory 333 http://www.gnu.org/prep/standards_toc.html [Change Logs section]
291 ftp://ftp.xemacs.org/pub/xemacs/beta/xemacs-21.0/packages/ 334 for details.
292 335
293 is divided into subdirectory by the major type of package. 336 Do not submit context diffs (either -c or -u) of ChangeLogs. Because
294 337 of the "stack" nature of ChangeLogs (new entries are always pushed on
295 drwxr-xr-x 2 beta-f beta-f 1024 Oct 10 00:43 binary-packages 338 the top), context diffs will fail to apply more often than they
296 drwxr-xr-x 2 beta-f beta-f 512 Oct 10 00:44 package-sources 339 succeed. Simply cutting and pasting the entry from an Emacs buffer to
297 drwxr-xr-x 2 beta-f beta-f 512 Oct 10 00:44 utils 340 the mail buffer (beware of tab expansion!) is probably easiest. The
298 341 Patcher library also will set up your ChangeLogs for you, and copy
299 ** Support Utilities (utils) 342 them to the mail. Contextless unified diffs (-U 0) are also
300 ============================ 343 acceptable but perhaps more trouble than they are worth.
301 344
302 The utils directory contains tools to deal with current Lisp sources that 345 *** Patch discussion etiquette
303 have not had yet gotten XEmacs package integration. The script `xpackage.sh' 346 -------------------------------
304 is used with Quassia Gnus. Edit the appropriate variables at the top of 347
305 the script to reflect the local configuration and run it in the top level 348 If you intend a patch for _application_ to the sources as is, _always_
306 directory of a Quassia Gnus source tree to install an update to Quassia Gnus. 349 post it to xemacs-patches, even if there are minor points you would
307 350 like to have discussed by others. Not doing so will resulting in
308 ** Binary package installation (binary-packages) 351 patches getting "lost". If you expect that the patch will not be
352 acceptable, but are using it to stimulate discussion, then don't post
353 to xemacs-patches. Intermediate cases are up to your judgement;
354 unless you're sure you'll follow up with a "real" patch, better to err
355 on the side of posting to xemacs-patches.
356
357 Discussion of the _content_ of the patch (ie responses to reviewer
358 comments beyond "that's right, ok, I'll do it your way") should _always_
359 be posted to xemacs-beta. (We may split xemacs-beta into code
360 discussion and stuff that is more relevant to non-developer testers at
361 some point, but at this point xemacs-beta is the correct place for
362 this.)
363
364 If discussion results in a bright idea and you come up with a new
365 patch, normally you should post it to both mailing lists. The people
366 discussing on XEmacs Beta will want to know the outcome of the thread,
367 and you need to submit to XEmacs Patches as the "list of record."
368
369 If the old patch has been applied to CVS, then just submit the new one
370 as usual. If it has not been applied, then it is best to submit a new
371 patch against CVS. If possible do this as a reply to the original
372 patch post, or something following it in the thread. (The point is to
373 get the original patch post's Message-ID in your References header.)
374 In this case, also use the keyword SUPERCEDES in the Subject header to
375 indicate that the old patch is no longer valid, and that this one
376 replaces it.
377
378 These rules will result in a fair number of cross posts, but we don't
379 yet have a better way to handle that.
380
381 Note: Developers should never post to xemacs-patches unless there is a
382 patch in the post. We plan to enforce this with an automatic filter.
383
384 The exceptions are administrative. If you have commit authorization,
385 then post a short COMMIT notice to xemacs-patches when you commit to
386 CVS. Members of the Review Board will also post short notices of
387 administrative action (APPROVE, VETO, QUERY, etc) to xemacs-patches.
388
389 * Packages
390 ====================================
391
392 [Note: these instructions have been partly updated, but not carefully
393 reviewed in some time. Caveat tester.]
394
395 Starting with XEmacs 21.1, much of the functionality of XEmacs has
396 been unbundled into "the packages." For more information about the
397 package system, see the Info nodes on Packages (in the XEmacs User
398 Manual) and on Packaging (in the Lisp Reference).
399
400 When bootstrapping XEmacs, you may need to manually install some
401 packages (at least xemacs-base and efs). These packages are available
402 by FTP at ftp://ftp.xemacs.org/pub/xemacs/packages/.
403
404 ** Binary package installation
309 ================================================ 405 ================================================
310 406
311 Prerequisite: XEmacs 21.0-b1. 407 Prerequisite: XEmacs 21.0-b1.
312 408
313 Binary packages are complete entities that can be untarred at the top 409 Binary packages are complete entities that can be untarred at the top
324 auto-autoloads.el (global symbols) and custom-load.el (Customization 420 auto-autoloads.el (global symbols) and custom-load.el (Customization
325 groups) must be kept in synch. Assuming one is manipulating a 421 groups) must be kept in synch. Assuming one is manipulating a
326 directory called `lisp-utils', the command to rebuild the 422 directory called `lisp-utils', the command to rebuild the
327 auto-autoloads.el file is: 423 auto-autoloads.el file is:
328 424
329 xemacs-21.0 -vanilla -batch -l autoload -f batch-update-directory lisp-utils 425 xemacs -vanilla -batch -l autoload -f batch-update-directory lisp-utils
330 426
331 The command to rebuild the custom-load.el file is: 427 The command to rebuild the custom-load.el file is:
332 428
333 xemacs-21.0 -vanilla -batch -l cus-dep \ 429 xemacs -vanilla -batch -l cus-dep -f Custom-make-dependencies lisp-utils
334 -f Custom-make-dependencies lisp-utils
335 430
336 To bytecompile both of these files the command is: 431 To bytecompile both of these files the command is:
337 432
338 xemacs-21.0 -vanilla -batch -f batch-byte-compile \ 433 xemacs -vanilla -batch -f batch-byte-compile \
339 lisp-utils/auto-autoloads.el lisp-utils/custom-load.el 434 lisp-utils/auto-autoloads.el lisp-utils/custom-load.el
340 435
341 ** Building XEmacs and XEmacs packages from scratch 436 ** Building XEmacs and XEmacs packages from scratch
342 =================================================== 437 ===================================================
343 438