summaryrefslogtreecommitdiff
path: root/admin/notes
diff options
context:
space:
mode:
Diffstat (limited to 'admin/notes')
-rw-r--r--admin/notes/bug-triage106
-rw-r--r--admin/notes/copyright6
-rw-r--r--admin/notes/unicode13
3 files changed, 119 insertions, 6 deletions
diff --git a/admin/notes/bug-triage b/admin/notes/bug-triage
new file mode 100644
index 00000000000..2974eee1792
--- /dev/null
+++ b/admin/notes/bug-triage
@@ -0,0 +1,106 @@
+HOW TO TRIAGE EMACS BUGS -*- outline -*-
+
+This document just describes the procedure of triaging bugs, for information on
+how to work with the bug tracker, see the bugtracker file in this same directory
+for the basics. You can also install the debbugs ELPA package for access to M-x
+debbugs-gnu, an emacs interface to debbugs, and M-x debbugs-org, an emacs
+interface via org-mode.
+
+* Bug backlog triage procedure
+
+The goal of this triage is to prune down the list of old bugs, closing
+the ones that are not reproducible on the current release.
+
+ 1. To start, enter debbugs mode (either debbugs-gnu, debbugs-org, or via the
+ web browser), and accept the default list option of bugs that have severity
+ serious, important, or normal.
+ 2. For each bug, we want to primarily make sure it is still
+ reproducible. A bug can and should stay open as long as it is
+ still a bug and no one has fixed it. The following is a
+ suggested checklist to follow for handling these bugs, along with
+ example replies. Closing, tagging, etc., are done
+ with debbugs control messages, which in debbugs-gnu is initiated
+ with a "C".
+ [ ] Read the mail thread for the bug. Find out if anyone has
+ been able to reproduce this on the current release. If
+ someone has been able to, then your work is finished for this
+ bug.
+ [ ] Make sure there's enough information to reproduce the bug.
+ It should be very clear how to reproduce. If not, please ask
+ for specific steps to reproduce. If you don't get them, and
+ you can't reproduce without them, you can tag the bug report
+ as "unreproducible" and close the bug report. Sometimes this
+ involves specific hardware such as particular models of
+ keyboards, or it may simply involve a platform you don't have
+ access to. It's fine to ignore those, and let a future
+ triager that is better equipped to reproduce it handle it.
+
+ An example reply asking for clear reproduction steps would be
+ something like: "Hi! In the interest of seeing whether this
+ is reproducible, and to aid anyone who will look at this bug
+ in the future, can you please give instructions on how to
+ reproduce this bug starting from an emacs without
+ configuration ("emacs -Q")?
+ [ ] If there is enough detail to reproduce, but no one has
+ mentioned being able to reproduce on the current release,
+ read the bug description and attempt to reproduce on an emacs
+ started with "emacs -Q" (the goal is to not let our personal
+ configs interfere with bug testing).
+
+ If you can reproduce, then reply on the thread (either on the
+ original message, or anywhere you find appropriate) that you
+ can reproduce this on the current release. If your
+ reproduction gives additional info (such as a backtrace),
+ then add that as well, since it will help whoever attempts to
+ fix it.
+
+ Example reply: "I'd just like to add that I can reproduce
+ this on the latest version of Emacs, Emacs 25."
+
+ If you can't reproduce, state that you can't reproduce it on
+ the current release, ask if they can try again against the
+ current release. Tag the bug as "unreproducible". Wait a
+ few weeks for their reply - if they can reproduce it, then
+ that's great, otherwise close the bug report.
+
+ Example reply: "I've attempted to reproduce this on the
+ latest version of emacs, Emacs 25, but haven't been able to.
+ Can you try to reproduce this on this version, and let us
+ know if you are able to? If I don't hear back in a few
+ weeks, I'll just close this bug as unreproducible."
+ [ ] Check that the priority is reasonable. Most bugs should be
+ marked as normal, but crashers and security issues can be
+ marked as serious.
+ 3. Your changes will take some time to take effect. After a period of minutes
+ to hours, you will get a mail telling you the control message has been
+ processed. At this point, if there were no errors detected, you and
+ everyone else can see your changes. If there are errors, read the error
+ text - if you need help, consulting the bugtracker documentation in this
+ same directory.
+
+* New bug triage process
+
+The goal of the new bug triage process is similar to the backlog triage process,
+except that the focus is on prioritizing the bug, and making sure it is has
+necessary information for others to act on.
+
+For each new bug, ask the following questions:
+
+ 1. Is the bug report written in a way to be easy to reproduce (starts from
+ emacs -Q, etc.)? If not, ask the reporter to try and reproduce it on an
+ emacs without customization.
+ 2. Is the bug report written against the latest emacs? If not, try to
+ reproduce on the latest version, and if it can't be reproduced, ask the
+ reporter to try again with the latest version.
+ 3. Is the bug the same as another bug? If so, merge the bugs.
+ 4. What is the priority of the bug? Add a priority: serious, important,
+ normal, minor, or wishlist.
+ 5. Who should be the owner? This depends on what component the bug is part
+ of. You can look at the admin/MAINTAINERS file (then you can just search
+ emacs-devel to match the name with an email address).
+
+In the debbugs-gnu buffer, bugs are marked in the "State" column
+according to the communication flow. Red bugs mean that nobody has
+answered, these bugs need primary attention. Green bugs flag that
+there is a recent communication about, and orange bugs flag that the
+bug hasn't been touched for at least two weeks.
diff --git a/admin/notes/copyright b/admin/notes/copyright
index 2dc33c164a9..6cfc331914c 100644
--- a/admin/notes/copyright
+++ b/admin/notes/copyright
@@ -45,9 +45,9 @@ available.
The definition of triviality is a little vague, but a rule of thumb is
that any file with less than 15 lines of actual content is trivial. If
-a file is auto-generated (eg ldefs-boot.el) from another one in the
-repository, then it does not really matter about adding a copyright
-statement to the generated file.
+a file is auto-generated from another one in the repository, then it
+does not really matter about adding a copyright statement to the
+generated file.
Legal advice says that we could, if we wished, put a license notice
even in trivial files, because copyright law in general looks at the
diff --git a/admin/notes/unicode b/admin/notes/unicode
index d149459a9d4..7f0ce10f048 100644
--- a/admin/notes/unicode
+++ b/admin/notes/unicode
@@ -14,9 +14,10 @@ Emacs uses the following files from the Unicode Character Database
. BidiMirroring.txt
. BidiBrackets.txt
. IVD_Sequences.txt
+ . NormalizationTest.txt
. BidiCharacterTest.txt
-First, the first 5 files need to be copied into admin/unidata/, and
+First, the first 6 files need to be copied into admin/unidata/, and
then Emacs should be rebuilt for them to take effect. Rebuilding
Emacs updates several derived files elsewhere in the Emacs source
tree, mainly in lisp/international/.
@@ -53,6 +54,14 @@ might need to be updated because it knows about used and unused ranges
of Unicode codepoints, which a new release of the Unicode Standard
could change.
+Next, test normalization functions against NormalizationTests.txt,
+in the test/ directory run:
+
+ make lisp/international/ucs-normalize-tests
+
+See commentary in test/lisp/international/ucs-normalize-tests.el
+regarding failing lines.
+
The file BidiCharacterTest.txt should be copied to the test suite, and
if its format has changed, the file biditest.el there should be
modified to follow suit.
@@ -140,8 +149,6 @@ regard to completeness.
* Need multibyte text in menus, e.g. for the above. (Not specific to
Unicode -- see Emacs etc/TODO, but now mostly works with gtk.)
- * There's currently no support for Unicode normalization.
-
* Populate char-width-table correctly for Unicode characters and
worry about what happens when double-width charsets covering
non-CJK characters are unified.