Mercurial > emacs
annotate admin/emacs-pretesters @ 110410:f2e111723c3a
Merge changes made in Gnus trunk.
Reimplement nnimap, and do tweaks to the rest of the code to support that.
* gnus-int.el (gnus-finish-retrieve-group-infos)
(gnus-retrieve-group-data-early): New functions.
* gnus-range.el (gnus-range-nconcat): New function.
* gnus-start.el (gnus-get-unread-articles): Support early retrieval of
data.
(gnus-read-active-for-groups): Support finishing the early retrieval of
data.
* gnus-sum.el (gnus-summary-move-article): Pass the move-to group name
if the move is internal, so that nnimap can do fast internal moves.
* gnus.el (gnus-article-special-mark-lists): Add uid/active tuples, for
nnimap usage.
* nnimap.el: Rewritten.
* nnmail.el (nnmail-inhibit-default-split-group): New internal variable
to allow the mail splitting to not return a default group. This is
useful for nnimap, which will leave unmatched mail in the inbox.
* utf7.el (utf7-encode): Autoload.
Implement shell connection.
* nnimap.el (nnimap-open-shell-stream): New function.
(nnimap-open-connection): Use it.
Get the number of lines by using BODYSTRUCTURE.
(nnimap-transform-headers): Get the number of lines in each message.
(nnimap-retrieve-headers): Query for BODYSTRUCTURE so that we get the
number of lines.
Not all servers return UIDNEXT. Work past this problem.
Remove junk from end of file.
Fix typo in "bogus" section.
Make capabilties be case-insensitive.
Require cl when compiling.
Don't bug out if the LIST command doesn't have any parameters.
2010-09-17 Knut Anders Hatlen <kahatlen@gmail.com> (tiny change)
* nnimap.el (nnimap-get-groups): Don't bug out if the LIST command
doesn't have any parameters.
(mm-text-html-renderer): Document gnus-article-html.
2010-09-17 Julien Danjou <julien@danjou.info> (tiny fix)
* mm-decode.el (mm-text-html-renderer): Document gnus-article-html.
* dgnushack.el: Define netrc-credentials.
If the user doesn't have a /etc/services, supply some sensible port defaults.
Have `unseen-or-unread' select an unread unseen article first.
(nntp-open-server): Return whether the open was successful or not.
Throughout all files, replace (save-excursion (set-buffer ...)) with (with-current-buffer ... ).
Save result so that it doesn't say "failed" all the time.
Add ~/.authinfo to the default, since that's probably most useful for users.
Don't use the "finish" method when we're reading from the agent.
Add some more nnimap-relevant agent stuff to nnagent.el.
* nnimap.el (nnimap-with-process-buffer): Removed.
Revert one line that was changed by mistake in the last checkin.
(nnimap-open-connection): Don't error out when we can't make a connection
nnimap-related changes to avoid bugging out if we can't contact a server.
* gnus-start.el (gnus-get-unread-articles): Don't try to scan groups
from methods that are denied.
* nnimap.el (nnimap-possibly-change-group): Return nil if we can't log
in.
(nnimap-finish-retrieve-group-infos): Make sure we're not waiting for
nothing.
* gnus-sum.el (gnus-select-newsgroup): Indent.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Sat, 18 Sep 2010 10:02:19 +0000 |
parents | b92c3979701c |
children | ef719132ddfa |
rev | line source |
---|---|
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
1 Here are the guidelines for being an Emacs pretester. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
2 If you would like to do this, say so, and I'll add you to |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
3 the pretest list. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
4 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
5 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
6 Information for Emacs Pretesters |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
7 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
8 The purpose of Emacs pretesting is to verify that the new Emacs |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
9 distribution, about to be released, works properly on your system *with |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
10 no change whatever*, when installed following the precise |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
11 recommendations that come with the Emacs distribution. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
12 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
13 Here are some guidelines on how to do pretesting so as to make it |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
14 helpful. All of them follow from common sense together with the |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
15 nature of the purpose and the situation. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
16 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
17 Please save this file, and reread it when a new series of pretests |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
18 starts. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
19 |
76061
d153e68474d4
Update location of pretest tarball.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
62992
diff
changeset
|
20 * Get the pretest from gnu/emacs/pretest/emacs-MM.0.NN.tar.gz |
d153e68474d4
Update location of pretest tarball.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
62992
diff
changeset
|
21 on alpha.gnu.org. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
22 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
23 * After a few days of testing, if there are no problems, please report |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
24 that Emacs works for you and what configuration you are testing it on. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
25 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
26 * If you want to communicate with other pretesters, send mail to |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
27 emacs-pretesters@gnu.org. I don't use that mailing list when I send |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
28 to you because I've found that mailing lists tend to amplify random |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
29 noise into long discussions or even arguments, and that can waste a |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
30 lot of time. But when you have a reason to ask other pretesters for |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
31 help, you can do it that way. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
32 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
33 * It is absolutely vital that you report even the smallest change or |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
34 departure from the standard sources and procedure. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
35 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
36 Otherwise, you are not testing the same program that we asked you to |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
37 test. Testing a different program is usually of no use whatever. It |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
38 can even cause trouble, if you fail to tell us that you tested some |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
39 other program instead of what we are about to release. We might think |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
40 that Emacs works, when in fact it has not even been tried, and might |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
41 have a glaring fault. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
42 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
43 * Don't use a site-load.el file or a site-init.el file when you pretest. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
44 Using either of those files means you are not testing Emacs as a typical |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
45 site would use it. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
46 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
47 Actually, it does no harm to test Emacs with such customizations *as |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
48 well as* testing it "out of the box". Anything you do that could find |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
49 a bug is useful, as long as you make sure we know exactly what you |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
50 did. The important point is that testing with local changes is no |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
51 substitute for testing Emacs exactly as it is distributed. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
52 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
53 * Even changing the compilation options counts as a change in the |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
54 program. The Emacs sources specify which compilation options to use. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
55 Some of them are specified in makefiles, and some in machine-specific |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
56 configuration files. They also give you ways to override this--but if |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
57 you do, then you are not testing what ordinary users will do. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
58 Therefore, when pretesting, it is vital to test with the default |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
59 compilation options. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
60 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
61 (Testing with a different set of options can be useful *in addition*, |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
62 but not *instead of* the default options.) |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
63 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
64 * The machine and system configuration files of Emacs are parts of |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
65 Emacs. So when you test Emacs, you need to do it with the |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
66 configuration files that come with Emacs. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
67 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
68 If Emacs does not come with configuration files for a certain machine, |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
69 and you test it with configuration files that don't come with Emacs, |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
70 this is effectively changing Emacs. Because the crucial fact about |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
71 the planned release is that, without changes, it doesn't work on that |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
72 machine. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
73 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
74 To make Emacs work on that machine, we would need to install new |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
75 configuration files. That is not out of the question, since it is |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
76 safe--it certainly won't break any other machines that already work. |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
77 But you will have to rush in the legal papers to give the FSF |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
78 permission to use such a large piece of text. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
79 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
80 * Look in the etc/MACHINES file. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
81 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
82 The etc/MACHINES file says which configuration files to use for your |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
83 machine, so use the ones that are recommended. If you guess, you might |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
84 guess wrong and encounter spurious difficulties. What's more, if you |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
85 don't follow etc/MACHINES then you aren't helping to test that its |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
86 recommendations are valid. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
87 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
88 The etc/MACHINES file may describe other things that you need to do |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
89 to make Emacs work on your machine. If so, you should follow these |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
90 recommendations also, for the same reason. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
91 |
106802
b92c3979701c
Replace emacs-pretest-bug with bug-gnu-emacs mailing list.
Glenn Morris <rgm@gnu.org>
parents:
96303
diff
changeset
|
92 * Send your problem reports to bug-gnu-emacs@gnu.org. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
93 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
94 Sometimes we won't know what to do about a system-dependent issue, and |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
95 we may need people to say what happens if you try a certain thing on a |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
96 certain system. When this happens, we'll send out a query. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
97 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
98 * Don't delay sending information. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
99 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
100 When you test on a system and encounter no problems, please report it |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
101 right away. That way, we will know that someone has tested Emacs on |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
102 that kind of system. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
103 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
104 Please don't wait for several days "to see if it really works before |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
105 you say anything." Tell us right away that Emacs seems basically to |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
106 work; then, if you notice a problem a few days later, tell us |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
107 immediately about that when you see it. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
108 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
109 It is okay if you double check things before reporting a problem, such |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
110 as to see if you can easily fix it. But don't wait very long. A good |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
111 rule to use in pretesting is always to report every problem on the |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
112 same day you encounter it, even if that means you can't find a |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
113 solution before you report the problem. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
114 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
115 I'd much rather hear about a problem today and a solution tomorrow |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
116 than get both of them tomorrow at the same time. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
117 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
118 * Make each bug report self-contained. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
119 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
120 If you refer back to another message, whether from you or from someone |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
121 else, then it will be necessary for anyone who wants to investigate |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
122 the bug to find the other message. This may be difficult, it is |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
123 probably time-consuming. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
124 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
125 To help save our time, simply copy the relevant parts of any previous |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
126 messages into your own bug report. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
127 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
128 In particular, if we ask you for more information because a bug report |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
129 was incomplete, it is best to send me the *entire* collection of |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
130 relevant information, all together. If you send just the additional |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
131 information, that makes extra work for us. There is even a risk that |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
132 we won't remember what question you are sending the answer to. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
133 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
134 * When you encounter a bug that manifests itself as a Lisp error, |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
135 try setting debug-on-error to t and making the bug happen again. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
136 Then you will get a Lisp backtrace. Including that in your bug report |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
137 is very useful. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
138 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
139 * For advice on debugging, see etc/DEBUG. |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
140 |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
141 * Debugging optimized code is possible, if you compile with GCC, but |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
142 in some cases the optimized code can be confusing. If you are not |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
143 accustomed to that, recompile Emacs without -O. One way to do this is |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
144 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
145 make clean |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
146 make CFLAGS=-g |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
147 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
148 * Configure tries to figure out what kind of system you have by |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
149 compiling and linking programs which calls various functions and looks |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
150 at whether that succeeds. The file config.log contains any messages |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
151 produced by compilers while running configure, to aid debugging if |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
152 configure makes a mistake. But note that config.cache reads: |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
153 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
154 # Giving --cache-file=/dev/null disables caching, for debugging configure. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
155 |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
44873
diff
changeset
|
156 or more simply, |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
157 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
158 rm config.cache |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
159 ./configure |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
160 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
161 * Don't try changing Emacs *in any way* during pretest unless it fails |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
162 to work unchanged. |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
163 |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
164 * Always be precise when talking about changes you have made. Show |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
165 things rather than describing them. Use exact filenames (relative to |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
166 the main directory of the distribution), not partial ones. For |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
167 example, say "I changed Makefile" rather than "I changed the |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
168 makefile". Instead of saying "I defined the MUMBLE macro", send a |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
169 diff. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
170 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
171 * Always use `diff -c' to make diffs. If you don't include context, it |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
172 may be hard for us to figure out where you propose to make the |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
173 changes. So we might ignore your patch. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
174 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
175 * When you write a fix, keep in mind that we can't install a change |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
176 that *might* break other systems without the risk that it will fail to |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
177 work and therefore require an additional cycle of pretesting. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
178 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
179 People often suggest fixing a problem by changing config.h or |
96303 | 180 src/Makefile to do something special that a particular system needs. |
181 Sometimes it is totally obvious that such changes would break Emacs | |
182 for almost all users. We can't possibly make a change like that. All | |
183 we can do is ask you to find a fix that is safe to install. | |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
184 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
185 Sometimes people send fixes that *might* be an improvement in |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
186 general--but it is hard to be sure of this. I can install such |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
187 changes some of the time, but not during pretest, when I am trying to |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
188 get a new version to work reliably as quickly as possible. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
189 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
190 The safest changes for us to install are changes to the s- and m- |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
191 files. At least those can't break other systems. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
192 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
193 Another safe kind of change is one that uses a conditional to make |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
194 sure it will apply only to a particular kind of system. Ordinarily, |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
195 that is a bad way to solve a problem, and I would want to find a |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
196 cleaner alternative. But the virtue of safety can make it superior at |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
197 pretest time. |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
198 |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
199 * Don't suggest changes during pretest to add features or make |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
200 something cleaner. Every change risks introducing a bug, so I won't |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
201 install a change during pretest unless it is *necessary*. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
202 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
203 * If you would like to suggest changes for purposes other than fixing |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
204 user-visible bugs, don't wait till pretest time. Instead, send them |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
205 after we have made a release that proves to be stable. That is the |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
206 easiest time to consider such suggestions. If you send them at |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
207 pretest time, we will have to defer them till later, and that might |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
208 mean we forget all about them. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
209 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
210 * In some cases, if you don't follow these guidelines, your |
62992
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
211 information might still be useful, but we would have to do more work |
0e745831d181
Refer to etc/DEBUG instead of duplicating it.
Richard M. Stallman <rms@gnu.org>
parents:
52401
diff
changeset
|
212 to make use of it. That might cause it to fall by the wayside. |
44873
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
213 |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
214 Local Variables: |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
215 mode: text |
a3601f81ab2a
New file with information for Emacs pretesters.
Pavel Janík <Pavel@Janik.cz>
parents:
diff
changeset
|
216 End: |
52401 | 217 |
218 # arch-tag: caf47b2c-b56b-44f7-a760-b5bfbed15fd3 |