]> code.delx.au - gnu-emacs/blobdiff - admin/authors.el
Merge from origin/emacs-24
[gnu-emacs] / admin / authors.el
index 3a552c6c1ef26f182f86791be99735d9a976c682..afab6f0e1e804c728b66bf729440323b8031daf5 100644 (file)
@@ -1,6 +1,6 @@
 ;;; authors.el --- utility for maintaining Emacs's AUTHORS file -*-coding: utf-8 -*-
 
-;; Copyright (C) 2000-2014 Free Software Foundation, Inc.
+;; Copyright (C) 2000-2015 Free Software Foundation, Inc.
 
 ;; Author: Gerd Moellmann <gerd@gnu.org>
 ;; Maintainer: Kim F. Storm <storm@cua.dk>
@@ -40,6 +40,7 @@ files.")
 
 (defconst authors-aliases
   '(
+    (nil "A\\. N\\. Other")  ; unknown author 2014-12-03, later removed
     ("Aaron S. Hawley" "Aaron Hawley")
     ("Alexandru Harsanyi" "Alex Harsanyi")
     ("Andrew Csillag" "Drew Csillag")
@@ -92,6 +93,7 @@ files.")
     ("Joseph Arceneaux" "Joe Arceneaux")
     ("Joseph M. Kelsey" "Joe Kelsey")  ; FIXME ?
     ("Juan León Lahoz García" "Juan-Leon Lahoz Garcia")
+    ("Jürgen Hötzel" "Juergen Hoetzel")
     ("K. Shane Hartman" "Shane Hartman")
     ("Kai Großjohann" "Kai Grossjohann")
     ("Karl Berry" "K. Berry")
@@ -120,6 +122,7 @@ files.")
     ("Mikio Nakajima" "Nakajima Mikio")
     ("Nelson Jose dos Santos Ferreira" "Nelson Ferreira")
     ("Noorul Islam" "Noorul Islam K M")
+;;;    ("Tetsurou Okazaki" "OKAZAKI Tetsurou") ; FIXME?
     ("Paul Eggert" "Paul R\\. Eggert")
     ("Pavel Janík" "Pavel Janík Ml." "Pavel Janik Ml." "Pavel Janik")
     ("Pavel Kobiakov" "Pavel Kobyakov")
@@ -142,6 +145,7 @@ files.")
     ("Sam Steingold" "Sam Shteingold")
     ("Satyaki Das" "Indexed search by Satyaki Das")
     ("Sébastien Vauban" "Sebastien Vauban")
+    ("Sergey Litvinov" "Litvinov Sergey")
     ;; There are other Stefans.
 ;;;    ("Stefan Monnier" "Stefan")
     ("Steven L. Baur" "SL Baur" "Steven L Baur")
@@ -177,11 +181,13 @@ If REALNAME is nil, ignore that author.")
 
 ;; FIXME seems it would be less fragile to check for O', Mc, etc.
 (defconst authors-fixed-case
-  '("Brian van den Broek"
+  '("Barry O'Reilly"
+    "Brian van den Broek"
     "Bryan O'Sullivan"
     "Christian von Roques"
     "Christophe de Dinechin"
     "Craig McDaniel"
+    "Daniel LaLiberte"
     "David J. MacKenzie"
     "David McCabe"
     "David O'Toole"
@@ -189,12 +195,16 @@ If REALNAME is nil, ignore that author.")
     "Dominique de Waleffe"
     "Edward O'Connor"
     "Exal de Jesus Garcia Carrillo"
+    "George McNinch"
     "Greg McGary"
     "Hans de Graaff"
+    "Ivan Vilata i Balaguer"
+    "Jae-hyeon Park"
     "James TD Smith"
     "Jay McCarthy"
     "Joel N. Weber II"
     "Matt McClure"
+    "Mike McLean"
     "Michael McNamara"
     "Mike McEwan"
     "Nelson Jose dos Santos Ferreira"
@@ -202,10 +212,13 @@ If REALNAME is nil, ignore that author.")
     "Peter O'Gorman"
     "Piet van Oostrum"
     "Roland McGrath"
+    "Santiago Payà i Miralta"
     "Sean O'Halpin"
     "Sean O'Rourke"
+    "Shun-ichi Goto"
     "Thomas DeWeese"
-    "Tijs van Bakel")
+    "Tijs van Bakel"
+    "Yu-ji Hosokawa")
   "List of authors whose names cannot be simply capitalized.")
 
 (defvar authors-public-domain-files
@@ -228,8 +241,9 @@ If REALNAME is nil, ignore that author.")
 
 (defvar authors-obsolete-files-regexps
   '(".*loaddefs.el$"                   ; not obsolete, but auto-generated
-    "\\.\\(cvs\\|git\\)ignore$"                ; obsolete or uninteresting
+    "\\.\\(bzr\\|cvs\\|git\\)ignore$"          ; obsolete or uninteresting
     "\\.arch-inventory$"
+    "automated/data/"             ; not interesting
     ;; TODO lib/? Matches other things?
     "build-aux/" "m4/" "Emacs.xcodeproj" "mapfiles" "\\.map\\'"
     "preferences\\.\\(nib\\|gorm\\)"
@@ -239,6 +253,11 @@ gnus-booklet\\|fr-drdref\\)\\.p\\(df\\|s\\)\\'")
   "List of regexps matching obsolete files.
 Changes to files matching one of the regexps in this list are not listed.")
 
+(defconst authors-no-scan-regexps
+  '("etc/nxml/"
+    "automated/data/")
+  "Lists of regexps matching files not to scan for authorship.")
+
 (defconst authors-ignored-files
   '("external-lisp"
     "lock" "share-lib" "local-lisp"
@@ -283,6 +302,7 @@ Changes to files matching one of the regexps in this list are not listed.")
     "images/icons/allout-widgets-dark-bg"
     "images/icons/allout-widgets-light-bg"
     ;; Never had any meaningful changes logged, now deleted:
+    "lib/stdarg.in.h" "lib/stdbool.in.h"
     "unidata/bidimirror.awk" "unidata/biditype.awk"
     "split-man" "Xkeymap.txt" "ms-7bkermit" "ulimit.hack"
     "gnu-hp300" "refcard.bit" "ledit.l" "forms.README" "forms-d2.dat"
@@ -295,6 +315,7 @@ Changes to files matching one of the regexps in this list are not listed.")
     "CODINGS" "CHARSETS"
     "calc/INSTALL" "calc/Makefile" "calc/README.prev"
     "vms-pp.trans" "_emacs" "batcomp.com" "notes/cpp" ; admin/
+    "notes/BRANCH" "notes/exit-value"
     "emacsver.texi.in"
     "vpath.sed"
     "Cocoa/Emacs.base/Contents/Info.plist"
@@ -575,9 +596,10 @@ Changes to files in this list are not listed.")
     "README"
     ;; There were a few of these, not just the generated top-level one.
     "configure" "config.h"
+    "is_exec.c" "sigaction.c"
     ;; nt/
     "ebuild.bat" "install.bat" "fast-install.bat"
-    "debug.bat.in" "emacs.bat.in"
+    "debug.bat.in" "emacs.bat.in" "addsection.c"
     "inc/sys/dir.h" "inc/gettext.h"
     ".gdbinit-union"
     "alloca.s"
@@ -614,6 +636,7 @@ Changes to files in this list are not listed.")
     "images/page-down.xpm" "images/widen.pbm" "images/widen.xpm"
     "images/gnus/bar.xbm" "images/gnus/bar.xpm"
     "images/gnus/reverse-smile.xpm"
+    "notes/commits" "notes/changelogs"
     "revdiff"                          ; admin/
     "vcdiff" "rcs-checkin" "tindex.pl"
     "mainmake" "sed1.inp" "sed2.inp" "sed3.inp" ; msdos/
@@ -631,6 +654,8 @@ Changes to files in this list are not listed.")
     "mh-exec.el" "mh-init.el" "mh-customize.el"
     "net/zone-mode.el" "xesam.el"
     "term/mac-win.el" "sup-mouse.el"
+    "term/vt102.el" "term/vt201.el" "term/vt220.el" "term/vt300.el"
+    "term/vt320.el" "term/vt400.el" "term/vt420.el"
     "url-https.el"
     "org-mac-message.el" "org-mew.el" "org-w3m.el" "org-vm.el" "org-wl.el"
     "org-mks.el" "org-remember.el" "org-xoxo.el" "org-docbook.el"
@@ -638,6 +663,8 @@ Changes to files in this list are not listed.")
     "org-exp-blocks.el"                     ; maybe this is ob-exp now? dunno
     "org-lparse.el"
     "org-special-blocks.el" "org-taskjuggler.el"
+    "progmodes/cap-words.el"
+    "w32-common-fns.el"
     ;; gnus
     "nnwfm.el" "nnlistserv.el" "nnkiboze.el" "nndb.el" "nnsoup.el"
     "netrc.el" "password.el" "sasl-cram.el" "sasl-digest.el" "sasl-ntlm.el"
@@ -668,7 +695,7 @@ Changes to files in this list are not listed.")
     "etags-vmslib.c" "fakemail.c" "getdate.c" "getopt.h" "getopt1.c"
     "getopt_.h" "getopt_int.h" "gettext.h" "leditcfns.c" "loadst.c"
     "make-path.c" "qsort.c" "sorted-doc.c" "tcp.c" "timer.c" "wakeup.c"
-    "yow.c"
+    "yow.c" "grep-changelog" "grep-changelog.1"
     ;; etc/
     "emacsclient.c" "etags.c" "hexl.c" "make-docfile.c" "movemail.c"
     "test-distrib.c" "testfile"
@@ -707,6 +734,8 @@ in the repository.")
     ("paths.h-dist" . "epaths.in")
     ("paths.h.in" . "epaths.in")
     ("paths.in" . "epaths.in")
+    ("emacs.rc" . "emacs.rc.in")
+    ("emacsclient.rc" . "emacsclient.rc.in")
     ("patch1" . "sed1.inp")
     ("INSTALL.MSYS" . "INSTALL")
     ("server.c" . "emacsserver.c")
@@ -756,6 +785,13 @@ in the repository.")
     ;; Obsolete.
     ("emacs-lisp/assoc.el" . "assoc.el")
     ("emacs-lisp/cust-print.el" . "cust-print.el")
+    ("emacs-lisp/gulp.el" . "gulp.el")
+    ("emulation/crisp.el" . "crisp.el")
+    ("emulation/tpu-edt.el" . "tpu-edt.el")
+    ("emulation/tpu-extras.el" . "tpu-extras.el")
+    ("emulation/vi.el" . "vi.el")
+    ("emulation/vip.el" . "vip.el")
+    ("emulation/ws-mode.el" . "ws-mode.el")
     ("mail/mailpost.el" . "mailpost.el")
     ("play/bruce.el" . "bruce.el")
     ("play/yow.el" . "yow.el")
@@ -769,6 +805,8 @@ in the repository.")
     ;; The one in lisp is eshell/eshell.el.
     ("eshell.el" . "automated/eshell.el")
     ("eshell/esh-test.el" . "automated/eshell.el")
+    ("automated/cl-lib.el" . "automated/cl-lib-tests.el")
+    ("automated/package-x-test.el" . "automated/package-test.el")
     ;; INSTALL-CVS -> .CVS -> .BZR -> .REPO
     ("INSTALL-CVS" . "INSTALL.REPO")
     ("INSTALL.CVS" . "INSTALL.REPO")
@@ -787,6 +825,8 @@ in the repository.")
     ("emacs.tex" . "emacs.texi")
     ("faq.texi" . "efaq.texi")
     ("major.texi" . "modes.texi")
+    ("msdog-xtra.texi" . "msdos-xtra.texi")
+    ("msdog.texi" . "msdos.texi")
     ;; And from emacs/ to misc/ and back again.
     ("ns-emacs.texi" . "macos.texi")
     ("overrides.texi" . "gnus-overrides.texi")
@@ -825,11 +865,15 @@ in the repository.")
     ("autogen/update_autogen" . "update_autogen")
     ;; Moved from etc/ to admin/.
     ("grammars" . "grammars")
+    ;; Moved from lisp/emacs-lisp/ to admin/.
+    ("emacs-lisp/authors.el" . "authors.el")
     ;; From etc to lisp/cedet/semantic/.
     ("grammars/bovine-grammar.el" . "bovine/grammar.el")
     ("grammars/wisent-grammar.el" . "wisent/grammar.el")
     ;; Moved from admin/nt/ to nt/.
     ("nt/README.W32" . "README.W32")
+    ("notes/BRANCH" . "notes/repo")
+    ("notes/bzr" . "notes/repo")
     )
   "Alist of files which have been renamed during their lifetime.
 Elements are (OLDNAME . NEWNAME).")
