GNU ELPA has a 'debbugs' package that allows accessing the tracker
database from Emacs.
- ** Document your changes.
+Bugs needs regular attention. A large backlog of bugs is
+disheartening to the developers, and a culture of ignoring bugs is
+harmful to users, who expect software that works. Bugs have to be
+regularly looked at and acted upon. Not all bugs are critical, but at
+the least, each bug needs to be regularly re-reviewed to make sure it
+is still reproducible.
+
+The process of going through old or new bugs and acting on them is
+called bug triage. This process is described in the file
+admin/notes/bug-triage.
+
+ ** Documenting your changes
Any change that matters to end-users should have an entry in etc/NEWS.
To run tests on the entire Emacs tree, run "make check" from the
top-level directory. Most tests are in the directory
-"test/automated". From the "test/automated" directory, run "make
-<filename>" to run the tests for <filename>.el(c). See "test/README"
-for more information.
+"test/". From the "test/" directory, run "make
+<filename>" to run the tests for <filename>.el(c). See
+"test/Makefile" for more information.
+
+Tests which are tagged ":expensive-test" are enabled additionally, if
+you run "make check-expensive" from the top-level directory. "make
+<filename>" as mentioned above incorporates expensive tests for
+<filename>.el(c). You can also define any ert selector on the command
+line. So "make check SELECTOR=nil" is equivalent to "make
+check-expensive".
+
+You could also use predefined selectors of the Makefile. "make
+<filename> SELECTOR='$(SELECTOR_DEFAULT)'" runs all tests for
+<filename>.el(c) except the tests tagged as expensive.
+
+Selectors can be defined with different methods, see (info "(ert)Test
+Selectors") or
+https://www.gnu.org/software/emacs/manual/html_node/ert/Test-Selectors.html
+If your test file contains the tests "test-foo", "test2-foo" and
+"test-foo-remote", and you want to run only the former two tests, you
+could use a regexp: "make <filename> SELECTOR='\"foo$$\"'" .
- ** Understanding Emacs Internals.
+ ** Understanding Emacs internals
+
+ The best way to understand Emacs internals is to read the code. Some
+ source files, such as xdisp.c, have extensive comments describing the
+ design and implementation. The following resources may also help:
+
+ http://www.gnu.org/software/emacs/manual/html_node/elisp/Tips.html
+ http://www.gnu.org/software/emacs/manual/html_node/elisp/GNU-Emacs-Internals.html
- The best way to understand Emacs Internals is to read the code,
- but the nodes "Tips" and "GNU Emacs Internals" in the Appendix
- of the Emacs Lisp Reference Manual may also help. Some source files,
- such as xdisp.c, have large commentaries describing the design and
- implementation in more detail.
+ or run 'info "(elisp)Tips"' or 'info "(elisp)GNU Emacs Internals"'.
The file etc/DEBUG describes how to debug Emacs bugs.