@@ -902,6 +946,8 @@ ediff\\|emerge\\|log-edit\\|log-view\\|pcvs\\|smerge-mode\\|vc\\)\\.el\\'"
     ("comint-testsuite.el" "automated/\\&")
     ("\\`\\(bytecomp\\|font-parse\\|icalendar\\|occur\\|newsticker\\)\
 -testsuite\\.el" "automated/\\1-tests.el")
+    ("automated/flymake/warnpred/\\(Makefile\\|test\\.\\(?:c\\|pl\\)\\)\\'"
+     "automated/data/flymake/\\1")
     ;; NB lax rules should come last.
     ("^m/m-\\(.*\\.h\\)$" "m/\\1" t)
     ("^m-\\(.*\\.h\\)$" "\\1" t)
@@ -1051,6 +1097,15 @@ from `authors-obsolete-files-regexps'."
            regexps (cdr regexps)))
     obsolete-p))
 
+(defun authors-no-scan-file-p (file)
+  "Return non-nil if FILE should not be scanned.
+FILE is not scanned if it matches any of `authors-no-scan-regexps'."
+  (let (no-scan-p
+       (regexps authors-no-scan-regexps))
+    (while (and regexps (not no-scan-p))
+      (setq no-scan-p (string-match-p (car regexps) file)
+           regexps (cdr regexps)))
+    no-scan-p))
 
 (defun authors-add (author file action table)
   "Record that AUTHOR worked on FILE.
@@ -1282,8 +1337,9 @@ buffer *Authors Errors* containing references to unknown files."
        (authors-scan-change-log log table)))
     (let ((els (process-lines find-program root "-name" "*.el")))
       (dolist (file els)
-       (message "Scanning %s..." file)
-       (authors-scan-el file table)))
+       (unless (authors-no-scan-file-p file)
+         (message "Scanning %s..." file)
+         (authors-scan-el file table))))
     (message "Generating buffer %s..." buffer-name)
     (set-buffer (get-buffer-create buffer-name))
     (erase-buffer)
@@ -1297,7 +1353,11 @@ list of their contributions.\n")
       (maphash #'authors-add-to-author-list table)
       (setq authors-author-list
            (sort authors-author-list
-                 (lambda (a b) (string-lessp (car a) (car b)))))
+                 (lambda (a b)
+                   (string-collate-lessp (car a) (car b)
+                                         (if (eq system-type 'windows-nt)
+                                             "enu_USA"
+                                           "en_US.UTF-8")))))
       (dolist (a authors-author-list)
        (let ((author (car a))
              (wrote (nth 1 a))