emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] xwidget_mvp c7a4c30 2/3: Merge branch 'master' into xwidge


From: Joakim Verona
Subject: [Emacs-diffs] xwidget_mvp c7a4c30 2/3: Merge branch 'master' into xwidget_mvp
Date: Sat, 14 Mar 2015 17:14:38 +0000

branch: xwidget_mvp
commit c7a4c307e4751f6332bccde82c399a7519e40ce3
Merge: 23166af 33d9869
Author: Joakim Verona <address@hidden>
Commit: Joakim Verona <address@hidden>

    Merge branch 'master' into xwidget_mvp
---
 doc/lispref/ChangeLog           |    5 +
 doc/lispref/sequences.texi      |   22 +
 doc/misc/ChangeLog              |   10 +
 doc/misc/tramp.texi             |   51 +-
 doc/misc/trampver.texi          |    2 +-
 etc/AUTHORS                     | 2947 ++++++++++++++++++++++++---------------
 lib-src/ChangeLog               |   24 +
 lib-src/movemail.c              |  197 ++--
 lisp/ChangeLog                  |  300 ++++-
 lisp/autorevert.el              |   59 +-
 lisp/battery.el                 |  103 +-
 lisp/desktop.el                 |   35 +-
 lisp/dired.el                   |   15 +-
 lisp/emacs-lisp/byte-opt.el     |  121 +-
 lisp/emacs-lisp/cl-generic.el   |  625 +++++----
 lisp/emacs-lisp/eieio-compat.el |   56 +-
 lisp/emacs-lisp/eieio-core.el   |   54 +-
 lisp/emacs-lisp/package.el      |    7 +-
 lisp/emacs-lisp/seq.el          |   12 +-
 lisp/gnus/ChangeLog             |   21 +
 lisp/gnus/gnus-notifications.el |   21 +-
 lisp/gnus/gnus-registry.el      |   14 +-
 lisp/gnus/message.el            |    5 +-
 lisp/gnus/registry.el           |   28 +-
 lisp/mail/rmail.el              |    2 +-
 lisp/net/browse-url.el          |   17 +-
 lisp/net/eudcb-bbdb.el          |   24 +-
 lisp/net/eudcb-ldap.el          |   53 +-
 lisp/net/eww.el                 |   24 +-
 lisp/net/ldap.el                |   14 +-
 lisp/net/tramp-adb.el           |   95 +-
 lisp/net/tramp-cache.el         |    6 +-
 lisp/net/tramp-sh.el            |  186 ++--
 lisp/net/tramp.el               |   14 +-
 lisp/net/trampver.el            |    4 +-
 lisp/progmodes/js.el            |    1 +
 lisp/progmodes/ruby-mode.el     |   21 +-
 nt/ChangeLog                    |    6 +-
 nt/INSTALL                      |   23 +-
 src/ChangeLog                   |   32 +-
 src/frame.c                     |    1 +
 src/keyboard.c                  |   15 +-
 src/sysdep.c                    |    8 +
 src/w32fns.c                    |   14 +-
 test/ChangeLog                  |   53 +
 test/automated/cl-lib-tests.el  |  189 +++-
 test/automated/seq-tests.el     |   22 +
 test/automated/tramp-tests.el   |  252 +++-
 test/indent/Makefile            |    7 +-
 test/indent/js.js               |    7 +-
 test/indent/ruby.rb             |    4 +
 51 files changed, 3806 insertions(+), 2022 deletions(-)

diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index 42bff7c..260656c 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,8 @@
+2015-03-09  Nicolas Petton <address@hidden>
+
+       * sequences.texi (seq-into): Add documentation for the new
+       seq-into function.
+
 2015-03-03  Eli Zaretskii  <address@hidden>
 
        * processes.texi (Synchronous Processes): Update documentation of
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi
index 04404f8..1af3535 100644
--- a/doc/lispref/sequences.texi
+++ b/doc/lispref/sequences.texi
@@ -740,6 +740,28 @@ of @var{sequence}.  Keys are compared using @code{equal}.
 @end example
 @end defun
 
address@hidden seq-into sequence type
+  This function converts the sequence @var{sequence} into a sequence
+of type @var{type}.  @var{type} can be one of the following symbols:
address@hidden, @code{string} or @code{list}.
+
address@hidden
address@hidden
+(seq-into [1 2 3] 'list)
address@hidden (1 2 3)
address@hidden group
address@hidden
+(seq-into nil 'vector)
address@hidden []
address@hidden group
address@hidden
+(seq-into "hello" 'vector)
address@hidden [104 101 108 108 111]
address@hidden group
address@hidden example
address@hidden defun
+
+
 @defmac seq-doseq (var sequence [result]) address@hidden
 @cindex sequence iteration
   This macro is like @code{dolist}, except that @var{sequence} can be a list,
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index c721b25..fc85bd9 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,3 +1,13 @@
+2015-03-04  Michael Albinus  <address@hidden>
+
+       * tramp.texi (External methods) <adb>: Explain, when Tramp
+       connects to devices.  Mention port numbers.
+       (GVFS based methods, File name completion): Add index.
+       (Multi-hops, Remote Programs, File name completion, Ad-hoc multi-hops):
+       Improve wording.
+
+       * trampver.texi: Update release number.
+
 2015-03-03  Kelvin White  <address@hidden>
 
        * erc.texi (Advanced Usage, Options): Add descriptions and examples
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi
index bc7f933..5d02d90 100644
--- a/doc/misc/tramp.texi
+++ b/doc/misc/tramp.texi
@@ -1005,12 +1005,13 @@ can be installed as part of the Android SDK.  If the 
@command{adb}
 program is not found via the @env{PATH} environment variable, the
 variable @var{tramp-adb-program} must point to its absolute path.
 
-Tramp does not connect Android devices to @command{adb}.  This must be
-performed outside @value{emacsname}.  If there is exactly one Android
-device connected to @command{adb}, a host name is not needed in the
-remote file name.  The default @value{tramp} name to be used is
address@hidden@trampfn{adb, , ,}} therefore.  Otherwise, one could find
-potential host names with the command @command{adb devices}.
address@hidden does not connect Android devices to @command{adb},
+unless the customer option @option{tramp-adb-connect-if-not-connected}
+is address@hidden  If there is exactly one Android device connected
+to @command{adb}, a host name is not needed in the remote file name.
+The default @value{tramp} name to be used is @address@hidden, , ,}},
+therefore.  Otherwise, one could find potential host names with the
+command @command{adb devices}.
 
 Usually, the @command{adb} method does not need any user name.  It
 runs under the permissions of the @command{adbd} process on the
@@ -1019,6 +1020,11 @@ Android device.  If a user name is specified, 
@value{tramp} applies an
 devices, especially with unrooted ones.  In that case, an error
 message is displayed.
 
+If a device shall be connected via TCP/IP, it is possible to declare
+the port number to be used like @file{device#42}.  Without a port
+number, the default value as declared in @command{adb} will be used.
+Port numbers are not applicable to Android devices connected via USB.
+
 @end table
 
 
@@ -1081,6 +1087,7 @@ FUSE, it also needs the SYNCE-GVFS plugin.
 
 @end table
 
address@hidden tramp-gvfs-methods
 @defopt tramp-gvfs-methods
 This customer option, a list, defines the external methods which shall
 be used with address@hidden  Per default, these are @option{dav},
@@ -1355,8 +1362,8 @@ bastion host.
 @vindex tramp-default-proxies-alist
 @defopt tramp-default-proxies-alist
 In order to specify multiple hops, it is possible to define a proxy
-host to pass through, via the variable
address@hidden  This variable keeps a list of
+host to pass through, via the customer option
address@hidden  This variable keeps a list of
 triples (@var{host} @var{user} @var{proxy}).
 
 The first matching item specifies the proxy host to be passed for a
@@ -1470,9 +1477,9 @@ Sometimes they offer limited features only, like running 
@command{rbash}
 
 @vindex tramp-restricted-shell-hosts-alist
 @defopt tramp-restricted-shell-hosts-alist
-This variable keeps a list of regular expressions, which denote hosts
-running a registered shell like "rbash".  Those hosts can be used as
-proxies only.
+This customer option keeps a list of regular expressions, which denote
+hosts running a registered shell like @command{rbash}.  Those hosts
+can be used as proxies only.
 
 If the bastion host from the example above runs a restricted shell,
 you shall apply
@@ -1788,8 +1795,9 @@ remote file access.
 @vindex tramp-own-remote-path
 @defopt tramp-remote-path
 When @value{tramp} connects to the remote host, it searches for the
-programs that it can use.  The variable @code{tramp-remote-path}
-controls the directories searched on the remote host.
+programs that it can use.  The customer option
address@hidden controls the directories searched on the
+remote host.
 
 By default, this is set to a reasonable set of defaults for most
 hosts.  The symbol @code{tramp-default-remote-path} is a place
@@ -1798,7 +1806,7 @@ command @command{getconf PATH} on your remote host.  For 
example,
 on Debian GNU/Linux this is @file{/bin:/usr/bin}, whereas on Solaris
 this is @file{/usr/xpg4/bin:/usr/ccs/bin:/usr/bin:/opt/SUNWspro/bin}.
 It is recommended to apply this symbol on top of
address@hidden
address@hidden
 
 It is possible, however, that your local (or remote ;) system
 administrator has put the tools you want in some obscure local
@@ -2088,6 +2096,7 @@ parameter, you could overwrite the syntax with the 
following form:
 @noindent
 with @samp{192.168.0.1} being the IP address of your remote host
 (@pxref{Predefined connection information}).
+
 @end table
 
 
@@ -2591,11 +2600,12 @@ files by other processes.  Therefore, during file name 
completion, the
 remote directory contents are reread regularly in order to detect such
 changes, which would be invisible otherwise (@pxref{Connection caching}).
 
address@hidden tramp-completion-reread-directory-timeout
 @defopt tramp-completion-reread-directory-timeout
-This variable defines the number of seconds since last remote command
-before rereading a directory contents.  A value of 0 would require an
-immediate reread during file name completion, @code{nil} means to use
-always cached values for the directory contents.
+This customer option defines the number of seconds since last remote
+command before rereading a directory contents.  A value of 0 would
+require an immediate reread during file name completion, @code{nil}
+means to use always cached values for the directory contents.
 @end defopt
 
 
@@ -2634,8 +2644,9 @@ remotehost, /path}} would be sufficient from now on.
 @vindex tramp-save-ad-hoc-proxies
 @defopt tramp-save-ad-hoc-proxies
 This customer option controls whether ad-hoc definitions are kept
-persistently in @code{tramp-default-proxies-alist}.  That means, those
-definitions are available also for future @value{emacsname} sessions.
+persistently in @option{tramp-default-proxies-alist}.  That means,
+those definitions are available also for future @value{emacsname}
+sessions.
 @end defopt
 
 
diff --git a/doc/misc/trampver.texi b/doc/misc/trampver.texi
index a9e7f37..119adbd 100644
--- a/doc/misc/trampver.texi
+++ b/doc/misc/trampver.texi
@@ -8,7 +8,7 @@
 @c In the Tramp GIT, the version number is auto-frobbed from
 @c configure.ac, so you should edit that file and run
 @c "autoconf && ./configure" to change the version number.
address@hidden trampver 2.2.11
address@hidden trampver 2.2.12-pre
 
 @c Other flags from configuration
 @set instprefix /usr/local
diff --git a/etc/AUTHORS b/etc/AUTHORS
index 2b93bb2..cf08cf8 100644
--- a/etc/AUTHORS
+++ b/etc/AUTHORS
@@ -3,33 +3,44 @@ Foundation's distribution of GNU Emacs.  To show our 
appreciation for
 their public spirit, we list here in alphabetical order a condensed
 list of their contributions.
 
-Aaron Ecay: changed nsterm.m
+Aaron Ecay: changed ob-R.el ob-core.el org-src.el ox-latex.el nsterm.m
+  ob-awk.el ob-exp.el ob-python.el ob-tangle.el org-bibtex.el org-id.el
+  org.el org.texi paren.el
 
 Aaron Larson: co-wrote bibtex.el
 
-Aaron S. Hawley: changed files.texi morse.el tar-mode.el add-log.el
-  autoinsert.el building.texi custom.texi files.el glossary.texi
-  isearch.el jka-cmpr-hook.el misc.texi re-builder.el sgml-mode.el
-  texinfo.el thingatpt.el tutorial.el
+Aaron S. Hawley: wrote undo-tests.el
+and changed simple.el files.texi isearch.el morse.el sgml-mode.el
+  tar-mode.el thingatpt.el add-log.el autoinsert.el building.texi calc.el
+  cc-fonts.el comint.el compare-w.el custom.texi diff.el edebug.el
+  etags.el ffap.el files.el flyspell.el and 28 other files
 
-Abraham Nahum: changed configure.in dgux4.h sysdep.c
+Abdó Roig-Maranges: changed org.el org-agenda.el ox-html.el ox-odt.el
+
+Abraham Nahum: changed configure.ac dgux4.h sysdep.c
 
 Abramo Bagnara: changed term.c
 
-Achim Gratz: changed org-clock.el org.el org.texi ob-ref.el ob.el
-  org-macs.el
+Achim Gratz: changed org.el org-compat.el org.texi org-clock.el
+  ob-core.el ob-exp.el ob.el ob-perl.el ob-tangle.el org-agenda.el
+  org-macs.el org-table.el ob-C.el ob-R.el ob-eval.el ob-fortran.el
+  ob-python.el ob-ref.el ob-sh.el org-element.el org-exp-blocks.el
+  and 22 other files
 
-Adam Gołębiowski: changed Makefile.in
+Adam Gołębiowski: changed lib-src/Makefile.in
 
 Adam Hupp: changed emacs.py emacs2.py emacs3.py gud.el
   progmodes/python.el
 
-Adam Sjøgren: changed spam.el blink.xpm braindamaged.xpm cry.xpm dead.xpm
-  evil.xpm forced.xpm frown.xpm grin.xpm indifferent.xpm
-  reverse-smile.xpm sad.xpm smile.xpm wry.xpm xterm.c gnus-html.el
-  gnus-start.el gnus-sum.el gnus.el gtkutil.c shr.el xterm.h
+Adam Sjøgren: changed mml2015.el spam.el shr.el xterm.c blink.xpm
+  braindamaged.xpm cry.xpm dead.xpm evil.xpm forced.xpm frown.xpm
+  grin.xpm gtkutil.c indifferent.xpm message.el reverse-smile.xpm sad.xpm
+  smile.xpm wry.xpm gnus-html.el gnus-spec.el and 5 other files
+
+Adam Sokolnicki: changed ruby-mode.el
 
-Adam Spiers: changed calendar.el
+Adam Spiers: changed org.texi calendar.el cus-edit.el org-clock.el
+  ox-html.el
 
 Adam W: changed mail-source.el
 
@@ -44,15 +55,20 @@ Adrian Colley: changed aix3-2.h
 Adrian Lanz: changed mail-source.el spam.el
 
 Adrian Robert: co-wrote ns-win.el
-and changed nsterm.m nsfns.m nsfont.m nsterm.h Makefile.in nsmenu.m
-  configure.in README config.in emacs.c font.c keyboard.c nsgui.h
-  nsimage.m xdisp.c image.c lisp.h macos.texi menu.c Info-gnustep.plist
-  darwin.h and 82 other files
+and changed nsterm.m nsfns.m nsfont.m nsterm.h nsmenu.m configure.ac
+  src/Makefile.in macos.texi README emacs.c font.c keyboard.c nsgui.h
+  nsimage.m xdisp.c image.c lib-src/Makefile.in lisp.h menu.c Makefile.in
+  darwin.h and 78 other files
 
 Ævar Arnfjörð Bjarmason: changed rcirc.el
 
 Agustín Martín: changed ispell.el flyspell.el fixit.texi
 
+Aidan Gauland: wrote em-tramp.el
+and changed eshell.texi em-term.el em-unix.el erc-match.el
+  automated/eshell.el em-cmpl.el em-dirs.el em-ls.el em-script.el
+  esh-proc.el
+
 Aidan Kehoe: changed ipa.el lread.c mm-util.el erc-log.el erc.el
   gnus-sum.el gnus-util.el latin-ltx.el nnfolder.el ob-tangle.el
   objects.texi
@@ -60,20 +76,22 @@ Aidan Kehoe: changed ipa.el lread.c mm-util.el erc-log.el 
erc.el
 Ake Stenhoff: co-wrote imenu.el
 and changed cc-mode.el perl-mode.el
 
+Akinori Musha: changed ruby-mode.el Makefile.in sieve-mode.el
+
 Aki Vehtari: changed bibtex.el gnus-art.el gnus-score.el gnus-sum.el
   nnmail.el tar-mode.el
 
-Akinori Musha: changed ruby-mode.el
-
 Alakazam Petrofsky: changed hanoi.el
 
 Alan Mackenzie: wrote cc-awk.el
 and co-wrote cc-align.el cc-cmds.el cc-defs.el cc-engine.el cc-fonts.el
   cc-langs.el cc-mode.el cc-styles.el cc-vars.el
-and changed cc-mode.texi lread.c programs.texi font-lock.el font-core.el
-  isearch.el lisp.el modes.texi cc-subword.el display.texi os.texi
-  search.texi startup.el subr.el text.texi INSTALL.REPO add-log.el
-  buffers.texi bytecomp.el callint.c cc-fix.el and 22 other files
+and changed cc-mode.texi lread.c programs.texi font-lock.el isearch.el
+  display.texi font-core.el lisp.el modes.texi search.texi cc-menus.el
+  cc-subword.el easy-mmode.el os.texi startup.el subr.el syntax.c
+  text.texi INSTALL.REPO add-log.el buffers.texi and 32 other files
+
+Alan Schmitt: changed gnus-sum.el nnimap.el ob-ocaml.el org-faces.el
 
 Alan Shutko: changed diary-lib.el calendar.el bindings.el cal-hebrew.el
   easy-mmode.el gnus-sum.el ibuf-ext.el ibuffer.el lunar.el macros.el
@@ -81,30 +99,17 @@ Alan Shutko: changed diary-lib.el calendar.el bindings.el 
cal-hebrew.el
 
 Alastair Burt: changed gnus-art.el smiley.el
 
+Albert Krewinkel: co-wrote sieve-manage.el
+and changed sieve.el gnus-msg.el gnus.texi message.el sieve.texi
+
 Albert L. Ting: changed gnus-group.el mail-hist.el
 
 Aleksei Gusev: changed progmodes/compile.el
 
-Alex Coventry: changed files.el
-
-Alex Ott: changed TUTORIAL.ru ru-refcard.tex ispell.el ru-refcard.ps
-
-Alex Rezinsky: wrote which-func.el
-
-Alex Schroeder: wrote ansi-color.el cus-theme.el erc-compat.el
-  erc-hecomplete.el erc-join.el erc-lang.el erc-ring.el master.el
-  spam-stat.el sql.el
-and co-wrote longlines.el mail/rmailmm.el
-and changed erc.el erc-track.el erc-button.el erc-stamp.el erc-match.el
-  erc-autoaway.el erc-nickserv.el rcirc.texi erc-autojoin.el erc-fill.el
-  erc-pcomplete.el erc-complete.el erc-ibuffer.el erc-members.el rmail.el
-  comint.el custom.el erc-bbdb.el erc-chess.el erc-ezbounce.el
-  erc-imenu.el and 32 other files
-
-Alex Shinn: changed files.el
-
 Alexander Becher: changed vc-annotate.el
 
+Alexander Haeckel: changed getset.el
+
 Alexander Klimov: changed files.el calc-graph.el files.texi man.el rx.el
   sendmail.el
 
@@ -117,6 +122,8 @@ and changed rmailsum.el man.el rmail.el sendmail.el
 
 Alexander Shopov: changed code-pages.el
 
+Alexander Vorobiev: changed org-compat.el
+
 Alexander Zhuckov: changed ebrowse.c
 
 Alexandre Julliard: wrote vc-git.el
@@ -130,6 +137,30 @@ Alexandre Veyrenc: changed fr-refcard.tex
 Alexandru Harsanyi: wrote soap-client.el soap-inspect.el
 and changed emacs3.py vc-hooks.el vc.el xml.el
 
+Alex Coventry: changed files.el
+
+Alex Kosorukoff: changed org-capture.el
+
+Alex Ott: changed TUTORIAL.ru ede/files.el ru-refcard.tex base.el
+  cedet-files.el cpp-root.el ede.el ede/generic.el idle.el ispell.el
+  semantic/format.el
+
+Alex Reed: changed verilog-mode.el
+
+Alex Rezinsky: wrote which-func.el
+
+Alex Schroeder: wrote ansi-color.el cus-theme.el erc-compat.el
+  erc-hecomplete.el erc-join.el erc-lang.el erc-ring.el master.el
+  spam-stat.el sql.el
+and co-wrote longlines.el mail/rmailmm.el
+and changed erc.el erc-track.el erc-button.el erc-stamp.el erc-match.el
+  erc-autoaway.el erc-nickserv.el rcirc.texi Makefile erc-autojoin.el
+  erc-fill.el erc-pcomplete.el erc-complete.el erc-ibuffer.el
+  erc-members.el rmail.el comint.el custom.el erc-bbdb.el erc-chess.el
+  erc-ezbounce.el and 35 other files
+
+Alex Shinn: changed files.el
+
 Alfred Correira: changed generic-x.el
 
 Alfred M. Szmidt: changed html2text.el openbsd.h progmodes/compile.el
@@ -137,7 +168,7 @@ Alfred M. Szmidt: changed html2text.el openbsd.h 
progmodes/compile.el
 
 Alfredo Finelli: changed TUTORIAL.it
 
-Ali Bahrami: changed configure configure.in sol2-10.h
+Ali Bahrami: changed configure configure.ac sol2-10.h
 
 Alin C. Soare: changed lisp-mode.el hexl.el
 
@@ -145,8 +176,12 @@ Allen S. Rout: changed org-capture.el
 
 Alon Albert: wrote rcompile.el
 
-Alp Aker: changed nsfont.m nsterm.h nsterm.m buff-menu.el configure.in
-  nsfns.m nsmenu.m
+Alp Aker: changed nsfont.m nsterm.m buff-menu.el nsfns.m nsmenu.m
+  nsterm.h configure.ac macfont.m mule-cmds.el nsselect.m window.el
+
+Álvar Ibeas: changed TUTORIAL.es
+
+Álvar Jesús Ibeas Martín: changed emacs-lisp-intro.texi
 
 Ami Fischman: changed bindings.el calendar.el diary-lib.el print.c
   savehist.el vc-git.el
@@ -155,19 +190,18 @@ Anand Mitra: changed gnus-sum.el
 
 Anders Holst: wrote hippie-exp.el
 
-Anders Lindgren: wrote autorevert.el cwarn.el follow.el
-and changed font-lock.el etags.c compile.el nsfont.m nsterm.m
+Anders Lindgern: changed nsterm.m
 
-Andre Spiegel: changed vc.el vc-hooks.el vc-cvs.el vc-rcs.el vc-sccs.el
-  files.el dired.el files.texi cperl-mode.el ediff-util.el log-view.el
-  parse-time.el startup.el tramp-vc.el vc-arch.el vc-mcvs.el vc-svn.el
-  vcdiff viper-util.el
+Anders Lindgren: wrote autorevert.el cwarn.el follow.el
+and changed font-lock.el nsterm.m etags.c compile.el ert.el nsfont.m
+  nsterm.h
 
-Andre Srinivasan: changed gnus-group.el gnus-sum.el gnus.texi message.el
-  mm-decode.el mml.el nnmail.el
+Andrea Rossetti: changed ruler-mode.el
 
 Andrea Russo: changed erc-dcc.el info-look.el
 
+Andreas Amann: changed emacsclient.c
+
 Andreas Burtzlaff: changed org.el
 
 Andreas Büsching: changed emacsclient.c
@@ -184,64 +218,88 @@ and changed erc.el erc-bbdb.el erc-button.el erc-log.el 
erc-stamp.el
 Andreas Jaeger: changed gnus-msg.el gnus-start.el gnus-xmas.el
   nnfolder.el nnml.el
 
-Andreas Leha: changed ob.el
+Andreas Leha: changed ob-latex.el ob.el
 
 Andreas Leue: changed artist.el
 
 Andreas Luik: changed xfns.c xterm.c
 
-Andreas Politz: changed editfns.c elp.el ido.el outline.el term.el
+Andreas Politz: changed editfns.c elp.el frame.c ibuffer.el ido.el
+  imenu.el modes.texi outline.el sql.el subr.el term.el
 
 Andreas Rottmann: changed emacsclient.1 emacsclient.c misc.texi server.el
 
-Andreas Schwab: changed Makefile.in configure.in lisp.h xdisp.c alloc.c
-  process.c coding.c files.el keyboard.c xterm.c editfns.c emacs.c fns.c
-  print.c eval.c fileio.c lread.c sysdep.c dired.el xfns.c buffer.c
-  and 577 other files
+Andreas Schwab: changed configure.ac lisp.h process.c xdisp.c alloc.c
+  coding.c Makefile.in files.el keyboard.c fileio.c xterm.c editfns.c
+  emacs.c src/Makefile.in fns.c lread.c print.c eval.c font.c xfns.c
+  sysdep.c and 633 other files
 
 Andreas Seltenreich: changed nnweb.el gnus.texi message.el gnus-sum.el
-  gnus.el nnslashdot.el gnus-srvr.el gnus-util.el mm-url.el mm-uu.el
-  url-http.el xterm.c battery.el comint.el easy-mmode.el gmm-utils.el
-  gnus-art.el gnus-cite.el gnus-draft.el gnus-group.el gnus-ml.el
-  and 7 other files
+  gnus.el gnus-srvr.el gnus-util.el mm-url.el mm-uu.el url-http.el
+  xterm.c battery.el comint.el easy-mmode.el gmm-utils.el gnus-art.el
+  gnus-cite.el gnus-draft.el gnus-group.el gnus-ml.el gnus-msg.el
+  and 6 other files
 
 Andreas Vögele: changed pgg-def.el
 
+Andrei Chițu: changed icalendar.el
+
+Andre Spiegel: changed vc.el vc-hooks.el vc-cvs.el vc-rcs.el vc-sccs.el
+  files.el dired.el files.texi cperl-mode.el ediff-util.el log-view.el
+  parse-time.el startup.el tramp-vc.el vc-arch.el vc-mcvs.el vc-svn.el
+  vcdiff viper-util.el
+
+Andre Srinivasan: changed gnus-group.el gnus-sum.el gnus.texi message.el
+  mm-decode.el mml.el nnmail.el
+
+Andrew Beals: changed spook.lines
+
 Andrew Choi: changed macterm.c darwin.h mac-win.el sysdep.c emacs.c mac.c
   macfns.c fontset.c frame.c keyboard.c xfaces.c dispextern.h macmenu.c
-  unexmacosx.c Makefile.in configure.in frame.h macterm.h titdic-cnv.el
-  xdisp.c alloc.c and 26 other files
+  unexmacosx.c configure.ac frame.h macterm.h titdic-cnv.el xdisp.c
+  alloc.c callproc.c and 26 other files
 
 Andrew Cohen: wrote spam-wash.el
-and changed nnir.el gnus-sum.el nnimap.el gnus.texi gnus-group.el
-  gnus-int.el dns.el gnus-art.el gnus-registry.el gnus-srvr.el gnus.el
-  nnheader.el nnspool.el
+and changed nnir.el gnus-sum.el nnimap.el gnus-msg.el gnus.texi
+  gnus-group.el gnus-int.el dns.el gnus-art.el gnus-registry.el
+  gnus-srvr.el gnus.el nnheader.el nnspool.el
 
 Andrew Csillag: wrote m4-mode.el
 
 Andrew Hall: changed paren.el
 
-Andrew Innes: changed makefile.w32-in makefile.nt w32fns.c w32term.c
-  w32.c w32proc.c fileio.c gmake.defs w32-fns.el dos-w32.el ms-w32.h
-  nmake.defs w32term.h makefile.def unexw32.c w32menu.c w32xfns.c addpm.c
-  cmdproxy.c emacs.c w32-win.el and 137 other files
+Andrew Hyatt: changed org-archive.el org.el org.texi
+
+Andrew Innes: changed makefile.nt w32fns.c w32term.c w32.c w32proc.c
+  makefile.w32-in fileio.c gmake.defs leim/makefile.w32-in
+  lib-src/makefile.w32-in w32-fns.el dos-w32.el inc/ms-w32.h nmake.defs
+  nt/makefile.w32-in src/makefile.w32-in w32term.h makefile.def unexw32.c
+  w32menu.c w32xfns.c and 139 other files
 
-Andrew Oram: changed calendar.texi (and other files in man/)
+Andrew Oram: changed calendar.texi (and other doc files)
 
 Andrew Schein: changed sql.el
 
+Andrew W. Nosenko: changed tramp.el
+
 Andrew Zhilin: changed emacs22.png emacs22.ico
 
+Andrey Kotlarski: changed eww.el eww.texi
+
 Andrey Slusar: changed gnus-async.el gnus.el
 
 Andrey Zhdanov: changed gud.el
 
-Andy Moreton: changed makefile.w32-in
+Andrzej Lichnerowicz: wrote ob-io.el ob-scala.el
+
+Andy Moreton: changed emacs/makefile.w32-in gnutls.c
 
 Andy Norman: wrote ange-ftp.el
 
 Andy Petrusenco: changed w32term.c
 
+Andy Sawyer: changed saveplace.el
+
 Andy Seaborne: changed keyboard.c
 
 Andy Stewart: wrote org-w3m.el
@@ -255,11 +313,12 @@ Anna M. Bigatti: wrote cal-html.el
 
 Antoine Levitt: changed gnus-group.el gnus-sum.el message.texi ada-prj.el
   ange-ftp.el cus-edit.el dired-x.el ebnf2ps.el emerge.el erc-button.el
-  erc-goodies.el erc-track.el files.el find-file.el gnus-art.el
-  gnus-uu.el gnus.el gnus.texi message.el mh-funcs.el mh-mime.el
-  and 7 other files
+  erc-goodies.el erc-stamp.el erc-track.el files.el find-file.el
+  gnus-art.el gnus-uu.el gnus.el gnus.texi message.el mh-funcs.el
+  and 8 other files
 
-Ari Roponen: changed atimer.c doc.c mule.texi startup.el time-date.el
+Ari Roponen: changed atimer.c doc.c hash.texi mule.texi package.el
+  startup.el time-date.el
 
 Arisawa Akihiro: changed characters.el coding.c epa-file.el japan-util.el
   language/tibetan.el message.el mm-decode.el mm-view.el ps-print.el
@@ -270,23 +329,36 @@ Arnaud Giersch: changed gnus-sum.el
 Arne Georg Gleditsch: changed gnus-sum.el
 
 Arne Jørgensen: wrote latexenc.el
-and changed smime.el mml-smime.el smime-ldap.el gnus-art.el gnus-sieve.el
-  ldap.el message.el mm-decode.el mml-sec.el mml.el mule-conf.el
-  nnimap.el nnrss.el wid-edit.el
+and changed smime.el mml-smime.el smime-ldap.el flymake.el gnus-art.el
+  gnus-sieve.el ldap.el message.el mm-decode.el mml-sec.el mml.el
+  mule-conf.el nnimap.el nnrss.el wid-edit.el
 
-Arni Magnusson: changed ada-mode.texi frames.texi texinfo.el
+Arni Magnusson: wrote bat-mode.el
+and changed ada-mode.texi frames.texi generic-x.el texinfo.el
 
 Artem Chuprina: changed message.el
 
+Artur Malabarba: wrote let-alist.el
+and changed package.el bindings.el newcomment.el package-test.el
+  desktop.el doc-view.el ido.el image-mode.el isearch.el package-x.el
+  simple.el
+
+Arun Persaud: changed org-agenda.el org-src.el
+
 Ashwin Ram: wrote refer.el
 
+Atsuo Ohki: changed lread.c
+
 Aubrey Jaffer: changed info.el unexelf.c
 
+Aurélien Aptel: changed cus-face.el dispextern.h display.texi faces.el
+  nsterm.m ox-html.el url.texi w32term.c xfaces.c xterm.c
+
 Axel Boldt: changed ehelp.el electric.el
 
 B. Anyos: changed w32term.c
 
-Baoqiu Cui: wrote org-docbook.el
+Baoqiu Cui: changed org-docbook.el
 
 Barry A. Warsaw: wrote assoc.el elp.el man.el regi.el reporter.el
   supercite.el
@@ -294,47 +366,53 @@ and co-wrote cc-align.el cc-cmds.el cc-compat.el 
cc-defs.el cc-engine.el
   cc-guess.el cc-langs.el cc-menus.el cc-mode.el cc-styles.el cc-vars.el
 and changed c++-mode.el cplus-md1.el syntax.c syntax.h
 
-Barry Fishman: changed gnu-linux.h
+Barry Fishman: changed configure.ac gnu-linux.h image.c
+
+Barry O'Reilly: changed simple.el lisp.h undo-tests.el keyboard.c
+  markers.texi alloc.c bytecode.c casetab.c data.c eval.c fileio.c fw.el
+  idle.el insdel.c lread.c pulse.el search.c subr.el text.texi
+  timer-tests.el undo.c
 
-Bastien Guerry: wrote gnus-bookmark.el org-latex.el
+Bastien Guerry: wrote gnus-bookmark.el
 and co-wrote org-bibtex.el org-list.el org-protocol.el org-src.el
-and changed org.el org-agenda.el org-html.el org-clock.el org-exp.el
-  org.texi org-table.el org-capture.el org-publish.el org-timer.el
-  org-export-latex.el org-archive.el org-ascii.el org-colview.el
-  org-exp-blocks.el org-mobile.el ob.el org-eshell.el bookmark.el info.el
-  org-attach.el and 36 other files
+and changed org.el org-agenda.el org.texi ox-html.el org-clock.el
+  org-capture.el org-table.el ox-latex.el ox.el ox-odt.el org-compat.el
+  ox-publish.el ob.el org-mobile.el org-colview.el org-macs.el
+  org-pcomplete.el org-timer.el org-faces.el ox-ascii.el org-archive.el
+  and 116 other files
 
 Ben A. Mesander: co-wrote erc-dcc.el
 
-Ben Harris: changed configure.in
-
-Ben Key: changed w32.c w32fns.c w32menu.c configure.bat makefile.w32-in
-  INSTALL gmake.defs nmake.defs w32.h w32term.c configure.in emacs.c
-  keyboard.c make-docfile.c ms-w32.h nsfont.m nsterm.m sound.c xfaces.c
-
-Ben Menasha: changed nnmh.el
-
-Ben North: changed outline.el buffer.c fill.el isearch.el lisp-mode.el
-  paren.el w32term.c xfaces.c
-
 Bengt Martensson: co-wrote bibtex.el
 
+Ben Harris: changed configure.ac
+
 Benjamin Andresen: wrote ob-screen.el
 
 Benjamin Drieu: wrote pong.el
-and changed org-clock.el
+and changed org-clock.el org.el
 
-Benjamin Riefenstahl: changed w32select.c emacs.c lisp.h mac-win.el
-  macterm.c ms-w32.h mule-cmds.el runemacs.c tcl.el w32.c w32.h
+Benjamin Riefenstahl: changed w32select.c emacs.c inc/ms-w32.h lisp.h
+  mac-win.el macterm.c mule-cmds.el runemacs.c tcl.el w32.c w32.h
 
 Benjamin Rutt: co-wrote gnus-dired.el
 and changed vc.el gnus-msg.el message.el diff-mode.el ffap.el nnimap.el
   nnmbox.el simple.el vc-cvs.el
 
+Ben Key: changed w32.c w32fns.c w32menu.c configure.bat INSTALL
+  gmake.defs nmake.defs src/makefile.w32-in w32.h w32term.c configure.ac
+  emacs.c inc/ms-w32.h keyboard.c lib-src/makefile.w32-in make-docfile.c
+  nsfont.m nsterm.m sound.c xfaces.c
+
+Ben Menasha: changed nnmh.el
+
+Ben North: changed outline.el buffer.c fill.el isearch.el lisp-mode.el
+  paren.el w32term.c xfaces.c
+
 Bernhard Herzog: changed vc-hg.el menu.c xsmfns.c
 
 Bernt Hansen: changed org-agenda.el org-clock.el org.el org-capture.el
-  org-html.el org-indent.el org.texi
+  org-indent.el org-macs.el org.texi ox-html.el
 
 Bill Atkins: changed wdired.el
 
@@ -343,12 +421,13 @@ Bill Burton: changed ptx.h sequent-ptx.h
 Bill Carpenter: wrote feedmail.el (public domain)
 
 Bill Mann: wrote perl-mode.el
-and changed configure.in unexaix.c ibmrs6000.h usg5-4-3.h
+and changed configure.ac unexaix.c ibmrs6000.h usg5-4-3.h
 
 Bill Pringlemeir: changed messcompat.el
 
 Bill Richter: changed fill.el quail.el ccl.el encoded-kb.el fontset.el
-  kinsoku.el kkc.el mule-cmds.el mule-conf.el mule-util.el mule.el
+  international/mule-util.el kinsoku.el kkc.el mule-cmds.el mule-conf.el
+  mule.el
 
 Bill Rozas: wrote scheme.el
 and changed xscheme.el
@@ -359,23 +438,23 @@ Bill Wohler: wrote mh-buffers.el mh-comp.el mh-compat.el 
mh-e.el
   mh-folder.el mh-funcs.el mh-letter.el mh-mime.el mh-scan.el mh-seq.el
   mh-show.el mh-utils.el mh-xface.el
 and co-wrote mh-junk.el
-and changed mh-customize.el mh-search.el mh-alias.el mh-identity.el
-  mh-e.texi mh-speed.el mh-init.el mh-acros.el mh-gnus.el mh-unit.el
-  mh-inc.el mh-xemacs-compat.el mh-print.el Makefile.in image.el
-  mh-tool-bar.el mh-xemacs.el README display.texi makefile.w32-in
-  mh-pick.el and 86 other files
-
-Bjorn Solberg: changed nnimap.el
+and changed mh-customize.el mh-search.el mh-alias.el Makefile mh-e.texi
+  mh-identity.el README mh-speed.el mh-init.el mh-acros.el mh-gnus.el
+  mh-unit.el mh-inc.el mh-xemacs-compat.el mh-print.el lisp/Makefile.in
+  image.el mh-tool-bar.el mh-xemacs.el display.texi makefile.w32-in
+  and 86 other files
 
 Björn Lindström: changed rcirc.texi
 
+Bjørn Mork: changed nnimap.el gnus-agent.el message.el mml2015.el
+
+Bjorn Solberg: changed nnimap.el
+
 Björn Torkelsson: changed gnus-art.el gnus-group.el gnus-srvr.el
   gnus-sum.el gnus-mlspl.el gnus-msg.el message.el gnus-agent.el
   gnus-cus.el gnus-gl.el gnus-nocem.el gnus-score.el gnus-topic.el
   gnus.el mail-source.el nnmail.el
 
-Bjørn Mork: changed nnimap.el gnus-agent.el message.el mml2015.el
-
 Bob Glickstein: wrote sregex.el
 and changed isearch.el sendmail.el
 
@@ -396,13 +475,15 @@ Bojan Petrovic: changed pop3.el
 Boris Goldowsky: wrote avoid.el descr-text.el enriched.el facemenu.el
   format.el shadowfile.el
 and changed fill.el simple.el indent.el paragraphs.el cmds.c intervals.c
-  intervals.h add-log.el cc-mode.el enriched.doc fileio.c make-mode.el
+  intervals.h add-log.el cc-mode.el enriched.txt fileio.c make-mode.el
   text-mode.el textprop.c ada.el allout.el awk-mode.el bibtex.el buffer.c
   buffer.h c-mode.el and 38 other files
 
-Boris Samorodov: changed imap.el
+Boyd Lynn Gerber: changed configure.ac
 
-Boyd Lynn Gerber: changed configure.in
+Bozhidar Batsov: changed ruby-mode.el subr-x.el subr.el bytecomp.el
+  comint.el lisp-mode.el package.el progmodes/python.el prolog.el
+  ruby-mode-tests.el scheme.el
 
 Brad Howes: changed gnus-demon.el
 
@@ -412,19 +493,20 @@ Brendan Kehoe: changed hpux9.h
 
 Brent Goodrick: changed abbrev.el
 
-Brian Cully: changed ns-emacs.texi
+Brian Cully: changed macos.texi
 
 Brian D. Carlstrom: changed gud.el smtpmail.el
 
-Brian Fox: changed Makefile.in Makefile configure.in minibuf.c dired.el
-  files.el rmail.el search.c simple.el sysdep.c compile.el forms.texi
-  frame.c info.texi keyboard.c make-dist subr.el systty.h texindex.c
-  xterm.c ymakefile and 46 other files
+Brian Fox: changed Makefile.in Makefile configure.ac minibuf.c dired.el
+  files.el lib-src/Makefile.in oldXMenu/Makefile.in rmail.el search.c
+  simple.el sysdep.c compile.el forms.texi frame.c keyboard.c make-dist
+  subr.el systty.h texindex.c xterm.c and 47 other files
+
+Brian Jenkins: changed frame.c frames.texi hooks.texi
 
 Brian Marick: co-wrote hideif.el
 
-Brian P Templeton: changed erc.el erc-compat.el erc-fill.el
-  erc-nickserv.el erc-pcomplete.el erc-stamp.el erc-track.el
+Brian Mckenna: changed eww.el
 
 Brian Palmer: changed erc.el erc-list.el
 
@@ -433,17 +515,30 @@ Brian Preble: changed abbrev.el apropos.el asm-mode.el 
awk-mode.el
   compare-w.el compile.el dabbrev.el debug.el diary.el diff.el dired.el
   doctex.el doctor.el ebuff-menu.el echistory.el and 129 other files
 
+Brian P Templeton: changed erc.el erc-compat.el erc-fill.el
+  erc-nickserv.el erc-pcomplete.el erc-stamp.el erc-track.el lread.c
+  nsfont.m
+
 Brian Sniffen: changed gnus-draft.el imap.el mm-decode.el
 
+Brian van den Broek: changed org.texi
+
+Bruno Félix Rezende Ribeiro: changed functions.texi
+
 Bruno Haible: co-wrote po.el
 and changed INSTALL emacs.1 epaths.in info.el paths.el
 
-Bryan Henderson: changed term.el
+Bryan Henderson: changed Makefile term.el
 
 Bryan O'Sullivan: changed ange-ftp.el
 
+Caio Tiago Oliveira: changed ob-scala.el
+
 Caleb Deupree: changed w32-fns.el
 
+Cameron Desautels: changed cus-edit.el custom.texi help.el regexp-opt.el
+  ruby-mode.el
+
 Carl D. Roth: changed gnus-nocem.el
 
 Carl Edman: co-wrote ns-win.el
@@ -453,28 +548,26 @@ Carl Henrik Lunde: changed format-spec.el
 Carsten Bormann: changed ibmrs6000.h latin-post.el
 
 Carsten Dominik: wrote idlw-complete-structtag.el idlw-toolbar.el
-  org-agenda.el org-archive.el org-ascii.el org-beamer.el org-capture.el
-  org-clock.el org-colview.el org-compat.el org-datetree.el org-exp.el
-  org-faces.el org-feed.el org-footnote.el org-html.el org-icalendar.el
-  org-id.el org-indent.el org-info.el org-inlinetask.el org-install.el
-  org-jsinfo.el org-macs.el org-mks.el org-mobile.el org-remember.el
-  org-rmail.el org-table.el org-timer.el org-vm.el org-xoxo.el org.el
+  org-agenda.el org-archive.el org-capture.el org-clock.el org-colview.el
+  org-compat.el org-datetree.el org-faces.el org-feed.el org-footnote.el
+  org-id.el org-indent.el org-info.el org-inlinetask.el org-macs.el
+  org-mobile.el org-rmail.el org-table.el org-timer.el org.el
   reftex-auc.el reftex-cite.el reftex-dcr.el reftex-global.el
   reftex-index.el reftex-parse.el reftex-ref.el reftex-sel.el
   reftex-toc.el reftex-vars.el reftex.el
 and co-wrote idlw-help.el idlw-shell.el idlwave.el org-bbdb.el
   org-bibtex.el org-entities.el org-gnus.el org-list.el org-pcomplete.el
-  org-src.el
-and changed org-latex.el org.texi org-publish.el orgcard.tex
-  org-export-latex.el org-colview-xemacs.el org-docbook.el org-attach.el
-  org-mouse.el org-protocol.el org-mac-message.el org-wl.el org-crypt.el
+  org-src.el ox-beamer.el ox-html.el ox-icalendar.el
+and changed ox.el ox-latex.el org.texi org-remember.el orgcard.tex
+  ox-publish.el org-docbook.el ox-ascii.el org-attach.el org-protocol.el
+  org-mouse.el org-mac-message.el org-wl.el ox-jsinfo.el org-crypt.el
   org-freemind.el idlw-rinfo.el org-exp-blocks.el org-habit.el org-mhe.el
-  org-plot.el org-special-blocks.el reftex.texi and 24 other files
+  org-plot.el and 35 other files
 
-Caveh Jalali: changed configure.in intel386.h sol2-4.h
+Caveh Jalali: changed configure.ac intel386.h sol2-4.h
 
-Chad Brown: changed aix4-2.h bsd-common.h config.in configure.in cygwin.h
-  dired.c gnu-linux.h mh-comp.el msdos.h sed2v2.inp sysdep.c usg5-4.h
+Chad Brown: changed aix4-2.h bsd-common.h configure.ac cygwin.h dired.c
+  gnu-linux.h mh-comp.el msdos.h sed2v2.inp sysdep.c usg5-4.h
 
 Changwoo Ryu: changed files.el
 
@@ -483,6 +576,8 @@ Chao-Hong Liu: changed TUTORIAL.cn TUTORIAL.zh
 Charles Hannum: changed aix3-1.h aix3-2.h configure ibmrs6000.h
   keyboard.c netbsd.h pop.c sysdep.c systime.h systty.h xrdb.c
 
+Charles Rendleman: changed eww.el
+
 Charles Sebold: changed org-plot.el
 
 Charlie Martin: wrote autoinsert.el
@@ -496,25 +591,25 @@ Chip Coldwell: changed font.c
 
 Chong Yidong: wrote compile-tests.el dichromacy-theme.el
   font-parse-tests.el redisplay-testsuite.el tabulated-list.el
+  xml-parse-tests.el
 and co-wrote longlines.el tango-dark-theme.el tango-theme.el
-and changed xdisp.c simple.el display.texi files.el frames.texi
-  files.texi cus-edit.el keyboard.c custom.el text.texi package.el
-  startup.el faces.el xterm.c emacs.texi misc.texi subr.el image.c
-  mouse.el custom.texi xfns.c and 845 other files
+and changed simple.el display.texi xdisp.c files.el frames.texi
+  cus-edit.el files.texi custom.el subr.el text.texi faces.el keyboard.c
+  startup.el package.el misc.texi emacs.texi modes.texi mouse.el
+  custom.texi image.c window.el and 923 other files
 
 Chris Chase: co-wrote idlw-shell.el idlwave.el
 
 Chris Foote: changed progmodes/python.el
 
-Chris Gray: wrote org-special-blocks.el
-and changed mm-decode.el
+Chris Gray: changed mm-decode.el ox-html.el
 
 Chris Hall: changed callproc.c frame.c
 
 Chris Hanson: changed xscheme.el scheme.el xterm.c hpux.h x11term.c
-  hp9000s300.h keyboard.c process.c texinfmt.el emacsclient.c sort.el
-  syntax.c texnfo-upd.el x11fns.c xfns.c dired.el fileio.c hp9000s800.h
-  indent.c info.el man.el and 17 other files
+  hp9000s300.h keyboard.c process.c texinfmt.el sort.el syntax.c
+  texnfo-upd.el x11fns.c xfns.c dired.el emacsclient.c fileio.c
+  hp9000s800.h indent.c info.el man.el and 17 other files
 
 Chris Hecker: changed calc-aent.el
 
@@ -532,26 +627,27 @@ Chris Prince: changed w32term.c
 Chris Smith: wrote icon.el
 and changed icon-mode.el
 
-Christian Egli: wrote org-taskjuggler.el
-and changed org.texi
+Christian Egli: changed org-taskjuggler.el org.texi
 
-Christian Faulhammer: changed Makefile.in configure configure.in
+Christian Faulhammer: changed configure configure.ac src/Makefile.in
   vc-bzr.el
 
 Christian Limpach: co-wrote ns-win.el
-and changed configure.in
+and changed configure.ac
 
 Christian Lynbech: changed appt.el emacsserver.c tramp.el
 
 Christian Millour: changed shell.el
 
-Christian Moe: changed org-bbdb.el org-html.el org-special-blocks.el
+Christian Moe: changed org-bbdb.el org-special-blocks.el ox-html.el
+  ox-odt.el
 
 Christian Neukirchen: changed mm-util.el
 
-Christian Ohler: wrote ert-tests.el ert-x.el ert.el
-and changed Makefile.in automated configure.in ert-x-tests.el ert.texi
-  makefile.w32-in
+Christian Ohler: wrote ert-tests.el ert.el
+and co-wrote ert-x.el
+and changed Makefile.in automated automated/Makefile.in configure.ac
+  ert-x-tests.el ert.texi misc/Makefile.in misc/makefile.w32-in
 
 Christian Plate: changed nnmaildir.el sgml-mode.el
 
@@ -559,28 +655,28 @@ Christian Plaunt: wrote soundex.el
 
 Christian von Roques: changed mml2015.el epg.el gnus-start.el
 
-Christoph Bauer: changed configure.in
-
-Christoph Conrad: changed gnus-agent.el gnus-score.el makefile.w32-in
-  qp.el
+Christian Wittern: changed image-mode.el
 
-Christoph Scholtes: changed makefile.w32-in README.W32
-  progmodes/python.el stdint.h INSTALL maintaining.texi zipdist.bat
-  admin.el bookmark.el config.nt configure.bat control.texi cua-base.el
-  gmake.defs help-mode.el help.el ido.el make-dist makedist.bat menu.c
-  minibuf.c and 6 other files
+Christoph Bauer: changed configure.ac
 
-Christoph Wedler: wrote antlr-mode.el
-and changed format.el gnus-art.el gnus-picon.el message.el register.el
-  smiley.el texinfmt.el
+Christoph Conrad: changed gnus-agent.el gnus-score.el
+  lib-src/makefile.w32-in qp.el
 
-Christophe Rhodes: changed org-exp.el
+Christoph Dittmann: changed ox-beamer.el
 
 Christophe de Dinechin: co-wrote ns-win.el
 
+Christophe Deleuze: changed icalendar.el
+
+Christoph Egger: changed configure.ac
+
+Christophe Junke: changed org-agenda.el org.el
+
 Christopher Allan Webber: changed gamegrid.el org-agenda.el tetris.el
 
-Christopher Genovese: changed assoc.el
+Christopher Genovese: changed assoc.el help-fns.el
+
+Christophe Rhodes: changed ox-latex.el ox.el
 
 Christopher J. Madsen: wrote decipher.el
 and changed replace.el files.el ispell.el time.el
@@ -589,17 +685,31 @@ Christopher J. White: changed url-http.el
 
 Christopher Oliver: changed mouse.el
 
-Christopher Schmidt: changed ibuffer.el
+Christopher Schmidt: changed ibuffer.el org.el tips.texi calc-aent.el
+  calc.el calc.texi calendar.el cl-macs.el comint.el dired-x.el dired.el
+  files.el files.texi find-dired.el gnus-int.el gnus-msg.el gnus.texi
+  help-fns.el info.el locate.el lread.c and 14 other files
+
+Christoph Scholtes: changed README.W32 lib/makefile.w32-in
+  nt/makefile.w32-in progmodes/python.el stdint.h INSTALL
+  maintaining.texi src/makefile.w32-in zipdist.bat INSTALL.REPO admin.el
+  bookmark.el config.nt configure.bat control.texi cua-base.el gmake.defs
+  help-mode.el help.el ibuffer.el ido.el and 13 other files
 
-Christopher Suckling: co-wrote org-mac-message.el
+Christoph Wedler: wrote antlr-mode.el
+and changed format.el gnus-art.el gnus-picon.el message.el register.el
+  smiley.el texinfmt.el
+
+Chris Zheng: changed gnutls.c
 
 Chuck Blake: changed term.c
 
 Chunyu Wang: changed gnus-art.el pcl-cvs.texi
 
-Claudio Bley: changed makefile.w32-in process.c
+Claudio Bley: changed image.c image.el process.c src/makefile.w32-in
+  stat.h w32-win.el w32.c
 
-Claudio Fontana: changed Makefile.in
+Claudio Fontana: changed Makefile.in leim/Makefile.in lib-src/Makefile.in
 
 Colin Marquardt: changed gnus.el message.el
 
@@ -607,29 +717,31 @@ Colin Rafferty: changed message.el
 
 Colin Walters: wrote ibuf-ext.el ibuf-macs.el ibuffer.el
 and changed calc.el replace.el update-game-score.c calc-ext.el
-  calc-misc.el Makefile.in calc-macs.el calc-mode.el calc-graph.el
-  gamegrid.el calc-aent.el calc-bin.el calc-embed.el calc-keypd.el
-  calc-math.el calc-prog.el calc-units.el calcalg2.el font-core.el
-  info.el calc-alg.el and 78 other files
+  calc-misc.el calc-macs.el calc-mode.el calc-graph.el gamegrid.el
+  calc-aent.el calc-bin.el calc-embed.el calc-keypd.el calc-math.el
+  calc-prog.el calc-units.el calcalg2.el font-core.el info.el calc-alg.el
+  calc-arith.el and 80 other files
 
 Colin Williams: changed calc.texi
 
+Constantin Kulikov: changed server.el startup.el
+
 Courtney Bane: changed term.c
 
 Craig Markwardt: changed icalendar.el
 
 Craig McDaniel: changed sheap.c
 
-D. E. Evans: changed basic.texi
+Craig Tanis: changed ox-latex.el
 
 Daiki Ueno: wrote epa-dired.el epa-file.el epa-hook.el epa-mail.el epa.el
   epg-config.el epg.el pgg-def.el pgg-gpg.el pgg-parse.el pgg-pgp.el
   pgg-pgp5.el pgg.el plstore.el sasl.el starttls.el
 and co-wrote sasl-cram.el sasl-digest.el
-and changed mml2015.el mml1991.el epa.texi auth-source.el gnus.texi
-  mm-uu.el mml-smime.el Makefile.in auth.texi gnus-sum.el mm-decode.el
-  mm-view.el mml-sec.el mml.el dired.el dired.texi epa-file-hook.el
-  epa-setup.el epg-package-info.el faces.el files.el and 17 other files
+and changed mml2015.el mml1991.el epa.texi auth-source.el mml-smime.el
+  mml.el package.el gnus.texi mm-decode.el mm-uu.el auth.texi gnus-sum.el
+  mm-view.el mml-sec.el archive-contents archive-contents.sig dbus.el
+  dired.el dired.texi epa-file-hook.el epa-setup.el and 32 other files
 
 Dale Gulledge: changed TUTORIAL.eo
 
@@ -638,9 +750,13 @@ Dale Hagglund: changed unexelf.c
 Dale R. Worley: wrote emerge.el (public domain)
 and changed mail-extr.el
 
+Dale Sedivec: changed sgml-mode.el wisent/python.el
+
+Damien Cassou: changed info.el
+
 Damien Elmes: changed erc.el erc-dcc.el erc-track.el erc-log.el
-  erc-pcomplete.el erc-button.el erc-nets.el erc-ring.el erc-fill.el
-  erc-match.el erc-members.el erc-nickserv.el
+  erc-pcomplete.el README erc-button.el erc-nets.el erc-ring.el Makefile
+  erc-fill.el erc-match.el erc-members.el erc-nickserv.el
 
 Damon Anton Permezel: wrote hanoi.el (public domain)
 
@@ -651,48 +767,50 @@ Dan Christensen: changed gnus-sum.el nndoc.el nnfolder.el 
gnus-art.el
   spam.el time-date.el
 
 Dan Davison: wrote ob-matlab.el ob-octave.el
-and co-wrote ob-R.el ob-exp.el ob-lob.el ob-perl.el ob-python.el
-  ob-ref.el ob.el org-src.el
-and changed ob-sh.el org-exp.el org.el org-latex.el ob-tangle.el ob-C.el
+and co-wrote ob-R.el ob-core.el ob-exp.el ob-lob.el ob-perl.el
+  ob-python.el ob-ref.el org-src.el
+and changed ob.el ob-sh.el org.el ox.el ox-latex.el ob-tangle.el ob-C.el
   ob-asymptote.el ob-clojure.el ob-haskell.el ob-ruby.el ob-scheme.el
   ob-table.el ob-ditaa.el ob-dot.el ob-gnuplot.el ob-js.el ob-mscgen.el
-  ob-ocaml.el ob-org.el ob-plantuml.el ob-sass.el and 13 other files
+  ob-ocaml.el ob-org.el ob-plantuml.el and 14 other files
 
-Dan Nicolaescu: wrote iris-ansi.el romanian.el vc-dir.el
-and co-wrote hideshow.el
-and changed vc.el Makefile.in configure.in vc-hg.el vc-git.el vc-bzr.el
-  sysdep.c emacs.c process.c vc-cvs.el lisp.h term.c vc-hooks.el xterm.c
-  keyboard.c vc-svn.el xterm.el callproc.c darwin.h term.el gnu-linux.h
-  and 918 other files
-
-Dan Rosenberg: changed movemail.c
-
-Dani Moncayo: changed buffers.texi lists.texi custom.texi dired.texi
-  makefile.w32-in text.texi
+Daniel Bergey: changed indian.el
 
 Daniel Brockman: changed cus-start.el format-spec.el ibuffer.el rcirc.el
 
-Daniel Clemente: changed generic-x.el org-html.el
+Daniel Clemente: changed generic-x.el ox-html.el
 
-Daniel Colascione: co-wrote js.el
-and changed cmdproxy.c subr.el syntax.el DEBUG cc-engine.el cus-start.el
-  eval.c fns.c frames.texi imenu.el keyboard.c lisp.h nxml-mode.el
-  nxml-rap.el nxml-util.el sh-script.el which-func.el
+Daniel Colascione: wrote finalizer-tests.el generator-tests.el
+  generator.el syntax-tests.el
+and co-wrote js.el
+and changed w32fns.c alloc.c emacs.c cl-macs.el image.c keyboard.c lisp.h
+  sh-script.el configure.ac cygw32.c process.c src/Makefile.in w32term.h
+  automated/cl-lib-tests.el cygw32.h dbusbind.c fns.c unexcw.c unexw32.c
+  w32.c w32term.c and 144 other files
 
-Daniel Dehennin: changed mml2015.el gnus-msg.el mm-decode.el
+Daniel Dehennin: changed mml2015.el gnus-mlspl.el gnus-msg.el
+  mm-decode.el ox.el
 
 Daniel E. Doherty: changed calc.texi
 
-Daniel Elliott: changed octave-mod.el
+Daniel Elliott: changed octave.el
 
 Daniel Engeler: changed sysdep.c elisp.texi emacs.texi internals.texi
   misc.texi process.c process.h processes.texi term.el w32.c w32.h
 
-Daniel Hackney: changed emacsclient.c package.el process.c
+Daniel Hackney: wrote package-test.el
+and co-wrote package.el
+and changed package-x.el ange-ftp.el automated/Makefile.in
+  automated/package-test.el browse-url.el dbus.el dired-x.el
+  ediff-diff.el ediff-init.el ediff-merg.el ediff-mult.el ediff-util.el
+  ediff-wind.el ediff.el emacsclient.c emerge.el eudc.el eudcb-ldap.el
+  eww.el finder.el imap.el and 7 other files
 
 Daniel Jensen: changed apropos.el
 
-Daniel Laliberte: wrote cl-specs.el cust-print.el edebug.el isearch.el
+Daniel Koning: changed artist.el commands.texi subr.el
+
+Daniel LaLiberte: wrote cust-print.el edebug.el isearch.el
 and co-wrote hideif.el
 and changed mlconvert.el eval-region.el
 
@@ -720,39 +838,61 @@ Daniel Quinlan: changed dired.el info.el
 
 Daniel Schoepe: changed gnus-sum.el
 
+Dani Moncayo: changed Makefile.in msys-to-w32 configure.ac buffers.texi
+  lists.texi mini.texi nt/makefile.w32-in INSTALL README.W32 basic.texi
+  custom.texi dired.texi display.texi emacs-lisp-intro.texi killing.texi
+  make-dist mark.texi msysconfig.sh simple.el text.texi version.el
+  zipdist.bat
+
+Dan Nicolaescu: wrote iris-ansi.el romanian.el vc-dir.el
+and co-wrote hideshow.el
+and changed vc.el configure.ac vc-hg.el vc-git.el src/Makefile.in
+  vc-bzr.el sysdep.c emacs.c process.c vc-cvs.el lisp.h term.c
+  vc-hooks.el xterm.c keyboard.c vc-svn.el xterm.el callproc.c darwin.h
+  term.el gnu-linux.h and 920 other files
+
 Danny Roozendaal: wrote handwrite.el
 
 Danny Siu: changed gnus-sum.el gnus-picon.el nndoc.el nnimap.el smiley.el
 
-Darren Hoo: changed db.el gnus-art.el
+Dan Rosenberg: changed movemail.c
+
+Darren Hoo: changed db-find.el db.el gnus-art.el isearch.el man.el
+  nsmenu.m startup.el
 
 Darren Stalder: changed gnus-util.el
 
 Darrin B. Jewell: changed etags.c lisp.h
 
+Dato Simó: changed network-stream.el
+
 Dave Detlefs: co-wrote cc-align.el cc-cmds.el cc-defs.el cc-engine.el
   cc-langs.el cc-menus.el cc-mode.el cc-styles.el cc-vars.el
 
+Dave Goldberg: changed message.el
+
 Dave Lambert: changed sol2-5.h xfns.c xterm.c xterm.h
 
-Dave Love: wrote autoarg.el autoconf.el benchmark.el cap-words.el
-  cfengine.el elide-head.el hl-line.el language/georgian.el
-  latin1-disp.el progmodes/python.el quail/georgian.el refill.el
-  rfc1345.el sgml-input.el smiley.el sym-comp.el tool-bar.el uni-input.el
-  utf-7.el utf-8-lang.el vc/vc-bzr.el welsh.el
+Dave Love: wrote autoarg.el autoconf.el benchmark.el cfengine.el
+  elide-head.el hl-line.el language/georgian.el latin1-disp.el
+  quail/georgian.el refill.el rfc1345.el sgml-input.el smiley.el
+  sym-comp.el tool-bar.el uni-input.el utf-7.el utf-8-lang.el
+  vc/vc-bzr.el welsh.el
 and co-wrote latin-ltx.el socks.el
-and changed Makefile.in configure.in help.el mule-cmds.el fortran.el
-  mule-conf.el xterm.c browse-url.el mule.el coding.c european.el fns.c
-  mule-diag.el simple.el wid-edit.el cus-edit.el cus-start.el files.el
-  keyboard.c byte-opt.el info.el and 770 other files
+and changed configure.ac help.el mule-cmds.el fortran.el mule-conf.el
+  xterm.c browse-url.el mule.el coding.c src/Makefile.in european.el
+  fns.c mule-diag.el simple.el wid-edit.el cus-edit.el cus-start.el
+  files.el keyboard.c byte-opt.el info.el and 770 other files
 
 Dave Pearson: wrote 5x5.el quickurl.el
 
-David A. Capello: changed etags.c
+David Abrahams: changed gnus-int.el gnus-sum.el nnimap.el
+  gnus-registry.el org-agenda.el auth-source.el coding.c cus-start.el
+  ediff-init.el ediff-util.el filelock.c gnus-range.el gnus-salt.el
+  gnus.texi mairix.el nnir.el nnmairix.el nnregistry.el org-clock.el
+  org.el
 
-David Abrahams: changed gnus-sum.el org-agenda.el coding.c ediff-init.el
-  gnus-registry.el gnus.texi mairix.el nnimap.el nnir.el nnmairix.el
-  nnregistry.el org-clock.el
+David A. Capello: changed etags.c
 
 David Bakhash: wrote strokes.el
 
@@ -762,20 +902,25 @@ David Burger: changed macros.el
 
 David Byers: changed minibuf.c
 
+David Cadé: changed mpc.el
+
+David Caldwell: changed unexmacosx.c
+
 David Casperson: changed font-core.el menu-bar.el tex-mode.el
 
 David De La Harpe Golden: changed files.el mouse.el simple.el fileio.c
   cus-start.el nsselect.m select.el w32-fns.el x-win.el xterm.c
 
-David Edmondson: changed message.el gnus-cite.el imap.el mm-uu.el
-  mm-view.el mml2015.el nnfolder.el nnimap.el nnml.el
+David Edmondson: changed message.el mml2015.el gnus-cite.el mm-uu.el
+  mm-view.el nnfolder.el nnimap.el nnml.el shr.el
 
 David Engster: wrote mairix.el nnmairix.el
-and changed gnus.texi insert.el registry.el db-find.el gnus-msg.el
-  analyze/complete.el base.el bovine-grammar.el cedet/srecode.el
-  cpp-root.el db-typecache.el db.el dictionary.el display.texi
-  document.el ede-grammar.el ede/custom.el ede/generic.el files.el
-  filters.el gnus-registry.el and 23 other files
+and co-wrote gitmerge.el
+and changed cedet/semantic.el db.el insert.el semantic/complete.el c.by
+  c.el db-el.el db-find.el ede-grammar.el eieio-opt.el eieio.el
+  eieio.texi gnus.texi registry.el srecode/compile.el wisent/python.el
+  analyze.el bovine/el.el bovine/grammar.el db-file.el decorate/mode.el
+  and 85 other files
 
 David Gillespie: wrote calc-aent.el calc-alg.el calc-arith.el calc-bin.el
   calc-comb.el calc-cplx.el calc-embed.el calc-ext.el calc-fin.el
@@ -785,9 +930,9 @@ David Gillespie: wrote calc-aent.el calc-alg.el 
calc-arith.el calc-bin.el
   calc-prog.el calc-rewr.el calc-rules.el calc-sel.el calc-stat.el
   calc-store.el calc-stuff.el calc-trail.el calc-undo.el calc-units.el
   calc-vec.el calc-yank.el calc.el calcalg2.el calcalg3.el calccomp.el
-  calcsel2.el cl-compat.el cl-extra.el cl-macs.el cl-seq.el cl.el cl.texi
-  edmacro.el obsolete/complete.el
-and changed info.el bytecomp.el complete.el
+  calcsel2.el cl-compat.el cl-extra.el cl-macs.el cl-seq.el cl.texi
+  edmacro.el emacs-lisp/cl-lib.el obsolete/complete.el
+and changed info.el bytecomp.el cl.el complete.el
 
 David Glasser: changed tar-mode.el
 
@@ -800,44 +945,37 @@ David Hedbor: changed nnmail.el
 
 David Hull: changed vc-hg.el
 
-David Hunter: changed config.nt flymake.el ms-w32.h process.c
-
-David J. Biesack: changed antlr-mode.el
+David Hunter: changed config.nt flymake.el inc/ms-w32.h process.c
 
-David J. MacKenzie: changed configure.in etags.c Makefile.in fakemail.c
-  movemail.c wakeup.c cvtmail.c qsort.c termcap.c yow.c Makefile avoid.el
-  b2m.c config.in digest-doc.c emacsclient.c emacsserver.c emacstool.c
-  etags-vmslib.c fortran.el hexl.c and 14 other files
+David J. Biesack: changed antlr-mode.el quickurl.el
 
-David Kastrup: changed quail/greek.el replace.el faq.texi search.c
-  ange-ftp.el calc.el help.el keymaps.texi mouse.el subr.el woman.el
-  Makefile.in desktop.el gnus-art.el keymap.c keymap.h lisp-mnt.el
-  meta-mode.el mpuz.el process.c search.texi and 79 other files
+David J. MacKenzie: changed configure.ac Makefile.in etags.c fakemail.c
+  cvtmail.c movemail.c termcap.c wakeup.c yow.c Makefile avoid.el b2m.c
+  config.in digest-doc.c emacsclient.c emacsserver.c emacstool.c
+  etags-vmslib.c fortran.el hexl.c isearch.el and 14 other files
 
 David Kågedal: wrote tempo.el
 and changed sendmail.el xmenu.c
 
+David Kastrup: changed greek.el replace.el efaq.texi search.c subr.el
+  ange-ftp.el calc.el help.el keymaps.texi mouse.el woman.el desktop.el
+  gnus-art.el keymap.c keymap.h lisp-mnt.el meta-mode.el mpuz.el
+  process.c search.texi startup.el and 81 other files
+
 David Lawrence: changed comint.el simple.el files.el c++-mode.el
-  compile.el getdate.y inf-lisp.el shell.el emerge.el tex-mode.el
-  c-mode.el cl.el dired.el emacs.1 emacsserver.c gnus.el history.el
-  lisp-mode.el lisp.el mh-e.el rnews.el and 79 other files
+  compile.el inf-lisp.el shell.el emerge.el tex-mode.el c-mode.el cl.el
+  dired.el getdate.y gnus.el history.el lisp-mode.el lisp.el mh-e.el
+  rnews.el subr.el Makefile and 79 other files
 
 David Lord: changed timeclock.el
 
-David M. Brown: wrote array.el
-
-David M. Koppelman: wrote hi-lock.el
-and changed display.texi
-
-David M. Smith: wrote ielm.el
-and changed imenu.el pgg-def.el xterm.c
+David Maus: changed org.el org-agenda.el ox.el org-feed.el org-wl.el
+  org-macs.el ox-html.el org-capture.el org.texi org-gnus.el org-bbdb.el
+  org-clock.el org-protocol.el ox-publish.el ob-haskell.el ob.el
+  org-bibtex.el org-compat.el org-footnote.el org-id.el org-list.el
+  and 20 other files
 
-David Maus: co-wrote org-wl.el
-and changed org.el org-agenda.el org-feed.el org-exp.el org-html.el
-  org-macs.el org-capture.el org.texi org-gnus.el org-bbdb.el
-  org-clock.el org-protocol.el org-publish.el ob-haskell.el ob.el
-  org-bibtex.el org-compat.el org-footnote.el org-id.el org-latex.el
-  org-list.el and 20 other files
+David M. Brown: wrote array.el
 
 David McCabe: changed lisp-mode.el
 
@@ -846,44 +984,57 @@ and changed mode-clone.el
 
 David Michael: changed files.el
 
+David M. Koppelman: wrote hi-lock.el
+and changed display.texi
+
 David Moore: co-wrote nnvirtual.el
 and changed gnus-xmas.el
 
-David Mosberger-Tang: changed alpha.h unexelf.c cm.h config.in
-  configure.in cvtmail.c data.c dispnew.c emacsserver.c etags.c
-  fakemail.c keyboard.c mem-limits.h process.c profile.c sorted-doc.c
-  sysdep.c terminfo.c unexelf1.c yow.c
+David Mosberger-Tang: changed alpha.h unexelf.c cm.h configure.ac
+  cvtmail.c data.c dispnew.c emacsserver.c etags.c fakemail.c keyboard.c
+  mem-limits.h process.c profile.c sorted-doc.c sysdep.c terminfo.c
+  unexelf1.c yow.c
+
+David M. Smith: wrote ielm.el
+and changed imenu.el pgg-def.el xterm.c
 
-David O'Toole: wrote org-publish.el
+David O'Toole: wrote ox-publish.el
 and co-wrote ob-lisp.el
 
-David Ponce: wrote bovine-grammar.el cedet.el comp.el grammar-wy.el
-  grammar.el java-tags.el mode-local.el recentf.el ruler-mode.el
+David Ponce: wrote bovine/grammar.el cedet.el comp.el java-tags.el
+  mode-local.el recentf.el ruler-mode.el semantic/grammar.el
   semantic/java.el semantic/wisent.el senator.el tree-widget.el
-  wisent-grammar.el wisent/wisent.el
+  wisent/grammar.el wisent/wisent.el
 and co-wrote util-modes.el
 and changed w32menu.c w32term.c close.png close.xpm empty.png empty.xpm
   end-guide.png end-guide.xpm files.el guide.png guide.xpm handle.png
   handle.xpm keyboard.c leaf.png leaf.xpm no-guide.png no-guide.xpm
-  no-handle.png no-handle.xpm open.png and 20 other files
+  no-handle.png no-handle.xpm open.png and 22 other files
+
+David Raynes: changed ns-win.el
 
 David Reitter: wrote mailclient.el
-and changed nsterm.m nsfns.m ns-win.el nsfont.m Makefile.in cus-start.el
-  macos.texi menu-bar.el nsmenu.m simple.el commands.h cus-edit.el
+and changed nsterm.m nsfns.m ns-win.el nsfont.m cus-start.el macos.texi
+  menu-bar.el nsmenu.m simple.el Makefile.in commands.h cus-edit.el
   easy-mmode.el emacsbug.el emacsclient.c faces.el flyspell.el info.el
-  keyboard.c keymap.c macterm.c and 12 other files
+  keyboard.c keymap.c lib-src/Makefile.in and 15 other files
 
-David Robinow: changed makefile.w32-in w32inevt.c
+David Robinow: changed w32inevt.c lib-src/makefile.w32-in
+  lispintro/makefile.w32-in
 
 David Robinson: changed menu-bar.el x-win.el
 
+David Röthlisberger: changed ido.el
+
 David S. Goldberg: changed gnus-art.el message.el
 
 David Vazquez: changed m4-mode.el
 
 David Z. Maze: changed nnml.el nnrss.el
 
-Deanna Phillips: changed configure.in
+Davor Cubranic: changed nsterm.m
+
+Deanna Phillips: changed configure.ac
 
 Debarshi Ray: changed erc-backend.el erc.el
 
@@ -894,6 +1045,8 @@ Deepak Goel: changed idlw-shell.el ada-xref.el feedmail.el 
files.el
   org.el simple.el vc.el vhdl-mode.el wdired.el README ada-mode.el
   allout.el appt.el apropos.el artist.el and 85 other files
 
+D. E. Evans: changed basic.texi
+
 Denis B. Roegel: co-wrote solar.el
 
 Denis Bueno: changed autorevert.el
@@ -903,15 +1056,16 @@ and changed complete.el
 
 Denis Stünkel: changed ibuf-ext.el
 
-Deniz Dogan: changed rcirc.el simple.el css-mode.el commands.texi
-  image.el iswitchb.el lisp-mode.el process.c progmodes/python.el
-  quickurl.el rcirc.texi vc/vc-bzr.el wdired.el window.el
+Deniz Dogan: changed rcirc.el simple.el css-mode.el TUTORIAL.sv
+  commands.texi erc-log.el erc.el image.el iswitchb.el lisp-mode.el
+  process.c progmodes/python.el quickurl.el rcirc.texi vc/vc-bzr.el
+  wdired.el window.el
 
 Dennis Gilmore: changed sparc.h
 
 Denys Duchier: changed pop3.el
 
-Derek Atkins: changed imap.el pgg-pgp.el
+Derek Atkins: changed pgg-pgp.el
 
 Derek L. Davies: changed gud.el
 
@@ -920,17 +1074,18 @@ Derek Peschel: changed etags.c
 Derek Upham: changed nxml-mode.el
 
 Detlev Zundel: wrote re-builder.el
+and changed buffer.c
 
 Devon Sean McCullough: changed comint.el url-http.el
 
-Dhruva Krishnamurthy: changed makefile.w32-in emacsclient.c fontset.c
-  sound.c w32proc.c
+Dhruva Krishnamurthy: changed emacsclient.c fontset.c makefile.w32-in
+  misc/makefile.w32-in nt/makefile.w32-in sound.c w32proc.c
 
 Diane Murray: changed erc.el erc-backend.el erc-menu.el erc-button.el
   erc-track.el erc-match.el erc-nets.el erc-list.el erc-autoaway.el
   erc-capab.el erc-nickserv.el erc-stamp.el erc-compat.el erc-fill.el
   erc-goodies.el erc-ibuffer.el erc-log.el erc-nicklist.el url-http.el
-  erc-dcc.el erc-networks.el and 35 other files
+  Makefile erc-dcc.el and 37 other files
 
 Didier Verna: wrote gnus-diary.el nndiary.el
 and co-wrote nnml.el
@@ -938,30 +1093,38 @@ and changed nntp.el message.el gnus-group.el gnus-sum.el 
gnus-msg.el
   gnus.texi gnus-art.el gnus-srvr.el gnus-start.el gnus-topic.el
   gnus-xmas.el gnus-picon.el gnus-salt.el cus-edit.el gnus-int.el
   gnus-util.el message.texi nnmail.el rect.el cl-indent.el gmm-utils.el
-  and 8 other files
+  and 10 other files
 
 Dieter Schuster: changed etags.c
 
-Dima Kogan: changed hideshow.el
+Dima Kogan: changed hideshow.el autorevert.el erc-backend.el font.c
+  subword.el gud.el simple.el xfaces.c xgselect.c
 
 Dirk Herrmann: co-wrote bibtex.el
 
-Dirk Ullrich: changed ispell.el
-
 Dirk-Jan C. Binnema: changed org-agenda.el
 
+Dirk Ullrich: changed ispell.el
+
 Dmitri Paduchikh: changed advice.el
 
-Dmitry Antipov: changed alloc.c keyboard.c buffer.c ccl.c editfns.c
-  emacs.c fontset.c keymap.c lisp.h lread.c lwlib-Xaw.c lwlib-Xm.c
-  lwlib-utils.c lwlib.c macmenu.c w32menu.c xdisp.c xlwmenu.c xmenu.c
+Dmitry Antipov: changed lisp.h alloc.c xdisp.c xterm.c buffer.c frame.c
+  window.c xfns.c font.c w32term.c frame.h keyboard.c nsterm.m w32fns.c
+  editfns.c xfaces.c xterm.h dispnew.c fileio.c dispextern.h fns.c
+  and 273 other files
 
 Dmitry Bolshakov: changed hideshow.el
 
 Dmitry Dzhus: changed gdb-mi.el gud.el fadr.el all.xpm building.texi
   emacs.texi process.c thread.xpm
 
-Dmitry Gutov: changed lisp.el ruby-mode.el
+Dmitry Gorbik: changed org.el
+
+Dmitry Gutov: changed ruby-mode.el ruby-mode-tests.el xref.el ruby.rb
+  package.el vc-git.el log-edit.el package-test.el elisp-mode.el js.el
+  lisp.el menu-bar.el etags.el newcomment.el vc-svn.el vc.el
+  archive-contents automated/package-test.el find-func.el minibuffer.el
+  simple.el and 40 other files
 
 Dmitry Kurochkin: changed isearch.el
 
@@ -975,30 +1138,31 @@ Don Woods: changed replace.el
 
 Doug Cutting: co-wrote disass.el
 
+Douglas Lewan: changed TUTORIAL.pt_BR
+
 Doug Maxey: changed mouse.el
 
 Drake Wilson: changed emacsclient.c files.el misc.texi
 
 Drew Adams: wrote light-blue-theme.el
 and co-wrote color.el
-and changed cus-edit.el dired.el faces.el files.el info.el isearch.el
-  menu-bar.el mouse.el ange-ftp.el bindings.el bookmark.el custom.el
-  descr-text.el dired.texi etags.el finder.el frame.el help-fns.el
-  help.el image-dired.el modes.texi and 7 other files
-
-E. Jay Berkenbilt: changed b2m.c flyspell.el ispell.el unrmail.el
-  whitespace.el window.h
+and changed cus-edit.el dired.el faces.el files.el help-mode.el imenu.el
+  info.el isearch.el menu-bar.el mouse.el ange-ftp.el bindings.el
+  bookmark.el custom.el descr-text.el dired.texi etags.el finder.el
+  frame.el help-fns.el help.el and 10 other files
 
-Ed L. Cashin: changed gnus-sum.el imap.el
+Ed L. Cashin: changed gnus-sum.el
 
 Ed Swarthout: changed hexl.el textmodes/table.el
 
-Eduard Wiebe: changed dired.el browse-url.el flymake.texi footnote.el
-  javascript.el jit-lock.el korean.el locate.el mule-conf.el
-  nxml-mode.texi objects.texi ps-print.el vc-rcs.el
-
 Eduardo Muñoz: changed dired.el ls-lisp.el
 
+Eduard Wiebe: wrote flymake-tests.el
+and changed dired.el flymake.texi Makefile browse-url.el flymake.el
+  footnote.el javascript.el jit-lock.el korean.el locate.el mule-conf.el
+  nxml-mode.texi objects.texi ps-print.el sysdep.c test.c test.pl
+  vc-rcs.el
+
 Edward M. Reingold: wrote cal-china.el cal-coptic.el cal-french.el
   cal-islam.el cal-iso.el cal-julian.el cal-move.el cal-persia.el
   calendar.el diary-lib.el holidays.el lunar.el
@@ -1018,28 +1182,32 @@ Edward Trumbo: changed Makefile.in
 
 Edwin Steiner: changed gnus-nocem.el
 
-Ehud Karni: changed rmail.el aviion-intel.h complete.el configure.in
+Ehud Karni: changed rmail.el aviion-intel.h complete.el configure.ac
   frame.el progmodes/compile.el rmailsum.el sort.el xdisp.c
 
 Eirik Fuller: changed ralloc.c xterm.c
 
-Eli Barzilay: wrote calculator.el
+E. Jay Berkenbilt: changed b2m.c flyspell.el ispell.el unrmail.el
+  whitespace.el window.h
 
-Eli Tziperman: wrote rmail-spam-filter.el
+Elias Oltmanns: changed tls.el gnus-agent.el gnus-cite.el gnus-int.el
+  gnus-srvr.el gnus.el nnimap.el
 
-Eli Zaretskii: wrote [bidirectional display in xdisp.c] bidi.c rxvt.el
-  tty-colors.el
-and changed makefile.w32-in xdisp.c msdos.c Makefile.in files.el
-  config.bat fileio.c simple.el msdos.h info.el mainmake.v2 rmail.el
-  sed1v2.inp display.texi w32.c pc-win.el process.c dispnew.c startup.el
-  dispextern.h dired.c and 702 other files
+Elias Pipping: changed doc-view.el XDelAssoc.c XMakeAssoc.c files.el
+  shr.el
 
-Elias Oltmanns: changed tls.el gnus-agent.el gnus-int.el gnus-srvr.el
-  gnus.el
+Eli Barzilay: wrote calculator.el
 
-Elias Pipping: changed XDelAssoc.c XMakeAssoc.c shr.el
+Eli Tziperman: wrote rmail-spam-filter.el
+
+Eli Zaretskii: wrote [bidirectional display in xdisp.c]
+  [tty menus in term.c] bidi.c biditest.el rxvt.el tty-colors.el
+and changed xdisp.c msdos.c w32.c w32fns.c fileio.c files.el simple.el
+  w32proc.c display.texi dispnew.c dispextern.h config.bat emacs.c
+  sed1v2.inp src/makefile.w32-in term.c w32term.c msdos.h src/Makefile.in
+  keyboard.c process.c and 797 other files
 
-Emanuele Giaquinta: changed configure.in rxvt.el charset.c etags.c
+Emanuele Giaquinta: changed configure.ac rxvt.el charset.c etags.c
   fontset.c frame.el gnus-faq.texi loadup.el lread.c sh-script.el
   text.texi
 
@@ -1049,44 +1217,55 @@ Emilio C. Lopes: changed woman.el cmuscheme.el help.el 
vc.el advice.el
   animate.el apropos.el artist.el bookmark.el cal-menu.el calc-prog.el
   calc-store.el calcalg3.el calendar.el calendar.texi checkdoc.el
   code-pages.el codepage.el completion.el cus-edit.el diff.el
-  and 53 other files
+  and 56 other files
 
 Emmanuel Briot: wrote ada-prj.el xml.el
 and co-wrote ada-mode.el ada-xref.el
 and changed ada-stmt.el
 
-Era Eriksson: changed bibtex.el dired.el shell.el tramp.el tramp.texi
+Era Eriksson: changed bibtex.el dired.el json.el ses.el ses.texi shell.el
+  tramp.el tramp.texi
+
+Eric Abrahamsen: changed nnir.el eieio.el gnus-bcklg.el gnus-registry.el
+  gnus-sum.el gnus.texi nnimap.el nnmairix.el org.el org.texi ox-html.el
+  ox-latex.el registry.el
 
 Eric Bélanger: changed image.c
 
-Eric Decker: changed hp800.h hpux10-20.h sysdep.c
+Eric Brown: changed eww.el
+
+Eric Decker: changed sysdep.c (and other files for HP-UX support)
 
 Eric Ding: wrote goto-addr.el
 and changed mh-utils.el mh-e.el mh-comp.el mh-mime.el
 
 Eric Eide: changed gnus-xmas.el
 
-Eric Hanchrow: changed vc-git.el TUTORIAL.es abbrev.el autorevert.el
-  cperl-mode.el delphi.el dired.el emacsclient.c env.el erc.el
-  frames.texi ibuf-ext.el ispell.el ldap.el make-dist tramp.texi
-  window.el
+Eric Hanchrow: changed erc.el vc-git.el TUTORIAL.es abbrev.el
+  autorevert.el cperl-mode.el dired.el emacsclient.c env.el frames.texi
+  ibuf-ext.el ispell.el ldap.el make-dist opascal.el progmodes/python.el
+  tramp.texi window.el
 
 Éric Jacoboni: changed fr-refcard.tex
 
 Eric Knauel: changed gnus.el spam-report.el spam.el
 
+Eric Marsden: changed gnus-cache.el url-util.el
+
 Eric M. Ludlam: wrote analyze.el analyze/complete.el analyze/debug.el
   args.el auto.el autoconf-edit.el base.el bovine.el bovine/debug.el
   bovine/el.el bovine/make.el c.el cedet-cscope.el cedet-files.el
   cedet-global.el cedet-idutils.el cedet-utests.el cedet/semantic.el
-  cedet/srecode.el checkdoc.el cpp-root.el cscope.el data-debug.el
-  db-debug.el db-el.el db-file.el db-find.el db-global.el db-mode.el
-  db-ref.el db-typecache.el db.el decorate.el decorate/mode.el dep.el
-  dframe.el dictionary.el doc.el document.el ede-grammar.el ede-tests.el
-  ede.el ede/custom.el ede/dired.el ede/files.el ede/generic.el
-  ede/linux.el ede/locate.el ede/make.el ede/shell.el ede/simple.el
-  ede/speedbar.el ede/srecode.el ede/util.el edit.el eieio-base.el
-  eieio-custom.el eieio-datadebug.el eieio-opt.el eieio-speedbar.el
+  cedet/srecode.el checkdoc.el config.el cpp-root.el cscope.el
+  data-debug.el db-debug.el db-el.el db-file.el db-find.el db-global.el
+  db-mode.el db-ref.el db-typecache.el db.el decorate.el decorate/mode.el
+  dep.el detect.el dframe.el dictionary.el doc.el document.el
+  ede-grammar.el ede-tests.el ede.el ede/custom.el ede/dired.el
+  ede/files.el ede/generic.el ede/linux.el ede/locate.el ede/make.el
+  ede/shell.el ede/simple.el ede/speedbar.el ede/srecode.el ede/util.el
+  edit.el eieio-base.el eieio-compat.el eieio-core.el eieio-custom.el
+  eieio-datadebug.el eieio-opt.el eieio-speedbar.el
+  eieio-test-methodinvoke.el eieio-test-persist.el eieio-tests.el
   eieio.el emacs-lisp/chart.el emacs.el expandproto.el extract.el
   ezimage.el fcn.el fields.el filter.el filters.el fw.el gcc.el getset.el
   global.el html.el ia-sb.el ia.el idle.el idutils.el include.el
@@ -1105,53 +1284,57 @@ Eric M. Ludlam: wrote analyze.el analyze/complete.el 
analyze/debug.el
   srt.el symref.el symref/grep.el system.el tag-file.el tag-ls.el
   tag-write.el tag.el test.el
 and co-wrote db-ebrowse.el srecode/cpp.el util-modes.el
-and changed info.el rmail.el speedbspec.el gud.el sb-dir-minus.xpm
+and changed c.srt ede.texi info.el rmail.el speedbspec.el cedet.el
+  ede-autoconf.srt ede-make.srt eieio.texi gud.el sb-dir-minus.xpm
   sb-dir-plus.xpm sb-dir.xpm sb-mail.xpm sb-pg-minus.xpm sb-pg-plus.xpm
   sb-pg.xpm sb-tag-gt.xpm sb-tag-minus.xpm sb-tag-plus.xpm
-  sb-tag-type.xpm sb-tag-v.xpm sb-tag.xpm Makefile.in c-by.el cedet.el
-  comint.el and 18 other files
+  sb-tag-type.xpm and 31 other files
 
-Eric Marsden: changed gnus-cache.el url-util.el
+Eric Schulte: wrote ob-C.el ob-asymptote.el ob-awk.el ob-calc.el
+  ob-comint.el ob-css.el ob-ditaa.el ob-dot.el ob-emacs-lisp.el
+  ob-eval.el ob-gnuplot.el ob-haskell.el ob-java.el ob-js.el ob-keys.el
+  ob-latex.el ob-makefile.el ob-ocaml.el ob-org.el ob-ruby.el ob-sass.el
+  ob-sh.el ob-shen.el ob-sql.el ob-sqlite.el ob-table.el ob-tangle.el
+  ob.el org-plot.el
+and co-wrote ob-R.el ob-clojure.el ob-core.el ob-exp.el ob-fortran.el
+  ob-lisp.el ob-lob.el ob-maxima.el ob-perl.el ob-picolisp.el
+  ob-python.el ob-ref.el ob-scheme.el org-bibtex.el
+and changed org.texi org.el org-exp-blocks.el ox.el ox-latex.el
+  org-src.el ob-plantuml.el ob-screen.el org-macs.el org-table.el
+  org-agenda.el org-mouse.el orgcard.tex ob-lilypond.el ob-mscgen.el
+  ob-octave.el org-clock.el org-compat.el org-footnote.el ox-ascii.el
+  ox-html.el and 12 other files
 
 Eric S Fraga: wrote ob-ledger.el
 and co-wrote ob-maxima.el
-and changed org-icalendar.el org-latex.el org.texi
+and changed ox-icalendar.el org.texi ox-latex.el
 
 Eric S. Raymond: wrote AT386.el asm-mode.el cookie1.el finder.el gud.el
   keyswap.el lisp-mnt.el loadhist.el
 and co-wrote make-mode.el
-and changed vc.el vc-hooks.el vc-svn.el vc-cvs.el files.texi vc-bzr.el
-  vc-dispatcher.el vc-git.el vc-hg.el vc-sccs.el vc-rcs.el vc-mcvs.el
-  Makefile.in files.el comint.el simple.el vc-arch.el vc-mtn.el
-  add-log.el cust-print.el dired.el and 249 other files
-
-Eric Schulte: wrote ob-C.el ob-asymptote.el ob-awk.el ob-calc.el
-  ob-comint.el ob-css.el ob-ditaa.el ob-dot.el ob-emacs-lisp.el
-  ob-eval.el ob-gnuplot.el ob-haskell.el ob-java.el ob-js.el ob-keys.el
-  ob-latex.el ob-ocaml.el ob-org.el ob-ruby.el ob-sass.el ob-scheme.el
-  ob-sh.el ob-shen.el ob-sql.el ob-sqlite.el ob-table.el ob-tangle.el
-  org-exp-blocks.el org-plot.el
-and co-wrote ob-R.el ob-clojure.el ob-exp.el ob-fortran.el ob-lisp.el
-  ob-lob.el ob-maxima.el ob-perl.el ob-picolisp.el ob-python.el ob-ref.el
-  ob.el org-bibtex.el
-and changed org.texi org.el org-exp.el org-latex.el ob-plantuml.el
-  org-src.el org-table.el org-agenda.el org-macs.el orgcard.tex
-  ob-lilypond.el ob-mscgen.el ob-octave.el ob-screen.el org-ascii.el
-  org-footnote.el org-html.el org-mouse.el gnus-art.el ob-ledger.el
-  ob-matlab.el and 5 other files
+and changed vc.el vc-hooks.el vc-svn.el vc-cvs.el vc-git.el vc-rcs.el
+  vc-sccs.el vc-hg.el vc-bzr.el vc-dispatcher.el files.texi vc-mcvs.el
+  vc-mtn.el files.el comint.el emacsbug.el simple.el vc-arch.el vc-src.el
+  Makefile.in add-log.el and 271 other files
 
 Eric Youngdale: changed etags-vmslib.c
 
 Eric Yu: changed speedbar.texi
 
+Erik Charlebois: changed syntax.el w32fns.c w32term.c w32term.h
+
+Erik Hetzner: changed org.el
+
 Erik Naggum: wrote disp-table.el mailheader.el parse-time.el
 and changed simple.el emacs.c files.el lread.c rmail.el alloc.c editfns.c
-  keyboard.c apropos.el configure.in dispnew.c filelock.c fns.c keymap.c
+  keyboard.c apropos.el configure.ac dispnew.c filelock.c fns.c keymap.c
   lisp.h print.c process.c add-log.el buffer.c casetab.c cl-macs.el
   and 114 other files
 
 Erik Toubro Nielsen: changed gnus-sum.el gnus-topic.el
 
+E Sabof: changed hi-lock.el image-dired.el
+
 Espen Skoglund: wrote pascal.el
 
 Espen Wiborg: changed utf-7.el
@@ -1159,7 +1342,7 @@ Espen Wiborg: changed utf-7.el
 Ethan Bradford: changed ispell.el ange-ftp.el gnus.el gnuspost.el lpr.el
   mailalias.el vt-control.el
 
-Ethan Ligon: changed org-docbook.el org-html.el
+Ethan Ligon: changed org-docbook.el ox-html.el
 
 Eugene Exarevsky: changed sql.el
 
@@ -1169,21 +1352,29 @@ Evgeni Dobrev: changed man.el
 
 Evgeny Roubinchtein: changed mail-source.el pc-select.el
 
-Exal de Jesus Garcia Carrillo: changed erc.texi erc-sound.el
+Exal de Jesus Garcia Carrillo: changed erc-sound.el erc.texi
 
-F. Thomas May: wrote blackbox.el
+Eyal Lotem: changed ido.el
 
-Fabian Ezequiel Gallina: changed progmodes/python.el
+Fabián Ezequiel Gallina: wrote progmodes/python.el subr-x-tests.el
+and changed python-tests.el subr-x.el imenu.el
 
 Fabrice Bauzac: changed dired-aux.el
 
-Fabrice Popineau: changed config.nt etags.c fileio.c gnus-cache.el
-  inttypes.h lisp.h ms-w32.h nmake.defs regex.c stdint.h w32.c w32heap.c
+Fabrice Niessen: wrote leuven-theme.el
+and changed org-agenda.el
+
+Fabrice Popineau: changed w32.c ms-w32.h w32fns.c w32heap.c configure.ac
+  lisp.h unexw32.c w32term.c buffer.c emacs.c image.c nmake.defs
+  w32heap.h w32proc.c INSTALL addsection.c alloc.c config.nt dispextern.h
+  emacs-x64.manifest emacs-x86.manifest and 23 other files
 
 Fan Kai: changed esh-arg.el
 
 Faried Nawaz: changed message.el
 
+Felix H. Dahlke: changed js.el
+
 Felix Lee: changed flyspell.el outline.el cl.texi data.c gud.el nntp.el
   process.c progmodes/compile.el vc.el xdisp.c
 
@@ -1191,30 +1382,39 @@ Felix Mueller: changed nsterm.m
 
 Felix S. T. Wu: co-wrote vi.el (public domain)
 
-Feng Li: changed calc-ext.el
+Feng Li: changed calc-ext.el pascal.el which-func.el
+
+Feng Shu: changed org.el org.texi ox.el ox-html.el ox-latex.el ox-odt.el
 
 Ferenc Wagner: changed nnweb.el
 
 Filipe Cabecinhas: changed nsterm.m
 
+Filipp Gunbin: changed autorevert.el cc-menus.el dired-aux.el info.el
+  info.texi
+
 Flemming Hoejstrup Hansen: changed forms.el
 
+Florian Adamsky: changed recentf.el
+
+Florian Beck: changed org.el
+
 Florian Ragwitz: changed gnus-html.el sieve-manage.el
 
 Florian Weimer: changed message.el gnus.el coding.c gnus-sum.el gnus.texi
   mm-decode.el mm-util.el
 
-Fran Litterio: changed erc-backend.el erc.el
-
-Francesc Rocher: changed MORE.STUFF startup.el cus-start.el gnus.el
-  gnus.png gnus.svg macterm.c splash.png splash.svg splash8.xpm w32term.c
-  xdisp.c xterm.c
+Francesco Pizzolante: changed org-clock.el org-macs.el org.el ox-html.el
 
 Francesco Potortì: wrote cmacexp.el
-and changed etags.c man.el delta.h etags.1 undigest.el Makefile.in
-  comint.el configure.in maintaining.texi uniquify.el latin-post.el
-  rmail.el etags.el latin-alt.el sgml-mode.el data.c european.el
-  filelock.c files.el generic-x.el gud.el and 45 other files
+and changed etags.c man.el delta.h etags.1 undigest.el comint.el
+  configure.ac maintaining.texi uniquify.el latin-post.el rmail.el
+  etags.el latin-alt.el lib-src/Makefile.in sgml-mode.el Makefile.in
+  data.c european.el filelock.c files.el generic-x.el and 44 other files
+
+Francesc Rocher: changed MORE.STUFF splash.png splash.svg startup.el
+  README cus-start.el gnus.el gnus.png gnus.svg macterm.c splash.pbm
+  splash.xpm splash8.xpm w32term.c xdisp.c xterm.c
 
 Francis Devereux: changed nsfont.m
 
@@ -1222,15 +1422,23 @@ Francis J. Wright: wrote woman.el
 and changed dired.el comint.el cus-edit.el files.el ps-print.el
 
 Francis Litterio: changed erc.el erc-list.el erc-dcc.el erc-notify.el
-  erc-button.el erc-goodies.el erc-nets.el erc-ring.el erc-pcomplete.el
-  message.el erc-backend.el erc-ibuffer.el erc-match.el erc-nickserv.el
-  erc-page.el erc-speedbar.el gnus-util.el keymaps.texi os.texi
-  saveplace.el w32term.c and 3 other files
+  erc-button.el erc-goodies.el erc-nets.el erc-ring.el Makefile
+  erc-pcomplete.el message.el erc-backend.el erc-ibuffer.el erc-match.el
+  erc-nickserv.el erc-page.el erc-speedbar.el gnus-util.el keymaps.texi
+  os.texi saveplace.el and 4 other files
+
+François Allisson: changed org.texi
+
+François-David Collin: changed message.el mm-decode.el
 
 Francois Felix Ingrand: changed gnus-salt.el
 
 Francois Fleuret: changed tex-mode.el
 
+François Pinard: co-wrote po.el
+and changed nndoc.el allout.el bytecomp.el gnus-sum.el gnus-util.el
+  gnus-uu.el make-mode.el nnmail.el org.el rmailsum.el timezone.el
+
 Frank Bennett: changed nnmail.el
 
 Frank Bresz: wrote diff.el
@@ -1240,58 +1448,62 @@ Frank Schmitt: changed gnus-sum.el cmdargs.texi 
gnus-faq.texi
 
 Frank Weinberg: changed gnus-art.el
 
-François Pinard: co-wrote po.el
-and changed nndoc.el allout.el bytecomp.el gnus-sum.el gnus-util.el
-  gnus-uu.el make-mode.el nnmail.el org.el rmailsum.el timezone.el
-
-François-David Collin: changed message.el mm-decode.el
-
-Fred Fish: changed linux.h unexcoff.c
+Fran Litterio: changed erc-backend.el erc.el
 
-Fred Oberhauser: changed nnmail.el
+Frédéric Bothamy: changed TUTORIAL.fr
 
 Frederic Han: changed iso-cvt.el
 
 Frederic Lepied: wrote expand.el
 and changed gnus.el
 
+Frédéric Perrin: changed vc-dispatcher.el
+
 Frederic Pierresteguy: wrote widget.c
 and changed xmenu.c xterm.c xfns.c dpx2.h lwlib.c rmailsum.el rmail.el
-  xlwmenu.c xterm.h lwlib-Xaw.c lwlib-Xlw.c Makefile.in configure.in
-  lwlib-Xaw.h lwlib-int.h xdisp.c compile.el editfns.c fns.c frame.h
-  hilit19.el and 9 other files
+  xlwmenu.c xterm.h lwlib-Xaw.c lwlib-Xlw.c configure.ac lwlib-Xaw.h
+  lwlib-int.h xdisp.c compile.el editfns.c fns.c frame.h hilit19.el
+  keyboard.c and 10 other files
 
 Frederik Fouvry: changed sendmail.el TUTORIAL.nl emacs.bash faces.el
   filecache.el mailalias.el rmail.el thumbs.el
 
+Fred Fish: changed linux.h unexcoff.c
+
+Fred Oberhauser: changed nnmail.el
+
 Fredrik Axelsson: changed cus-start.el window.c
 
 Friedrich Delgado Friedrichs: changed org.el
 
 Fritz Knabe: changed mh-mime.el
 
-Frédéric Bothamy: changed TUTORIAL.fr
+F. Thomas May: wrote blackbox.el
 
-Frédéric Perrin: changed vc-dispatcher.el
+Fujii Hironori: changed w32fns.c
 
-G Dinesh Dutt: changed etags.el
+Gábor Vida: changed gnus-demon.el auth-source.el ido.el
 
 Gareth Jones: changed fns.c gnus-score.el
 
+Gareth Rees: changed NEWS.24
+
 Garrett Wollman: changed sendmail.el
 
+Gary Delp: wrote mailpost.el (public domain)
+
 Gary D. Foster: wrote crisp.el scroll-all.el
 and changed gnus-group.el gnus-topic.el
 
-Gary Delp: wrote mailpost.el (public domain)
-
 Gary Howell: changed server.el
 
 Gary Oberbrunner: changed gud.el
 
 Gary Wong: changed termcap.c tparam.c
 
-Gaute B Strokkenes: changed imap.el gnus-fun.el mail-source.el process.c
+Gaute B Strokkenes: changed gnus-fun.el mail-source.el process.c
+
+G Dinesh Dutt: changed etags.el
 
 Geert Kloosterman: changed which-func.el
 
@@ -1299,70 +1511,88 @@ Geoff Gole: changed align.el ibuffer.el whitespace.el
 
 Geoff Greene: changed message.el
 
+Geoff Kuenning: changed gnus-art.el gnus.texi
+
 Geoff Voelker: wrote ms-w32.h w32-fns.el w32.c w32.h w32heap.c w32heap.h
   w32inevt.c w32proc.c w32term.c
 and changed makefile.nt w32fns.c fileio.c makefile.def callproc.c
-  s/ms-w32.h unexw32.c w32term.h dos-w32.el emacs.bat loadup.el
-  w32-win.el emacs.c keyboard.c process.c w32console.c addpm.c cmdproxy.c
-  comint.el files.el ntterm.c and 104 other files
+  s/ms-w32.h emacs.bat.in unexw32.c w32term.h dos-w32.el loadup.el
+  w32-win.el emacs.c keyboard.c ntterm.c process.c w32console.c addpm.c
+  cmdproxy.c comint.el files.el and 101 other files
 
 Georg C. F. Greve: changed pgg-gpg.el
 
-George V. Reilly: changed emacs.ico makefile.nt
+George Kettleborough: changed org-clock.el org-timer.el
+
+George McNinch: changed nnir.el
 
 Georges Brun-Cottan: wrote easy-mmode.el
 
+George V. Reilly: changed emacs.ico makefile.nt
+
 Gerd Möllmann: wrote authors.el ebrowse.el jit-lock.el rx.el tooltip.el
 and changed xdisp.c xterm.c dispnew.c dispextern.h xfns.c xfaces.c
-  window.c keyboard.c lisp.h Makefile.in faces.el alloc.c buffer.c
-  startup.el xterm.h fns.c simple.el term.c frame.c xmenu.c emacs.c
-  and 617 other files
+  window.c keyboard.c lisp.h faces.el alloc.c buffer.c startup.el xterm.h
+  fns.c simple.el term.c configure.ac frame.c xmenu.c emacs.c
+  and 600 other files
 
 Gergely Nagy: changed erc.el
 
+Gergely Risko: changed coding.c
+
 Germano Caronni: changed ralloc.c
 
 Gernot Heiser: changed refer.el
 
-Giorgos Keramidas: changed configure.in erc-backend.el erc.el alloc.c
+Giorgos Keramidas: changed configure.ac erc-backend.el erc.el alloc.c
   amdx86-64.h apropos.el display.texi erc-services.el filelock.c fringe.c
   fringe.el lisp.h rcirc.el windows.texi xmenu.c
 
+Giovanni Ridolfi: changed org.texi
+
 Giuliano Procida: changed perl-mode.el
 
-Giuseppe Scrivano: changed browse-url.el buffer.c configure.in sysdep.c
+Giuseppe Scrivano: changed browse-url.el buffer.c configure.ac sysdep.c
   xsmfns.c
 
 Glenn Morris: wrote automated/f90.el automated/vc-bzr.el check-declare.el
-and changed Makefile.in configure.in calendar.el diary-lib.el rmail.el
-  progmodes/f90.el files.el cal-menu.el appt.el cal-hebrew.el fortran.el
-  bytecomp.el holidays.el emacs.texi calendar.texi ack.texi make-dist
-  simple.el sed1v2.inp cal-islam.el dired-x.el and 1249 other files
+and changed configure.ac Makefile.in src/Makefile.in calendar.el
+  diary-lib.el files.el lisp/Makefile.in rmail.el progmodes/f90.el
+  make-dist simple.el misc/Makefile.in bytecomp.el emacs.texi
+  lib-src/Makefile.in ack.texi authors.el cal-menu.el startup.el
+  display.texi admin.el and 1534 other files
 
 Glynn Clements: wrote gamegrid.el snake.el tetris.el
 
+Göran Uddeborg: changed isc4-1.h
+
 Gordon Matzigkeit: changed gnus-uu.el
 
 Greg Hill: changed bytecomp.el
 
-Greg Hudson: changed configure.in indent.c
+Greg Hudson: changed configure.ac indent.c
 
 Greg Klanderman: changed messagexmas.el
 
 Greg McGary: co-wrote po.el
 and changed tar-mode.el
 
-Greg Stark: changed gnus-ems.el timezone.el
-
-Gregor Schmid: changed intervals.c intervals.h tcl-mode.el textprop.c
-  dispnew.c indent.c xdisp.c
+Grégoire Jadi: changed org.texi rcirc.el latin-post.el ob-core.el
+  org-id.el org.el reporter.el sendmail.el
 
 Gregorio Gervasio, Jr.: changed gnus-sum.el
 
-Gregory Chernov: changed nnslashdot.el
+Gregor Kappler: changed ox.el
+
+Gregor Schmid: changed intervals.c intervals.h tcl-mode.el textprop.c
+  dispnew.c indent.c xdisp.c
 
 Gregory Neil Shapiro: changed mailabbrev.el
 
+Gregor Zattler: changed emacs-lisp-intro.texi
+
+Greg Stark: changed gnus-ems.el timezone.el
+
 Guanpeng Xu: changed add-log.el TUTORIAL.cn display.texi mouse.el
   pcomplete.el search.c subr.el type-break.el
 
@@ -1370,11 +1600,15 @@ Gunnar Horrigmo: changed gnus-sum.el
 
 Gustav Hållberg: changed descr-text.el progmodes/compile.el rect.el vc.el
 
+Gustav Wikström: changed org-agenda.el org.texi
+
 Guy Geens: changed gnus-score.el
 
 Gwern Branwen: changed browse-url.el
 
-Göran Uddeborg: changed isc4-1.h
+Håkan Granath: changed dired.el
+
+Håkon Malmedal: changed calendar.el holidays.el
 
 Hallvard B. Furuseth: co-wrote byte-opt.el byte-run.el bytecomp.el
 and changed gnus-util.el editfns.c gnus-cache.el gnus-sum.el lread.c
@@ -1382,30 +1616,42 @@ and changed gnus-util.el editfns.c gnus-cache.el 
gnus-sum.el lread.c
 
 Hamano Kiyoto: changed xml.c
 
-Han Boetes: changed netbsd.h
+Hanataka, Shinya: changed coding.c
 
-Han-Wen Nienhuys: changed emacsclient.c server.el
+Han Boetes: changed netbsd.h
 
 Hans Chalupsky: wrote advice.el trace.el
 and changed bytecomp.el
 
+Hans de Graaff: changed mml.el
+
 Hans Henrik Eriksen: wrote simula.el
 
-Hans de Graaff: changed mml.el
+Hans-Peter Deifel: changed ob.el
+
+Hans Wennborg: changed emacs.c
+
+Han-Wen Nienhuys: changed emacsclient.c server.el
 
 Harald Maier: changed w32heap.c
 
 Harald Meland: changed gnus-art.el gnus-salt.el gnus-score.el
   gnus-util.el gnus-win.el mail-source.el
 
-Harri Kiiskinen: changed org-publish.el
+Harri Kiiskinen: changed org-protocol.el ox-publish.el
+
+H. Dieter Wilhelm: changed calc-help.el maintaining.texi
 
 Heiko Muenkel: changed b2m.c
 
-Helmut Eller: changed cl-macs.el emacs-lisp/debug.el process.c
+Helmut Eller: changed emacs-lisp/debug.el cl-indent.el cl-macs.el
+  elisp-mode.el etags.el eval.c lisp-mode.el process-tests.el process.c
+  xref.el
 
 Helmut Waitzmann: changed gnus-sum.el gnus.texi
 
+Henning Weiss: changed org-mobile.el
+
 Henrik Enberg: changed rmailout.el gnus-art.el gnus-msg.el lread.c
   mail/rmailmm.el rmail.el rmailedit.el rmailkwd.el rmailmsc.el
   rmailsort.el rmailsum.el xfaces.c
@@ -1422,7 +1668,7 @@ Hewlett-Packard: changed emacsclient.c keyboard.c 
server.el
 
 Hideki Iwamoto: changed etags.c
 
-Hiroshi Fujishima: changed faq.texi gnus-score.el mail-source.el
+Hiroshi Fujishima: changed efaq.texi gnus-score.el mail-source.el
   spam-stat.el
 
 Hiroshi Nakano: changed ralloc.c unexelf.c
@@ -1453,11 +1699,11 @@ Hubert Chan: changed spam.el
 
 Hynek Schlawack: changed gnus-art.el gnus-sum.el
 
-Håkan Granath: changed dired.el
+Ian D: changed doc-view.el image-mode.el
 
-Håkon Malmedal: changed calendar.el holidays.el
+Ian Eure: changed sql.el url-util.el
 
-Ian Eure: changed sql.el
+Ian Kelling: changed ob-core.el
 
 Ian Lance Taylor: changed sco4.h
 
@@ -1466,6 +1712,8 @@ and changed ange-ftp.el desktop.el tex-mode.el
 
 Igor Kuzmin: wrote cconv.el
 
+Ikumi Keita: changed characters.el minibuf.c
+
 Ilja Weis: co-wrote gnus-topic.el
 
 Ilya N. Golubev: changed mm-util.el shell.el
@@ -1475,8 +1723,10 @@ Ilya Shlyakhter: changed org.el ob-lilypond.el 
org-clock.el
 
 Ilya Zakharevich: wrote tmm.el
 and co-wrote cperl-mode.el
-and changed syntax.c syntax.h textprop.c dired.c font-lock.el interval.c
-  intervals.c intervals.h regex.c regex.h search.c
+and changed syntax.c intervals.c syntax.h textprop.c dired.c font-lock.el
+  intervals.h regex.c regex.h search.c
+
+Ilya Zonov: changed org-mouse.el
 
 Indiana University Foundation: changed buffer.c buffer.h indent.c
   region-cache.c region-cache.h search.c xdisp.c
@@ -1487,11 +1737,15 @@ Inge Frick: changed easymenu.el keyboard.c view.el 
compile.el
 
 Inge Wallin: co-wrote avl-tree.el ewoc.el
 
+Ingo Lohmar: changed help-fns.el ls-lisp.el org-agenda.el org.el
+
 Inoue Seiichiro: changed xterm.c xfns.c xterm.h
 
 International Business Machines: changed emacs.c fileio.c process.c
   sysdep.c unexcoff.c
 
+Ippei Furuhashi: changed org.texi org-colview.el org-table.el org.el
+
 Irie Shinsuke: changed subr.el
 
 Irie Tetsuya: changed gnus.texi message.texi
@@ -1502,12 +1756,20 @@ Istvan Marko: changed gnus-agent.el xfns.c
 
 Itai Zukerman: changed mm-decode.el
 
+Ivan Andrus: changed ffap.el find-file.el ibuf-ext.el ibuffer.el
+  progmodes/python.el
+
 Ivan Boldyrev: changed mml1991.el
 
 Ivan Kanis: wrote vc-hg.el
-and changed appt.el term.el time.el
+and changed eww.el shr.el appt.el dired.el saveplace.el term.el time.el
+
+Ivan Shmakov: changed eww.el shr.el desktop.el eww.texi files.el
+  cus-dep.el diff-mode.el enriched.el erc-track.el facemenu.el faces.el
+  files.texi misearch.el nndoc.el tar-mode.el tcl.el tex-mode.el
+  url-cookie.el
 
-Ivan Shmakov: changed tcl.el
+Ivan Vilata i Balaguer: changed org-clock.el org.texi
 
 Ivan Zakharyaschev: changed codepage.el lread.c
 
@@ -1515,13 +1777,12 @@ Ivar Rummelhoff: wrote winner.el
 
 Iwamuro Motonori: changed gnus-kill.el
 
-J.D. Smith: co-wrote idlw-help.el idlw-shell.el idlwave.el
-and changed idlw-rinfo.el idlw-toolbar.el comint.el idlwave.texi vc.el
-  bibtex.el files.texi hideshow.el idlw-complete-structtag.el misc.texi
-  mouse.el
-
 Jaap-Henk Hoepman: changed mm-decode.el
 
+Jacek Chrząszcz: changed ispell.el
+
+Jack Duthen: changed which-func.el
+
 Jack Repenning: changed unexelfsgi.c
 
 Jack Twilley: changed message.el
@@ -1530,14 +1791,17 @@ Jacob Morzinski: changed mh-comp.el
 
 Jacques Duthen: co-wrote ps-print.el ps-samp.el
 
-Jae-Hyeon Park: changed fontset.el
+Jae-hyeon Park: changed fontset.el
 
 Jaeyoun Chung: changed hangul3.el hanja3.el gnus-mule.el hangul.el
 
-Jambunathan K: wrote org-lparse.el org-odt.el
-and changed org.el org-exp.el org.texi OrgOdtContentTemplate.xml
-  org-footnote.el org-inlinetask.el OrgOdtStyles.xml htmlfontify.el
-  org-html.el package-x.el quail/indian.el tar-mode.el
+Jambunathan K: wrote ox-odt.el
+and co-wrote ox-html.el
+and changed org-lparse.el org.el org.texi ox.el icomplete.el
+  OrgOdtContentTemplate.xml OrgOdtStyles.xml hi-lock.el replace.el
+  minibuffer.el org-footnote.el org-inlinetask.el register.el doc-view.el
+  etags.el htmlfontify.el ido.el indian.el iswitchb.el org-bbdb.el
+  org-compat.el and 6 other files
 
 James Clark: wrote nxml-enc.el nxml-glyph.el nxml-maint.el nxml-mode.el
   nxml-ns.el nxml-outln.el nxml-parse.el nxml-rap.el nxml-uchnm.el
@@ -1555,12 +1819,12 @@ James R. Larus: co-wrote mh-e.el
 James R. Van Zandt: changed sh-script.el
 
 James TD Smith: changed org.el org-colview.el org-clock.el
-  org-remember.el org-colview-xemacs.el org-plot.el org-agenda.el
-  org-compat.el org-habit.el org.texi
+  org-remember.el org-plot.el org-agenda.el org-compat.el org-habit.el
+  org.texi
 
 James Troup: changed gnus-sum.el
 
-James Van Artsdalen: changed unexcoff.c usg5-4.h
+James Van Artsdalen: changed unexcoff.c
 
 James Wright: changed em-unix.el
 
@@ -1568,68 +1832,96 @@ Jamie Zawinski: wrote mailabbrev.el tar-mode.el
 and co-wrote byte-opt.el byte-run.el bytecomp.el disass.el font-lock.el
 and changed bytecode.c mail-extr.el subr.el
 
-Jan Böcker: wrote org-docview.el
-and changed org.el
+Jan Beich: changed configure.ac
 
-Jan Böker: changed org.el
+Jan Böcker: wrote org-docview.el
+and changed org.el org.texi
 
 Jan Djärv: wrote dnd.el dynamic-setting.el x-dnd.el
-and changed gtkutil.c xterm.c xfns.c configure.in xmenu.c xterm.h
-  gtkutil.h nsterm.m x-win.el keyboard.c Makefile.in frames.texi
-  xsettings.c emacs.c frame.c nsfns.m xselect.c process.c xlwmenu.c
-  config.in cus-start.el and 303 other files
+and changed gtkutil.c xterm.c nsterm.m xfns.c configure.ac nsfns.m
+  xmenu.c xterm.h nsterm.h nsmenu.m gtkutil.h keyboard.c x-win.el emacs.c
+  frame.c process.c src/Makefile.in xsettings.c nsfont.m cus-start.el
+  frames.texi and 301 other files
+
+Jan-Hein Buhrman: changed ange-ftp.el env.el
 
 Jan Moringen: co-wrote srecode/cpp.el tango-dark-theme.el tango-theme.el
-and changed dbus.el dbus.texi dbusbind.c eieio.el log-edit.el zeroconf.el
+and changed dbus.el dbus.texi dbusbind.c eieio.el idle.el insert.el
+  log-edit.el srecode/find.el wisent/python.el zeroconf.el
 
-Jan Nieuwenhuizen: changed info.el TUTORIAL.nl add-log.el emacs.c
-  emacsclient.c gnus-start.el gud.el nnmh.el server.el startup.el
+Jan Nieuwenhuizen: changed gud.el info.el TUTORIAL.nl add-log.el
+  compilation.txt compile-tests.el emacs.c emacsclient.c gnus-start.el
+  nnmh.el progmodes/compile.el server.el startup.el
 
 Jan Rychter: changed gnus-msg.el
 
 Jan Schormann: wrote solitaire.el
 
-Jan Seeger: changed org-publish.el parse-time.el
+Jan Seeger: changed ox-publish.el parse-time.el
 
-Jan Vroonhof: changed gnus-cite.el gnus-msg.el nntp.el
+Jan Tatarik: wrote gnus-icalendar.el
+and changed gnus-score.el gnus-logic.el
 
-Jan-Hein Buhrman: changed ange-ftp.el env.el
+Jan Vroonhof: changed gnus-cite.el gnus-msg.el nntp.el
 
 Jared Finder: changed progmodes/compile.el
 
+Jarek Czekalski: changed keyboard.c callproc.c mini.texi minibuf.c
+  misc.texi server.el shell.el w32fns.c xgselect.c
+
 Jari Aalto: changed add-log.el filecache.el progmodes/grep.el comint.el
   gnus-art.el gnus-sum.el gnus.texi ispell.el lisp-mnt.el man.el
-  nnmail.el apropos.el autorevert.el checkdoc.el cperl-mode.el desktop.el
-  em-ls.el emacs-lisp/debug.el emacsclient.1 executable.el files.el
-  and 20 other files
+  nnmail.el apropos.el autorevert.el checkdoc.el cperl-mode.el
+  css-mode.el desktop.el em-ls.el emacs-lisp/debug.el emacsclient.1
+  executable.el and 23 other files
+
+Jarmo Hurri: changed org-gnus.el org-table.el org.texi
+
+Jarosław Rzeszótko: changed url-http.el
 
 Jason Baker: changed gnus-art.el
 
-Jason Dunsmore: changed org-html.el org.el
+Jason Dunsmore: changed org.el ox-html.el
+
+Jason L. Wright: changed smtpmail.el
 
-Jason Merrill: changed gnus-sum.el add-log.el gnus-salt.el imap.el
-  nnfolder.el
+Jason Merrill: changed gnus-sum.el add-log.el gnus-salt.el nnfolder.el
 
 Jason Riedy: changed org-table.el org.texi
 
 Jason Rumney: wrote w32-vars.el
-and changed w32fns.c w32term.c w32font.c makefile.w32-in w32menu.c
-  w32-win.el w32term.h w32.c w32uniscribe.c w32-fns.el makefile.nt
-  w32console.c w32bdf.c configure.bat keyboard.c w32proc.c w32select.c
-  font.c image.c w32font.h w32gui.h and 160 other files
+and changed w32fns.c w32term.c w32font.c w32menu.c w32-win.el w32term.h
+  w32.c w32uniscribe.c src/makefile.w32-in w32-fns.el makefile.nt
+  w32console.c w32bdf.c lib-src/makefile.w32-in configure.bat keyboard.c
+  w32proc.c w32select.c font.c image.c w32font.h and 165 other files
 
-Jay Belanger: changed calc.texi calc.el calc-ext.el calc-aent.el
-  calc-units.el calc-embed.el calc-help.el calc-lang.el calc-prog.el
-  calc-math.el calccomp.el calc-arith.el calc-graph.el calc-forms.el
-  calc-misc.el calc-store.el calc-yank.el calcalg2.el calc-bin.el
-  calc-alg.el calc-vec.el and 40 other files
+Jason S. Cornez: changed keyboard.c
+
+Jay Belanger: changed calc.texi calc.el calc-ext.el calc-units.el
+  calc-aent.el calc-embed.el calc-help.el calc-lang.el calc-prog.el
+  calc-forms.el calccomp.el calc-math.el calc-arith.el calc-graph.el
+  calc-misc.el calcalg2.el calc-alg.el calc-store.el calc-yank.el
+  calc-bin.el calc-mode.el and 39 other files
 
 Jay K. Adams: wrote jka-cmpr-hook.el jka-compr.el
 
+Jay McCarthy: changed org-colview.el
+
 Jay Sachs: changed gnus-score.el gnus-win.el
 
+J.D. Smith: co-wrote idlw-help.el idlw-shell.el idlwave.el
+and changed idlw-rinfo.el idlw-toolbar.el comint.el idlwave.texi vc.el
+  bibtex.el files.texi hideshow.el idlw-complete-structtag.el misc.texi
+  mouse.el
+
+Jean Haidouk: changed latin-alt.el latin-post.el latin-pre.el
+
+Jean-Philippe Gravel: changed gdb-mi.el
+
 Jean-Philippe Theberge: wrote thumbs.el
 
+Jed Brown: changed progmodes/compile.el
+
 Jeff Dairiki: changed whitespace.el
 
 Jeff Dwork: changed ehelp.el facemenu.el
@@ -1642,11 +1934,12 @@ Jeff Morgenthaler: changed flow-ctrl.el vt200.el 
vt201.el vt220.el
 Jeff Norden: wrote kermit.el
 
 Jeff Peck: wrote sun.el
+and changed emacstool.1 emacstool.c
 
 Jeffrey C Honig: wrote mh-print.el
 and changed mh-e.el mh-comp.el mh-utils.el mh-mime.el mh-customize.el
-  mh-funcs.el mh-alias.el mh-seq.el bsdos4.h mh-folder.el mh-junk.el
-  mh-show.el
+  mh-folder.el mh-funcs.el mh-alias.el mh-seq.el mh-show.el Makefile
+  bsdos4.h mh-junk.el mh-letter.el
 
 Jens Krinke: changed smime.el
 
@@ -1660,13 +1953,23 @@ Jens Toivo Berger Thielemann: changed word-help.el
 Jens-Ulrik Holger Petersen: changed cus-edit.el ffap.el find-func.el
   gnus.el
 
-Jeramey Crawford: changed amdx86-64.h configure.in
+Jeramey Crawford: changed amdx86-64.h configure.ac
+
+Jérémie Courrèges-Anglas: changed org.texi ox-latex.el
 
 Jeremy Bertram Maitin-Shepard: changed erc.el erc-backend.el
   erc-button.el erc-track.el mml.el
 
+Jérémy Compostella: changed tramp-sh.el battery.el keyboard.c windmove.el
+  window.el xdisp.c
+
+Jeremy Moore: changed hideif.el
+
 Jeremy Whitlock: changed progmodes/python.el
 
+Jérôme Marant: changed make-dist Makefile.in bindings.el configure.ac
+  emacsclient.c leim/Makefile.in misc.texi
+
 Jerry Frain: changed systime.h usg5-4.h
 
 Jerry James: changed format.el dns.el gnus-spec.el gnus-util.el
@@ -1679,7 +1982,7 @@ and changed gnus-sum.el gnus-art.el message.el 
gnus-group.el gnus-msg.el
   gnus.el gnus-util.el rfc2047.el mm-bodies.el mm-util.el mml.el
   mm-decode.el nnrss.el gnus-srvr.el gnus-topic.el nnmail.el
   gnus-start.el gnus-uu.el spam-stat.el gnus-score.el gnus.texi
-  and 201 other files
+  and 197 other files
 
 Jhair Tocancipa Triana: changed gnus-audio.el
 
@@ -1687,18 +1990,22 @@ Jihyun Cho: wrote hangul.el hanja-util.el
 
 Jim Blandy: wrote tvi970.el
 and co-wrote wyse50.el
-and changed keyboard.c xterm.c xfns.c Makefile.in window.c process.c
-  ymakefile dispnew.c xdisp.c sysdep.c configure.in lisp.h keymap.c
+and changed keyboard.c xterm.c xfns.c window.c process.c ymakefile
+  dispnew.c xdisp.c sysdep.c configure.ac lisp.h Makefile.in keymap.c
   configure make-dist buffer.c frame.c screen.c simple.el alloc.c emacs.c
-  and 388 other files
+  and 402 other files
+
+Jim Diamond: changed server.el
 
-Jim Kingdon: changed emacsclient.c emacs.tex functions.texinfo hp300bsd.h
+Jim Kingdon: changed emacs.texi emacsclient.c functions.texi hp300bsd.h
   rmail.el
 
-Jim Meyering: changed lread.c w32.c copyright.el ebrowse.c emacs.c
-  make-docfile.c nsfont.m term.c w32font.c xfaces.c xselect.c Makefile.in
-  alloc.c artist.el autoinsert.el buffer.h character.h charset.c
-  configure configure.in doprnt.c and 53 other files
+Jim Meyering: changed lread.c make-docfile.c w32.c w32font.c copyright.el
+  ebrowse.c emacs.c nsfont.m pop.c term.c xfaces.c xselect.c xterm.c
+  alloc.c artist.el autoinsert.el buffer.h callproc.c character.h
+  charset.c configure and 56 other files
+
+Jim Paris: changed process.c
 
 Jim Radford: changed gnus-start.el
 
@@ -1706,7 +2013,7 @@ Jim Salem: wrote completion.el
 
 Jim Thompson: co-wrote ps-print.el ps-samp.el
 
-Jim Wilson: changed Makefile.in alloca.c
+Jim Wilson: changed alloca.c oldXMenu/Makefile.in
 
 Jindrich Makovicka: changed eval.c fns.c
 
@@ -1716,24 +2023,32 @@ Joachim Nilsson: changed cc-styles.el
 
 Joachim Reiter: changed org-footnote.el
 
+Joakim Hårsman: changed w32fns.c
+
 Joakim Hove: wrote html2text.el
 
 Joakim Verona: wrote db-javascript.el
 and co-wrote db-ebrowse.el
-and changed Makefile.in configure.in image-mode.el image.c image.el
+and changed Makefile.in configure.ac image-mode.el image.c image.el
   nnrss.el progmodes/compile.el thingatpt.el window.c window.h
 
 Joanna Pluta: changed TUTORIAL.pl
 
+João Cachopo: changed spam.el
+
+João Távora: wrote elec-pair.el electric-tests.el
+and changed shr.el tex-mode.el electric.el emacs.texi lisp-mode.el
+  progmodes/python.el python-tests.el simple.el tls.el vc.el
+
 Jochen Hein: changed gnus-art.el
 
 Jochen Küpper: changed gnus.texi calc-units.el
 
-Joe Buehler: changed Makefile.in configure.in cygwin.h browse-url.el
-  comint.el configure dired-aux.el dired.el dirtrack.el dos-w32.el
-  fast-lock.el filecache.el fileio.c files.el gmalloc.c gnus-util.el
-  hippie-exp.el keyboard.c lastfile.c loadup.el mem-limits.h
-  and 11 other files
+Joe Buehler: changed configure.ac cygwin.h src/Makefile.in Makefile.in
+  browse-url.el comint.el configure dired-aux.el dired.el dirtrack.el
+  dos-w32.el fast-lock.el filecache.el fileio.c files.el gmalloc.c
+  gnus-util.el hippie-exp.el keyboard.c lastfile.c lib-src/Makefile.in
+  and 13 other files
 
 Joe Casadonte: changed gnus-srvr.el
 
@@ -1741,57 +2056,71 @@ Joe Corneli: changed subr.el
 
 Joe Edmonds: changed lisp-mode.el
 
+Joel Bion: changed pcmpl-gnu.el
+
+Joel Boehland: co-wrote ob-clojure.el ob-lisp.el
+
+Joel N. Weber II: changed comint.el make-dist
+
+Joel Ray Holveck: changed gnus-sum.el info.el
+
 Joe Matarazzo: changed ebrowse.c
 
 Joe Ramey: changed filelock.c rmailsum.el
 
 Joe Reiss: changed gnus-art.el
 
+Joev Dubach: changed nntp.el
+
+Joe Vornehm Jr.: changed ido.el
+
 Joe Wells: wrote mail-extr.el resume.el
 and co-wrote apropos.el
 and changed arc-mode.el tex-mode.el
 
-Joel Boehland: co-wrote ob-clojure.el ob-lisp.el
-
-Joel N. Weber II: changed comint.el make-dist
-
-Joel Ray Holveck: changed gnus-sum.el info.el
-
-Joev Dubach: changed nntp.el
-
 Johan Bockgård: changed erc.el cl-macs.el erc-backend.el erc-button.el
-  erc-match.el xdisp.c browse-url.el bytecomp.el custom.el display.texi
-  erc-compat.el erc-nickserv.el erc-ring.el erc-speak.el erc-track.el
-  help-fns.el icomplete.el mouse-sel.el simple.el subr.el xterm.el
-  and 48 other files
+  erc-match.el icomplete.el xdisp.c browse-url.el bytecomp.el custom.el
+  display.texi erc-compat.el erc-nickserv.el erc-ring.el erc-speak.el
+  erc-track.el help-fns.el mouse-sel.el simple.el subr.el xterm.el
+  and 54 other files
+
+Johan Claesson: changed filecache.el
 
 Johan Euphrosine: changed ibuf-ext.el
 
+Johannes Weiner: changed browse-url.el keyboard.c configure.ac
+  lisp-mode.el lisp.h pp.el sound.c w32term.c xfaces.c xterm.c
+
 Johan Vromans: wrote forms-d2.el forms.el iso-acc.el
 and changed complete.el
 
-Johannes Weiner: changed browse-url.el keyboard.c configure.in
-  lisp-mode.el lisp.h pp.el sound.c w32term.c xfaces.c xterm.c
+John Anthony: changed inf-lisp.el ruby-mode.el text-mode.el
 
 John Basrai: changed man.el
 
 John F. Carr: changed dired.c
 
-John F. Whitehead: changed mule-cmds.el mule-diag.el
-
 John Fremlin: changed gnus-msg.el message.el
 
-John Grabowski: changed xfaces.c xfns.c
+John F. Whitehead: changed mule-cmds.el mule-diag.el
 
-John H. Palmieri: changed gnus-fun.el
+John Grabowski: changed xfaces.c xfns.c
 
 John Heidemann: wrote mouse-copy.el mouse-drag.el
 
+John H. Palmieri: changed gnus-fun.el
+
 John Hughes: changed term.c
 
 John J Foerch: changed display.texi erc-stamp.el org.el
   progmodes/compile.el
 
+John K. Luebs: changed org.el
+
+John Marino: changed configure.ac
+
+John Mastro: changed auth-source.el
+
 John Mongan: changed progmodes/f90.el
 
 John Paul Wallington: changed ibuffer.el ibuf-ext.el subr.el help-fns.el
@@ -1803,39 +2132,41 @@ John Sullivan: changed window.c
 
 John Tobey: changed gud.el
 
-John W. Eaton: co-wrote octave-mod.el
-and changed octave-inf.el
+John W. Eaton: co-wrote octave.el
 
-John Wiegley: wrote align.el cal-bahai.el em-alias.el em-banner.el
-  em-basic.el em-cmpl.el em-dirs.el em-glob.el em-hist.el em-ls.el
-  em-pred.el em-prompt.el em-rebind.el em-script.el em-smart.el
+John Wiegley: wrote align.el automated/eshell.el cal-bahai.el em-alias.el
+  em-banner.el em-basic.el em-cmpl.el em-dirs.el em-glob.el em-hist.el
+  em-ls.el em-pred.el em-prompt.el em-rebind.el em-script.el em-smart.el
   em-term.el em-unix.el em-xtra.el erc-identd.el esh-arg.el esh-cmd.el
   esh-ext.el esh-io.el esh-mode.el esh-module.el esh-opt.el esh-proc.el
   esh-util.el esh-var.el eshell/eshell.el eudcb-mab.el isearchb.el
   org-attach.el org-crypt.el org-habit.el pcmpl-cvs.el pcomplete.el
-  remember.el test/eshell.el timeclock.el
-and co-wrote org-mac-message.el org-pcomplete.el
+  remember.el timeclock.el
+and co-wrote org-pcomplete.el
 and changed org-clock.el org-agenda.el erc-chess.el org.el erc.el
-  iswitchb.el ido.el esh-test.el Makefile.in allout.el cal-menu.el
+  iswitchb.el ido.el alloc.c allout.el auth-source.el cal-menu.el
   calendar.el desktop.el diary-lib.el erc-bbdb.el erc-button.el
   erc-complete.el erc-fill.el erc-ibuffer.el erc-list.el erc-match.el
-  and 19 other files
+  and 22 other files
 
 John Williams: changed etags.el
 
 John Yates: changed hideshow.el
 
-Jon Anders Skorpen: changed org-publish.el
+Jon Anders Skorpen: changed ox-publish.el
 
-Jon Ericson: changed gnus.el spam-report.el
+Jonas Bernoulli: changed eieio.el button.el ido.el lisp-mnt.el
+  tabulated-list.el tips.texi
 
-Jon K Hellan: wrote utf7.el
+Jonas Hoersch: changed org-inlinetask.el org.el
 
-Jonathan I. Kamens: changed pop.c movemail.c rmail.el Makefile.in
-  configure.in b2m.pl config.in files.el pop.h terminal.el vc.el
+Jonathan I. Kamens: changed pop.c movemail.c rmail.el configure.ac b2m.pl
+  lib-src/Makefile.in Makefile.in files.el pop.h terminal.el vc.el
   gnus-sum.el jka-compr.el rmailout.el rnewspost.el sendmail.el simple.el
   timezone.el vc-hooks.el
 
+Jonathan Leech-Pepin: wrote ox-texinfo.el
+
 Jonathan Marchand: changed cpp-root.el
 
 Jonathan Rockway: changed rcirc.el
@@ -1846,73 +2177,85 @@ Jonathan Vail: changed vc.el
 
 Jonathan Yavner: wrote ses.el tcover-ses.el tcover-unsafep.el
   testcover.el unsafep.el
-and changed ses.texi ses-example.ses Makefile.in edebug.el editfns.c
-  files.el functions.texi subr.el variables.texi
+and changed ses.texi ses-example.ses edebug.el editfns.c files.el
+  functions.texi misc/Makefile.in subr.el variables.texi
+
+Jon Ericson: changed gnus.el spam-report.el
+
+Jon K Hellan: wrote utf7.el
+
+Joost Diepenmaat: changed org.el
 
-Jorgen Schaefer: wrote erc-autoaway.el erc-goodies.el erc-spelling.el
+Joost Kremers: changed reftex-toc.el
+
+Jorge A. Alfaro-Murillo: changed message.el
+
+Jorgen Schäfer: wrote erc-autoaway.el erc-goodies.el erc-spelling.el
 and changed erc.el erc-track.el erc-backend.el erc-match.el erc-stamp.el
-  erc-button.el erc-fill.el erc-truncate.el erc-compat.el erc-members.el
-  erc-dcc.el erc-ibuffer.el erc-page.el erc-pcomplete.el erc-sound.el
-  erc-bbdb.el erc-imenu.el erc-lang.el erc-list.el erc-macs.el
-  erc-menu.el and 8 other files
+  erc-button.el erc-fill.el erc-members.el erc-truncate.el erc-compat.el
+  package-test.el Makefile erc-dcc.el erc-ibuffer.el erc-macs.el
+  erc-page.el erc-pcomplete.el erc-sound.el minibuffer.el package.el
+  erc-bbdb.el and 12 other files
 
 Jose A. Ortega Ruiz: changed gnus-sum.el
 
 Jose E. Marchesi: changed ada-mode.el gomoku.el simple.el smtpmail.el
 
+Jose Marino: changed idlw-shell.el
+
 Joseph Arceneaux: wrote xrdb.c
 and changed xterm.c xfns.c keyboard.c screen.c dispnew.c xdisp.c window.c
   x-win.el fileio.c buffer.c xterm.h minibuf.c editfns.c lread.c
   process.c alloc.c buffer.h files.el screen.el insdel.c emacs.c
   and 106 other files
 
-Joseph M. Kelsey: changed dir.h fileio.c skeleton.el
+Joseph M. Kelsey: changed fileio.c skeleton.el
+
+Josh Elsasser: changed configure.ac
 
-Josh Elsasser: changed configure.in
+Josh Feinstein: changed erc-join.el erc.el
 
 Josh Huber: changed mml-sec.el mml.el message.el gnus-msg.el mml2015.el
   nnmail.el ChangeLog ChangeLog.1 gnus-cite.el gnus-delay.el gnus-spec.el
-  mml1991.el nnultimate.el nnwfm.el gnus-cus.el gnus-smiley.el
-  gnus-start.el gnus-topic.el gnus.el nnbabyl.el nndiary.el
-  and 8 other files
+  mml1991.el nnwfm.el gnus-cus.el gnus-smiley.el gnus-start.el
+  gnus-topic.el gnus.el nnbabyl.el nndiary.el nnfolder.el
+  and 7 other files
 
 Joshua Varner: changed intro.texi
 
 Jouni K. Seppänen: changed gnus.texi nnimap.el mm-url.el
 
-João Cachopo: changed spam.el
-
 Juan León Lahoz García: wrote wdired.el
 and changed files.el perl-mode.el
 
+Juanma Barranquero: wrote emacs-lock.el frameset.el
+and changed src/makefile.w32-in subr.el desktop.el config.nt w32fns.c
+  lib-src/makefile.w32-in server.el emacsclient.c faces.el files.el
+  simple.el bs.el help-fns.el w32term.c org.el xdisp.c keyboard.c w32.c
+  buffer.c ido.el image.c and 1109 other files
+
 Juan Pechiar: wrote ob-mscgen.el
 and changed ob-octave.el
 
-Juanma Barranquero: wrote emacs-lock.el
-and changed makefile.w32-in subr.el w32fns.c files.el server.el bs.el
-  emacsclient.c help-fns.el faces.el org.el simple.el buffer.c xdisp.c
-  keyboard.c desktop.el process.c w32term.c window.c ido.el w32.c
-  allout.el and 1089 other files
-
-Juergen Kreileder: changed imap.el nnimap.el
+Juergen Kreileder: changed nnimap.el
 
 Juergen Nickelsen: wrote ws-mode.el
 
 Julian Gehring: changed org.texi orgcard.tex
 
-Julian Scheid: changed tramp.el
+Julian Scheid: changed tramp.el color.el
 
 Julien Avarre: changed gnus-fun.el
 
 Julien Barnier: changed ob-comint.el ob-sh.el org.el
 
-Julien Danjou: wrote gnus-gravatar.el gravatar.el notifications.el
-  shr-color.el
+Julien Danjou: wrote erc-desktop-notifications.el gnus-gravatar.el
+  gnus-notifications.el gravatar.el notifications.el shr-color.el
 and co-wrote color.el
-and changed shr.el org-agenda.el gnus-art.el gnus-html.el gnus.el
-  mm-decode.el gnus-group.el gnus-util.el message.el org.el gnus-sum.el
-  gnus.texi mm-view.el nnimap.el mm-uu.el nnir.el sieve-manage.el
-  color-lab.el url-cache.el auth-source.el gnus-ems.el and 82 other files
+and changed shr.el org-agenda.el gnus-art.el nnimap.el gnus-html.el
+  gnus.el message.el gnus-group.el gnus-sum.el gnus-util.el mm-decode.el
+  mm-view.el org.el gnus.texi nnir.el sieve-manage.el mm-uu.el
+  color-lab.el gnus-demon.el gnus-int.el gnus-msg.el and 96 other files
 
 Julien Gilles: wrote gnus-ml.el
 
@@ -1920,62 +2263,56 @@ Junio Hamano: changed window.el
 
 Jure Cuhalev: changed ispell.el
 
+Jürgen Hötzel: wrote tramp-adb.el
+and changed comint.el em-unix.el esh-util.el tramp.el url-handlers.el
+  wid-edit.el
+
 Juri Linkov: wrote files-x.el misearch.el occur-tests.el
-and changed info.el isearch.el simple.el replace.el progmodes/grep.el
-  dired-aux.el progmodes/compile.el dired.el startup.el faces.el files.el
-  display.texi menu-bar.el descr-text.el bindings.el cus-edit.el
-  image-mode.el ispell.el man.el dired-x.el log-view.el
-  and 338 other files
+and changed isearch.el info.el replace.el simple.el dired-aux.el
+  progmodes/grep.el dired.el progmodes/compile.el startup.el faces.el
+  files.el menu-bar.el display.texi bindings.el descr-text.el desktop.el
+  comint.el image-mode.el man.el cus-edit.el ispell.el
+  and 353 other files
 
 Justin Bogner: changed fortune.el
 
-Justin Sheehy: changed gnus-sum.el nntp.el
-
-Justus Piater: changed smtpmail.el
+Justin Gordon: changed ox-md.el
 
-Jérémy Compostella: changed battery.el windmove.el window.el
-
-Jérôme Marant: changed Makefile.in make-dist bindings.el configure.in
-  emacsclient.c misc.texi
+Justin Sheehy: changed gnus-sum.el nntp.el
 
-Jürgen Hötzel: changed comint.el url-handlers.el wid-edit.el
-
-K. Shane Hartman: wrote chistory.el echistory.el electric.el emacsbug.el
-  helper.el picture.el view.el
-and changed rmail.el ebuff-menu.el simple.el dired.el add-log.el
-  lisp-mode.el mim-mode.el shell.el buff-menu.el buffer.c c-mode.el
-  mail-utils.el more-mode.el aton.el c++-mode.el cmds.c compile.el
-  files.el gud.el indent.el info.el and 13 other files
+Justus Piater: changed org-agenda.el smtpmail.el
 
 Kahlil Hodgson: changed timeclock.el
 
 Kai Großjohann: wrote gnus-delay.el nnir.el tramp-uu.el trampver.el
 and co-wrote longlines.el tramp-sh.el tramp.el
 and changed message.el gnus-agent.el gnus-sum.el files.el nnmail.el
-  tramp.texi nntp.el gnus.el simple.el ange-ftp.el Makefile.in dired.el
-  paragraphs.el bindings.el files.texi gnus-art.el gnus-group.el man.el
-  INSTALL crisp.el fileio.c and 45 other files
+  tramp.texi nntp.el gnus.el simple.el ange-ftp.el dired.el paragraphs.el
+  bindings.el files.texi gnus-art.el gnus-group.el man.el INSTALL
+  Makefile.in crisp.el fileio.c and 43 other files
 
-Kai Tetzlaff: changed org-publish.el url-http.el
+Kailash C. Chowksey: changed HELLO ind-util.el kannada.el knd-util.el
+  lisp/Makefile.in loadup.el makefile.w32-in
 
-Kailash C. Chowksey: changed HELLO Makefile.in ind-util.el kannada.el
-  knd-util.el loadup.el makefile.w32-in
+Kai Tetzlaff: changed ox-publish.el url-http.el
 
-Kalle Olavi Niemitalo: changed keyboard.c
+Kalle Kankare: changed image.c
 
-Kan-Ru Chen: changed nnir.el ecomplete.el gnus-diary.el gnus.texi
-  nroff-mode.el
+Kalle Olavi Niemitalo: changed keyboard.c
 
 Kanematsu Daiji: changed nnimap.el
 
-Karel Klíč: changed fileio.c files.el Makefile.in configure.in eval.c
-  ftfont.c lisp.h text.texi tramp.el
+Kan-Ru Chen: changed nnir.el ecomplete.el window.el gnus-diary.el
+  gnus.texi ibuf-ext.el nnmbox.el nroff-mode.el
+
+Karel Klíč: changed fileio.c files.el configure.ac eval.c ftfont.c lisp.h
+  src/Makefile.in text.texi tramp.el
 
-Karl Berry: changed emacs.texi info.texi elisp.texi text.texi anti.texi
-  display.texi emacs-xtra.texi faq.texi filelock.c gnu.texi macos.texi
-  minibuf.texi mule.texi processes.texi texinfo.tex ada-mode.texi
-  autotype.texi building.texi calc.texi cc-mode.texi cl.texi
-  and 93 other files
+Karl Berry: changed info.texi emacs.texi elisp.texi text.texi anti.texi
+  display.texi efaq.texi ada-mode.texi autotype.texi calc.texi
+  cc-mode.texi cl.texi dired-x.texi ebrowse.texi ediff.texi
+  emacs-mime.texi emacs-xtra.texi eshell.texi eudc.texi filelock.c
+  forms.texi and 94 other files
 
 Karl Chen: changed files.el align.el cc-vars.el emacsclient.c gnus-art.el
   help-mode.el jka-cmpr-hook.el make-mode.el perl-mode.el
@@ -1986,14 +2323,14 @@ Karl Eichwalder: changed Makefile.in add-log.el 
bookmark.el dired-aux.el
 
 Karl Fogel: wrote bookmark.el mail-hist.el saveplace.el
 and changed files.el doc-view.el image-mode.el info.el simple.el INSTALL
-  autogen.sh isearch.el menu-bar.el thingatpt.el INSTALL.REPO configure
-  configure.in editfns.c gnus-bookmark.el gnus-msg.el gnus-sum.el man.el
-  nnmail.el org-agenda.el vc-svn.el and 4 other files
+  autogen.sh isearch.el menu-bar.el thingatpt.el vc-svn.el INSTALL.REPO
+  comint.el configure configure.ac editfns.c gnus-bookmark.el gnus-msg.el
+  gnus-sum.el man.el nnmail.el and 6 other files
 
 Karl Heuer: changed keyboard.c lisp.h xdisp.c buffer.c xfns.c xterm.c
-  alloc.c files.el frame.c window.c configure.in Makefile.in data.c
-  minibuf.c editfns.c fns.c process.c fileio.c simple.el keymap.c
-  indent.c and 444 other files
+  alloc.c files.el frame.c configure.ac window.c data.c minibuf.c
+  editfns.c fns.c process.c Makefile.in fileio.c simple.el keymap.c
+  indent.c and 446 other files
 
 Karl Kleinpaste: changed gnus-sum.el gnus-art.el gnus-picon.el
   gnus-score.el gnus-uu.el gnus-xmas.el gnus.el mm-uu.el mml.el nnmail.el
@@ -2006,13 +2343,20 @@ Karl M. Hegbloom: changed gnus.el
 Karl Pflästerer: changed gnus-art.el gnus-score.el mml.el spam-stat.el
   vc-svn.el
 
+Karol Ostrovsky: changed configure.ac src/Makefile.in
+
+Károly Lőrentey: changed xfns.c bindings.el keyboard.c menu-bar.el
+  buffer.c coding.c frame.el print.c rxvt.el simple.el spam.el sysdep.c
+  x-win.el xdisp.c xt-mouse.el xterm.c xterm.h .gdbinit AT386.el HELLO
+  README and 100 other files
+
 Katsuhiro Hermit Endo: changed gnus-group.el gnus-spec.el
 
 Katsumi Yamaoka: wrote canlock.el
-and changed gnus-art.el gnus-sum.el message.el gnus.texi mm-decode.el
-  mm-util.el mm-view.el gnus-group.el mml.el rfc2047.el gnus-util.el
-  gnus-start.el gnus-msg.el gnus.el shr.el nntp.el gnus-agent.el nnrss.el
-  mm-uu.el nnmail.el gnus-html.el and 135 other files
+and changed gnus-art.el message.el gnus-sum.el gnus.texi mm-decode.el
+  mm-util.el mm-view.el gnus-msg.el gnus-util.el mml.el gnus-group.el
+  rfc2047.el gnus-start.el gnus.el shr.el nntp.el gnus-agent.el nnrss.el
+  mm-uu.el nnmail.el gmm-utils.el and 146 other files
 
 Kaushik Srenevasan: changed gdb-mi.el
 
@@ -2020,7 +2364,8 @@ Kaveh R. Ghazi: changed delta88k.h xterm.c
 
 Kayvan Sylvan: changed supercite.el
 
-Kazuhiro Ito: changed coding.c flow-fill.el
+Kazuhiro Ito: changed coding.c flow-fill.el font.c keyboard.c
+  make-mode.el starttls.el xdisp.c
 
 Kazushi Marukawa: changed filelock.c hexl.c profile.c unexalpha.c
 
@@ -2034,12 +2379,32 @@ Keith Gabryelski: wrote hexl.c hexl.el
 
 Keith Packard: changed font.c
 
-Ken Brown: changed configure.in cygwin.h sheap.c browse-url.el gmalloc.c
-  vm-limit.c callproc.c dired.c emacs.c fileio.c gdb-mi.el loadup.el
-  mem-limits.h unexcw.c
+Kelly Dean: changed simple.el help-mode.el desktop.el files.el lisp.el
+  register.el easy-mmode.el fileio.c help-fns.el help-macro.el help.el
+  keyboard.c package-x.el rect.el windmove.el winner.el
+
+Kelvin White: changed erc.el erc.texi NEWS.24 erc-backend.el erc-ring.el
+  erc-stamp.el
+
+Ken Brown: changed configure.ac gmalloc.c sheap.c cygwin.h emacs.c
+  browse-url.el conf_post.h emacs.rc.in unexcw.c w32term.c alloc.c
+  dispextern.h frame.c lisp.h src/Makefile.in vm-limit.c xgselect.c
+  CPP-DEFINES callproc.c config.nt dired.c and 17 other files
 
 Ken Brush: changed emacsclient.c
 
+Kenichi Handa: wrote composite.el decoder-tests.el isearch-x.el
+  language/cyrillic.el ps-bdf.el py-punct.el pypunct-b5.el thai-word.el
+and co-wrote ps-def.el ps-mule.el ps-print.el ps-samp.el quail.el
+and changed coding.c mule-cmds.el mule.el fontset.c charset.c xdisp.c
+  font.c fontset.el xterm.c fileio.c mule-conf.el characters.el fns.c
+  ftfont.c mule-diag.el coding.h charset.h ccl.c xfaces.c editfns.c
+  composite.c and 374 other files
+
+Kenichi Okada: co-wrote sasl-cram.el sasl-digest.el
+
+Kenjiro Nakayama: changed eww.el mm-url.el
+
 Ken Laprade: changed simple.el
 
 Ken Manheimer: wrote allout-widgets.el allout.el icomplete.el
@@ -2047,25 +2412,17 @@ and changed pgg-gpg.el pgg.el progmodes/python.el 
locked-encrypted.png
   locked-encrypted.xpm pgg-pgp.el pgg-pgp5.el unlocked-encrypted.png
   unlocked-encrypted.xpm README edebug.el pgg.texi tips.texi
 
-Ken Raeburn: changed lisp.h lread.c Makefile.in alloc.c buffer.c fns.c
-  keyboard.c minibuf.c coding.c editfns.c fileio.c keymap.c xdisp.c
-  configure.in emacs.c undo.c xfns.c xterm.c charset.h coding.h fontset.c
-  and 93 other files
-
-Ken Stevens: wrote ispell.el
+Kenneth Stailey: changed alpha.h configure.ac ns32000.h openbsd.h pmax.h
+  sparc.h unexalpha.c unexelf.c
 
-Kenichi Handa: wrote composite.el isearch-x.el language/cyrillic.el
-  ps-bdf.el py-punct.el pypunct-b5.el thai-word.el
-and co-wrote ps-def.el ps-mule.el ps-print.el ps-samp.el quail.el
-and changed coding.c mule-cmds.el mule.el fontset.c charset.c xdisp.c
-  fontset.el font.c xterm.c Makefile.in fileio.c mule-conf.el
-  characters.el fns.c ftfont.c mule-diag.el charset.h ccl.c coding.h
-  xfaces.c editfns.c and 388 other files
+Ken Olum: changed mail/rmailmm.el message.el rmail.el
 
-Kenichi Okada: co-wrote sasl-cram.el sasl-digest.el
+Ken Raeburn: changed lisp.h lread.c alloc.c buffer.c fns.c keyboard.c
+  minibuf.c coding.c editfns.c fileio.c keymap.c xdisp.c configure.ac
+  emacs.c undo.c xfns.c xterm.c charset.h coding.h fontset.c process.c
+  and 96 other files
 
-Kenneth Stailey: changed alpha.h configure.in ns32000.h openbsd.h pmax.h
-  sparc.h unexalpha.c unexelf.c
+Ken Stevens: wrote ispell.el
 
 Kentaro Ohkouchi: changed emacs.png README emacs.ico emacs.svg
   emacs16_mac.png emacs24_mac.png emacs256_mac.png emacs32_mac.png
@@ -2096,19 +2453,19 @@ and changed gnus-agent.el gnus-sum.el gnus-start.el 
gnus-int.el nntp.el
   nnagent.el nnheader.el gnus-async.el gnus-registry.el gnus-salt.el
   gnus-uu.el and 3 other files
 
-Kevin Layer: changed w32proc.c
+Kevin Layer: changed mml.el w32proc.c
 
-Kevin Rodgers: changed compile.el mailabbrev.el dired-x.el files.el
-  progmodes/compile.el ange-ftp.el byte-opt.el desktop.el diff-mode.el
+Kevin Rodgers: changed compile.el mailabbrev.el progmodes/compile.el
+  dired-x.el files.el ange-ftp.el byte-opt.el desktop.el diff-mode.el
   dired-x.texi ffap.el files.texi flyspell.el isearch.el killing.texi
   lisp.el loadhist.el mailalias.el menu-bar.el print.c progmodes/grep.el
   and 8 other files
 
 Kevin Ryde: wrote info-xref.el
 and changed info-look.el info.el checkdoc.el cl.texi compilation.txt
-  arc-mode.el ffap.el gnus-art.el gnus-sum.el mule.el os.texi
-  progmodes/compile.el MORE.STUFF browse-url.el copyright.el dig.el
-  etags.c flyspell.el keyboard.c mailcap.el man.el and 80 other files
+  etags.c arc-mode.el ffap.el gnus-art.el gnus-sum.el mule.el os.texi
+  progmodes/compile.el woman.el MORE.STUFF browse-url.el copyright.el
+  dig.el files.el flyspell.el keyboard.c and 85 other files
 
 Kim F. Storm: wrote bindat.el cua-base.el cua-gmrk.el cua-rect.el ido.el
   keypad.el kmacro.el
@@ -2117,20 +2474,21 @@ and changed xdisp.c dispextern.h process.c simple.el 
window.c keyboard.c
   macterm.c alloc.c fns.c xfaces.c keymap.c xfns.c xterm.h .gdbinit
   and 250 other files
 
+Kimit Yada: changed copyright.el
+
 Kim-Minh Kaplan: changed gnus-picon.el gnus-sum.el gnus-start.el
-  gnus-win.el gnus-xmas.el gnus.texi imap.el message.el nndraft.el
-  nnml.el
+  gnus-win.el gnus-xmas.el gnus.texi message.el nndraft.el nnml.el
 
-Kimit Yada: changed copyright.el
+Kirill A. Korinskiy: changed fortune.el
 
-Kirk Kelsey: changed make-mode.el
+Kirk Kelsey: changed make-mode.el vc-hg.el
 
 Kishore Kumar: changed terminal.el
 
 Klaus Straubinger: changed url-http.el url-history.el pcmpl-rpm.el
   url-cookie.el url.el
 
-Klaus Zeitler: changed configure.in files.el sh-script.el vcursor.el
+Klaus Zeitler: changed configure.ac files.el sh-script.el vcursor.el
 
 Knut Anders Hatlen: changed nnimap.el imap.el
 
@@ -2140,18 +2498,28 @@ and changed hanja.el hangul.el hangul3.el hanja-jis.el 
symbol-ksc.el
 Kobayashi Yasuhiro: changed w32fns.c configure.bat indent.c info.el
   w32term.c w32term.h window.c xfns.c
 
+Kodi Arfer: changed org.texi ox-html.el
+
 Konrad Hinsen: wrote org-eshell.el
 and changed ob-python.el
 
+Konstantin Kliakhandler: changed org-agenda.el
+
 Konstantin Novitsky: changed progmodes/python.el
 
 Kristoffer Grönlund: wrote wombat-theme.el
 
+K. Shane Hartman: wrote chistory.el echistory.el electric.el emacsbug.el
+  helper.el picture.el view.el
+and changed rmail.el ebuff-menu.el simple.el dired.el add-log.el
+  lisp-mode.el mim-mode.el shell.el buff-menu.el buffer.c c-mode.el
+  mail-utils.el more-mode.el aton.el c++-mode.el cmds.c compile.el
+  files.el gud.el indent.el info.el and 13 other files
+
 Kurt B. Kaiser: changed message.el
 
-Kurt Hornik: wrote octave-inf.el
-and co-wrote octave-mod.el
-and changed battery.el ielm.el octave-hlp.el term.el
+Kurt Hornik: co-wrote octave.el
+and changed battery.el ielm.el octave-hlp.el octave-mode.texi term.el
 
 Kurt Swanson: changed gnus-art.el gnus-salt.el gnus-sum.el gnus-ems.el
   gnus-group.el gnus-msg.el gnus-score.el gnus-util.el nnmail.el window.c
@@ -2159,19 +2527,18 @@ Kurt Swanson: changed gnus-art.el gnus-salt.el 
gnus-sum.el gnus-ems.el
 Kyle Jones: wrote life.el
 and changed saveconf.el buffer.c mail-utils.el sendmail.el
 
+Kyle Meyer: changed ox.el
+
 Kyotaro Horiguchi: changed coding.c indent.c
 
-Károly Lőrentey: changed xfns.c bindings.el keyboard.c menu-bar.el
-  buffer.c coding.c frame.el print.c rxvt.el simple.el spam.el sysdep.c
-  x-win.el xdisp.c xt-mouse.el xterm.c xterm.h .gdbinit AT386.el HELLO
-  Makefile.in and 101 other files
+Laimonas Vėbra: changed european.el
 
 Lara Rios: co-wrote cal-menu.el
 
 Lars Balker Rasmussen: changed gnus-art.el gnus-agent.el message.el
 
-Lars Brinkhoff: changed building.texi config.in configure.in editfns.c
-  fns.c os.texi
+Lars Brinkhoff: changed building.texi configure.ac editfns.c fns.c
+  os.texi
 
 Lars Hansen: changed desktop.el tramp.el info.el mh-e.el dired-x.el
   dired-x.texi dired.el ls-lisp.el rmail.el dired.c files.texi
@@ -2181,28 +2548,29 @@ Lars Hansen: changed desktop.el tramp.el info.el 
mh-e.el dired-x.el
 Lars Lindberg: wrote msb.el
 and co-wrote dabbrev.el imenu.el
 
-Lars Ljung: changed esh-ext.el
-
-Lars Magne Ingebrigtsen: wrote compface.el dns.el ecomplete.el
-  format-spec.el gnus-agent.el gnus-art.el gnus-async.el gnus-bcklg.el
-  gnus-cache.el gnus-demon.el gnus-draft.el gnus-dup.el gnus-eform.el
-  gnus-ems.el gnus-fun.el gnus-group.el gnus-html.el gnus-int.el
-  gnus-logic.el gnus-picon.el gnus-range.el gnus-salt.el gnus-spec.el
-  gnus-srvr.el gnus-start.el gnus-sum.el gnus-undo.el gnus-util.el
-  gnus-uu.el gnus-win.el ietf-drums.el mail-parse.el mail-prsvr.el
-  mail-source.el message.el messcompat.el mm-view.el mml.el netrc.el
-  network-stream.el nnagent.el nndir.el nndraft.el nngateway.el nnmail.el
-  nnoo.el nntp.el nnweb.el qp.el rfc2045.el rfc2231.el rtree.el
-  score-mode.el shr.el spam.el url-queue.el
+Lars Ljung: changed esh-ext.el isearch.el
+
+Lars Magne Ingebrigtsen: wrote compface.el dns.el dom.el ecomplete.el
+  eww.el format-spec.el gnus-agent.el gnus-art.el gnus-async.el
+  gnus-bcklg.el gnus-cache.el gnus-cloud.el gnus-demon.el gnus-draft.el
+  gnus-dup.el gnus-eform.el gnus-ems.el gnus-fun.el gnus-group.el
+  gnus-html.el gnus-int.el gnus-logic.el gnus-picon.el gnus-range.el
+  gnus-salt.el gnus-spec.el gnus-srvr.el gnus-start.el gnus-sum.el
+  gnus-undo.el gnus-util.el gnus-uu.el gnus-win.el ietf-drums.el
+  mail-parse.el mail-prsvr.el mail-source.el message.el messcompat.el
+  mm-archive.el mm-view.el mml.el netrc.el network-stream.el nnagent.el
+  nndir.el nndraft.el nngateway.el nnmail.el nnoo.el nntp.el nnweb.el
+  nsm.el qp.el rfc2045.el rfc2231.el rtree.el score-mode.el shr.el
+  spam.el url-domsuf.el url-queue.el zlib-tests.el
 and co-wrote gnus-kill.el gnus-mh.el gnus-msg.el gnus-score.el
   gnus-topic.el gnus.el gssapi.el mailcap.el mm-bodies.el mm-decode.el
   mm-encode.el mm-util.el nnbabyl.el nndoc.el nneething.el nnfolder.el
   nnheader.el nnimap.el nnmbox.el nnmh.el nnml.el nnspool.el nnvirtual.el
   rfc2047.el time-date.el
-and changed gnus.texi gnus-cite.el pop3.el smtpmail.el gnus-xmas.el
-  auth-source.el proto-stream.el url-http.el gnutls.c subr.el xml.c
-  dired.el editfns.c nnultimate.el gnus-nocem.el imap.el nnkiboze.el
-  nnrss.el nnslashdot.el simple.el spam-report.el and 210 other files
+and changed gnus.texi gnus-cite.el smtpmail.el pop3.el gnus-xmas.el
+  gnutls.c auth-source.el url-http.el files.el proto-stream.el subr.el
+  dired.el simple.el image.c nnrss.el text.texi xml.c editfns.c
+  gnus-nocem.el gnus-registry.el message.texi and 240 other files
 
 Lars Rasmusson: changed ebrowse.c
 
@@ -2211,11 +2579,10 @@ Lasse Rasinen: changed gnus-start.el
 Laurent Martelli: changed mm-decode.el
 
 Lawrence Mitchell: wrote erc-backend.el erc-log.el
-and changed erc.el org-latex.el org.el erc-match.el erc-nets.el
-  erc-nickserv.el org-exp.el browse-url.el erc-button.el erc-compat.el
-  erc-dcc.el erc-fill.el erc-list.el erc-track.el ielm.el ob.el
-  org-html.el cl-macs.el erc-autoaway.el erc-autojoin.el erc-bbdb.el
-  and 23 other files
+and changed erc.el ox-latex.el org.el ox.el erc-match.el erc-nets.el
+  erc-nickserv.el ox-html.el browse-url.el erc-button.el erc-compat.el
+  erc-dcc.el erc-fill.el erc-list.el erc-track.el ielm.el ob.el Makefile
+  cl-macs.el erc-autoaway.el erc-autojoin.el and 25 other files
 
 Lawrence R. Dodd: co-wrote dired-x.el
 and changed fortran.el ispell.el sendmail.el cmuscheme.el comint.el
@@ -2223,41 +2590,50 @@ and changed fortran.el ispell.el sendmail.el 
cmuscheme.el comint.el
   lisp.el man.el minibuf.c rcs2log rmail.el simple.el terminal.el
   text-mode.el tpu-edt.el and 3 other files
 
+Lee Duhem: changed eval.c
+
 Leigh Stoller: changed emacsclient.c server.el
 
-Lennart Borgman: wrote ert-x.el org-freemind.el
+Lennart Borgman: co-wrote ert-x.el
 and changed nxml-mode.el tutorial.el window.el ada-xref.el buff-menu.el
   emacs-lisp/debug.el emacsclient.c filesets.el flymake.el help-fns.el
-  isearch.el linum.el lisp-mode.el mouse.el recentf.el remember.el
-  replace.el ruby-mode.el shell.el texinfmt.el w32term.c w32term.h
+  isearch.el linum.el lisp-mode.el lisp.el mouse.el recentf.el
+  remember.el replace.el ruby-mode.el shell.el texinfmt.el
+  and 3 other files
 
 Lennart Staflin: changed dired.el diary-ins.el diary-lib.el tq.el xdisp.c
 
-Leo Liu: changed rcirc.el ido.el abbrev.el makefile.w32-in subr.el
-  Makefile.in deps.mk diff-mode.el dnd.el em-hist.el erc.el files.el
-  fns.c font-lock.el footnote.el gl-comp.m4 gnulib.mk help-mode.el
-  iswitchb.el minibuf.c minibuffer.el and 62 other files
+Leo Liu: wrote calc-tests.el pcmpl-x.el
+and changed octave.el ido.el rcirc.el files.el subr.el eldoc.el simple.el
+  flymake.el smie.el abbrev.el lisp-mode.el progmodes/python.el
+  cl-extra.el cl-macs.el emacs-lisp/cl-lib.el progmodes/compile.el
+  register.el rng-valid.el window.el bindings.el cfengine.el
+  and 157 other files
 
 Leonard H. Tower Jr.: changed rnews.el rnewspost.el emacsbug.el
   rmailout.el sendmail.el
 
-Levin Du: changed parse-time.el
+Leonardo Nobrega: changed progmodes/python.el
+
+Leonard Randall: changed org-bibtex.el reftex-parse.el
+
+Leo P. White: changed eieio-custom.el
+
+Levin Du: changed org-clock.el parse-time.el
 
-Lewis Perin: changed emacs.manifest
+Le Wang: changed org-src.el comint.el hilit-chg.el misc.el
+
+Lewis Perin: changed emacs-x86.manifest
 
 Liam Healy: changed outline.el
 
-Liang Wang: changed etags.el
+Liam Stitt: changed url-file.el url-vars.el
 
-Litvinov Sergey: changed ob-maxima.el ob-octave.el
+Liang Wang: changed etags.el
 
 Lloyd Zusman: changed mml.el pgg-gpg.el
 
-Luc Teirlinck: wrote help-at-pt.el
-and changed files.el autorevert.el cus-edit.el subr.el simple.el
-  frames.texi startup.el display.texi files.texi Makefile.in dired.el
-  comint.el custom.texi emacs.texi fns.c frame.el ielm.el minibuf.texi
-  modes.texi variables.texi buffers.texi and 212 other files
+Lluís Vilanova: changed ede/linux.el
 
 Luca Capello: changed mm-encode.el
 
@@ -2265,68 +2641,84 @@ Lucid, Inc.: changed byte-opt.el byte-run.el bytecode.c 
bytecomp.el
   delsel.el disass.el faces.el font-lock.el lmenu.el mailabbrev.el
   select.el xfaces.c xselect.c
 
-Ludovic Courtes: changed nnregistry.el
+Luc Teirlinck: wrote help-at-pt.el
+and changed files.el autorevert.el cus-edit.el subr.el simple.el
+  frames.texi startup.el display.texi files.texi dired.el comint.el
+  modes.texi custom.texi emacs.texi fns.c frame.el ielm.el minibuf.texi
+  variables.texi buffers.texi commands.texi and 214 other files
 
 Ludovic Courtès: wrote nnregistry.el
-and changed gnus.texi
+and changed configure.ac gnus.texi
+
+Luis Felipe López Acevedo: changed TUTORIAL.es
+
+Luis R Anaya: co-wrote ox-man.el
 
 Lukas Huonker: changed tetris.el
 
 Łukasz Demianiuk: changed erc.el
 
-Łukasz Stelmach: changed cookie1.el message.el org-agenda.el org-bbdb.el
-  org-exp.el org-html.el org.el
+Łukasz Stelmach: changed cookie1.el gtkutil.c message.el org-agenda.el
+  org-bbdb.el org.el ox-html.el ox.el
+
+Luke Lee: changed hideif.el
 
 Lute Kamstra: changed modes.texi emacs-lisp/debug.el generic-x.el
-  generic.el font-lock.el simple.el subr.el Makefile.in battery.el
-  debugging.texi easy-mmode.el elisp.texi emacs-lisp/generic.el
-  hl-line.el info.el basic.texi bindings.el calc.el cmdargs.texi
-  diff-mode.el doclicense.texi and 291 other files
+  generic.el font-lock.el simple.el subr.el battery.el debugging.texi
+  easy-mmode.el elisp.texi emacs-lisp/generic.el hl-line.el info.el
+  octave.el basic.texi bindings.el calc.el cmdargs.texi diff-mode.el
+  doclicense.texi and 291 other files
 
 Lynn Slater: wrote help-macro.el
 
 Maciek Pasternacki: changed nnrss.el
 
-Magnus Henoch: changed url-http.el ispell.el url.el dbusbind.c dns.el
-  url-gw.el url-parse.el url-proxy.el autoinsert.el cl.texi configure.in
-  dbus.el gnus.texi hashcash.el log-edit.el message.el org-clock.el
-  org-latex.el org-table.el process.c quail/cyrillic.el
-  and 10 other files
+Madan Ramakrishnan: changed org-agenda.el
+
+Magnus Henoch: wrote sasl-scram-rfc-tests.el sasl-scram-rfc.el
+and changed url-http.el ispell.el url.el dbusbind.c dns.el configure.ac
+  nnmaildir.el sasl.el url-gw.el url-parse.el url-proxy.el autoinsert.el
+  cl.texi cyrillic.el dbus.el gnus.texi hashcash.el image.c log-edit.el
+  message.el org-clock.el and 14 other files
 
 Malcolm Purvis: changed spam-stat.el
 
 Manoj Srivastava: wrote manoj-dark-theme.el
 
-Manuel Giraud: changed org-html.el org-publish.el org.texi
+Manuel Giraud: changed ox-html.el ox-publish.el org.texi
 
 Manuel Gómez: changed speedbar.el
 
 Manuel Serrano: wrote flyspell.el
 
+Marcelo Toledo: changed TUTORIAL.pt_BR TUTORIAL.cn TUTORIAL.cs
+  TUTORIAL.de TUTORIAL.es TUTORIAL.fr TUTORIAL.it TUTORIAL.ja TUTORIAL.ko
+  TUTORIAL.pl TUTORIAL.ro TUTORIAL.ru TUTORIAL.sk TUTORIAL.sl TUTORIAL.th
+  TUTORIAL.zh add-log.el european.el
+
 Marc Fleischeuers: changed files.el
 
 Marc Girod: changed informat.el rmail.el rmailsum.el sendmail.el
 
 Marc Lefranc: changed gnus-art.el
 
-Marc Shapiro: co-wrote bibtex.el
-
-Marcelo Toledo: changed TUTORIAL.pt_BR TUTORIAL.cn TUTORIAL.cs
-  TUTORIAL.de TUTORIAL.es TUTORIAL.fr TUTORIAL.it TUTORIAL.ja TUTORIAL.ko
-  TUTORIAL.pl TUTORIAL.ro TUTORIAL.ru TUTORIAL.sk TUTORIAL.sl TUTORIAL.th
-  TUTORIAL.zh add-log.el european.el
-
 Marco Melgazzi: changed term.el
 
+Marco Wahl: changed org-agenda.el
+
 Marco Walther: changed mips-siemens.h unexelfsni.c unexsni.c
 
-Marcus G. Daniels: changed xterm.c configure.in lwlib-Xm.c lwlib.c
-  xdisp.c xfns.c Makefile.in dispnew.c xmenu.c alloc.c config.in
-  editfns.c emacs.c frame.c frame.h irix5-0.h keyboard.c linux.h
-  lwlib-Xm.h lwlib.h ntterm.c and 11 other files
+Marc Shapiro: co-wrote bibtex.el
+
+Marcus G. Daniels: changed xterm.c configure.ac lwlib-Xm.c lwlib.c
+  xdisp.c xfns.c dispnew.c src/Makefile.in xmenu.c alloc.c editfns.c
+  emacs.c frame.c frame.h irix5-0.h keyboard.c linux.h lwlib-Xm.h lwlib.h
+  ntterm.c ptx4.h and 10 other files
 
 Marcus Harnisch: changed gnus-art.el
 
+Marcus Karlsson: changed image.c
+
 Marek Martin: changed nnfolder.el
 
 Marien Zwart: changed progmodes/python.el
@@ -2335,60 +2727,64 @@ Mario Lang: wrote erc-button.el erc-ibuffer.el 
erc-imenu.el erc-menu.el
   erc-netsplit.el erc-networks.el erc-notify.el erc-speedbar.el
   erc-stamp.el erc-track.el erc-xdcc.el
 and co-wrote erc-fill.el
-and changed erc.el erc-dcc.el erc-speak.el erc-bbdb.el erc-complete.el
-  erc-pcomplete.el erc-chess.el erc-list.el battery.el erc-match.el
-  erc-autojoin.el erc-nets.el erc-nickserv.el erc-ring.el artist.el
-  cpp-root.el db-el.el db-global.el db-javascript.el db.el diff.el
-  and 24 other files
+and changed erc.el erc-dcc.el erc-speak.el Makefile erc-bbdb.el
+  erc-complete.el erc-pcomplete.el erc-chess.el erc-list.el battery.el
+  erc-match.el erc-autojoin.el erc-nets.el erc-nickserv.el erc-ring.el
+  org.texi artist.el cpp-root.el db-el.el db-global.el db-javascript.el
+  and 34 other files
 
 Mark A. Hershberger: changed xml.el nnrss.el mm-url.el cperl-mode.el
-  isearch.el vc-bzr.el  Makefile.in NXML-NEWS cc-mode.texi
-  compilation.txt ede.texi eieio.texi esh-mode.el flymake.el
-  gnus-group.el makefile.w32-in nxml-mode.texi progmodes/compile.el
+  isearch.el vc-bzr.el  NXML-NEWS cc-mode.texi compilation.txt ede.texi
+  eieio.texi esh-mode.el flymake.el gnus-group.el misc/Makefile.in
+  misc/makefile.w32-in nxml-mode.texi progmodes/compile.el
   progmodes/python.el programs.texi and 7 other files
 
+Mark Davies: changed amdx86-64.h configure configure.ac hp800.h
+  lib-src/Makefile.in netbsd.h ralloc.c sh3el.h sort.el
+
 Mark D. Baushke: changed mh-e.el mh-utils.el mh-mime.el mh-comp.el
-  mh-search.el mh-customize.el mh-identity.el mh-seq.el mh-speed.el
-  mh-funcs.el mh-alias.el etags.c mh-junk.el mh-tool-bar.el
+  mh-search.el mh-customize.el Makefile mh-identity.el mh-seq.el
+  mh-speed.el mh-funcs.el mh-alias.el etags.c mh-junk.el mh-tool-bar.el
   mh-xemacs-compat.el pgg-gpg.el
 
-Mark Davies: changed Makefile.in amdx86-64.h configure configure.in
-  hp800.h netbsd.h ralloc.c sh3el.h sort.el
-
 Mark Diekhans: changed files.el progmodes/compile.el subr.el
 
-Mark H. Weaver: changed comint.el
+Mark E. Shoulson: changed org.el org-entities.el
 
 Mark Hood: changed gnus-uu.el
 
+Mark H. Weaver: changed comint.el
+
 Mark Lambert: changed process.c process.h
 
-Mark Lillibridge: changed rmail.el mail-utils.el unrmail.el
+Mark Laws: changed dispnew.c emacs.c emacsclient.c frame.el frameset.el
+  keyboard.c lisp.h minibuf.c ms-w32.h server.el
+
+Mark Lillibridge: changed rmail.el mail-utils.el mail/rmailmm.el
+  unrmail.el
 
 Mark Mitchell: changed font-lock.el
 
 Mark Neale: changed fortran.el
 
+Marko Kohtala: changed info.el
+
 Mark Osbourne: changed hexl-mode.el
 
-Mark Plaksin: changed nnrss.el term.el
+Mark Oteiza: changed eww.el files.el
 
-Mark Shoulson: changed org.el
+Mark Plaksin: changed nnrss.el term.el
 
 Mark Thomas: changed flow-fill.el gnus-sum.el gnus-util.el nnmail.el
 
 Mark Triggs: changed nnir.el
 
-Mark W Maimone: changed mpuz.el
-
-Mark W. Eichin: changed keyboard.c xterm.c
-
-Marko Kohtala: changed info.el
-
 Markus Armbruster: changed avoid.el
 
 Markus Gritsch: changed ebrowse.el
 
+Markus Hauck: changed org-agenda.el
+
 Markus Heiser: changed gud.el
 
 Markus Heritsch: co-wrote ada-mode.el ada-stmt.el ada-xref.el
@@ -2396,11 +2792,11 @@ Markus Heritsch: co-wrote ada-mode.el ada-stmt.el 
ada-xref.el
 Markus Holmberg: changed thingatpt.el
 
 Markus Rost: wrote cus-test.el
-and changed cus-edit.el Makefile.in files.el progmodes/compile.el
-  rmail.el tex-mode.el find-func.el rmailsum.el simple.el cus-dep.el
-  dired.el mule-cmds.el rmailout.el checkdoc.el configure.in custom.el
-  emacsbug.el gnus.el help-fns.el ls-lisp.el mwheel.el
-  and 122 other files
+and changed cus-edit.el files.el progmodes/compile.el rmail.el
+  tex-mode.el find-func.el rmailsum.el simple.el cus-dep.el dired.el
+  mule-cmds.el rmailout.el checkdoc.el configure.ac custom.el emacsbug.el
+  gnus.el help-fns.el ls-lisp.el mwheel.el sendmail.el
+  and 126 other files
 
 Markus Sauermann: changed lisp-mode.el
 
@@ -2410,9 +2806,14 @@ and changed bytecomp.el byte-opt.el doctor.el 
image-mode.el
   flyspell.el handwrite.el internals.texi proced.el ps-mode.el
   speedbar.el subr.el tumme.el widget.texi xterm.c
 
+Mark W. Eichin: changed keyboard.c xterm.c
+
+Mark W Maimone: changed mpuz.el
+
 Marshall T. Vandegrift: changed gnus-fun.el
 
 Martin Blais: co-wrote rst.el
+and changed progmodes/compile.el
 
 Martin Boyer: changed bibtex.el menu-bar.el
 
@@ -2425,24 +2826,24 @@ Martin Kretzschmar: changed gnus-spec.el gnus-sum.el
 Martin Larose: changed message.el
 
 Martin Lorentzon: wrote vc-annotate.el
-and changed vc.el vc-cvs.el vc-hooks.el vc-rcs.el vc-sccs.el
+and changed vc.el vc-cvs.el vc-rcs.el vc-sccs.el vc-hooks.el
 
 Martin Neitzel: changed supercite.el
 
 Martin Pohlack: changed iimage.el pc-select.el
 
-Martin Rudalics: changed window.el window.c windows.texi frame.c buffer.c
-  help.el window.h cus-start.el frame.el cus-edit.el files.el
-  buffers.texi dired.el subr.el add-log.el xdisp.c font-lock.el
-  help-fns.el lisp.h mouse.el wid-edit.el and 137 other files
+Martin Rudalics: changed window.el window.c windows.texi frame.c xdisp.c
+  w32term.c xterm.c w32fns.c help.el frame.el xfns.c buffer.c frames.texi
+  cus-start.el window.h dired.el display.texi dispnew.c keyboard.c
+  mouse.el files.el and 173 other files
 
 Martin Stjernholm: wrote cc-bytecomp.el
 and co-wrote cc-align.el cc-cmds.el cc-compat.el cc-defs.el cc-engine.el
   cc-fonts.el cc-langs.el cc-menus.el cc-mode.el cc-styles.el cc-vars.el
-and changed cc-fix.el cc-mode.texi Makefile.in cc-guess.el cc-mode-19.el
-  nnimap.el ack.texi awk-mode.el cc-awk.el cc-lobotomy.el cc-make.el
-  cc-style.el cc-subword.el files.el generic-x.el gnus-agent.el
-  gnus-art.el mm-decode.el simple.el
+and changed cc-fix.el nnimap.el cc-guess.el cc-mode-19.el cc-mode.texi
+  lisp/Makefile.in ack.texi awk-mode.el cc-awk.el cc-lobotomy.el
+  cc-make.el cc-subword.el files.el generic-x.el gnus-agent.el
+  gnus-art.el gnus-demon.el mm-decode.el simple.el
 
 Martin Svenson: changed progmodes/python.el
 
@@ -2459,12 +2860,15 @@ and co-wrote gnus-kill.el gnus-mh.el gnus-msg.el 
gnus.el nnbabyl.el
   nnspool.el nnvirtual.el time-date.el
 and changed gnuspost.el
 
-Masatake Yamato: wrote ld-script.el subword.el
+Masashi Fujimoto: changed battery.el
+
+Masatake Yamato: wrote add-log-tests.el imenu-test.el ld-script.el
+  subword.el
 and co-wrote cc-guess.el
 and changed etags.el asm-mode.el hexl.el xdisp.c bindings.el man.el
   xfaces.c simple.el vc.el wid-edit.el add-log.el etags.c faces.el
-  pcvs.el progmodes/compile.el register.el ruler-mode.el buffer.c
-  cc-langs.el cus-face.el dired-x.el and 73 other files
+  pcvs.el progmodes/compile.el register.el ruler-mode.el sh-script.el
+  buffer.c cc-langs.el cus-face.el and 79 other files
 
 Masayuki Ataka: changed texinfmt.el texinfo.el characters.el cmuscheme.el
   make-mode.el
@@ -2474,27 +2878,21 @@ Masayuki Fujii: changed dnd.el w32-win.el
 Mathias Dahl: wrote image-dired.el
 and changed tumme.el dired.el dired.texi
 
-Mathias Megyei: changed Makefile.in
+Mathias Megyei: changed lisp/Makefile.in
 
-Mats Lidell: changed TUTORIAL.sv european.el gnus-art.el
+Mats Lidell: changed TUTORIAL.sv european.el gnus-art.el org-element.el
 
-Matt Hodges: changed textmodes/table.el faces.el iswitchb.el simple.el
-  tmm.el cal-menu.el calendar.el calendar.texi diary-lib.el easymenu.el
-  edebug.texi eldoc.el em-hist.el em-pred.el fixit.texi icon.el ido.el
-  locate.el paragraphs.el pcomplete.el repeat.el and 3 other files
+Matt Armstrong: changed gnus-topic.el gnus.el message.el
 
-Matt Lundin: changed org-agenda.el org-bibtex.el org-footnote.el org.el
-
-Matt Pharr: changed message.el
-
-Matt Simmons: changed message.el
+Matt Curtis: changed pulse.el
 
-Matt Swift: changed dired.el editfns.c lisp-mode.el mm-decode.el
-  outline.el progmodes/compile.el rx.el simple.el startup.el
+Matt Fidler: changed package.el
 
 Matthew Junker: changed cal-tex.el
 
-Matthew Luckie: changed configure.in
+Matthew Leach: changed arc-mode.el font-lock.el
+
+Matthew Luckie: changed configure.ac
 
 Matthew Mundell: changed calendar.texi diary-lib.el files.texi
   type-break.el debugging.texi display.texi edebug.texi editfns.c eval.c
@@ -2502,30 +2900,66 @@ Matthew Mundell: changed calendar.texi diary-lib.el 
files.texi
   objects.texi os.texi positions.texi searching.texi subr.el text.texi
   and 3 other files
 
+Matthias Dahl: changed faces.el
+
 Matthias Förste: changed files.el
 
+Matthias Meulien: changed bookmark.el progmodes/python.el buff-menu.el
+  prog-mode.el simple.el tabify.el vc-dir.el
+
 Matthias Wiehl: changed gnus.el
 
 Matthieu Devin: wrote delsel.el
 
 Matthieu Moy: changed gnus-msg.el message.el
 
+Matt Hodges: changed textmodes/table.el faces.el iswitchb.el simple.el
+  tmm.el cal-menu.el calendar.el calendar.texi diary-lib.el easymenu.el
+  edebug.texi eldoc.el em-hist.el em-pred.el fixit.texi icon.el ido.el
+  locate.el paragraphs.el pcomplete.el repeat.el and 3 other files
+
+Matt Lundin: changed org-agenda.el org.el org-bibtex.el org-footnote.el
+  ox-publish.el org-bbdb.el org-datetree.el org-gnus.el
+
+Matt McClure: changed progmodes/python.el
+
+Matt Pharr: changed message.el
+
+Matt Simmons: changed message.el
+
+Matt Swift: changed dired.el editfns.c lisp-mode.el mm-decode.el
+  outline.el progmodes/compile.el rx.el simple.el startup.el
+
 Maxime Edouard Robert Froumentin: changed gnus-art.el mml.el
 
-Michael Albinus: wrote dbus.el secrets.el tramp-cmds.el tramp-compat.el
-  tramp-ftp.el tramp-gvfs.el tramp-gw.el tramp-smb.el xesam.el
-  zeroconf.el
+Max Mikhanosha: changed org-agenda.el org-habit.el org.el
+
+Memnon Anon: changed org.texi
+
+Micah Anderson: changed spook.lines
+
+Michael Albinus: wrote dbus-tests.el dbus.el file-notify-tests.el
+  filenotify.el secrets.el tramp-cmds.el tramp-compat.el tramp-ftp.el
+  tramp-gvfs.el tramp-gw.el tramp-smb.el tramp-tests.el url-tramp.el
+  vc-tests.el xesam.el zeroconf.el
 and co-wrote tramp-cache.el tramp-sh.el tramp.el
-and changed tramp.texi dbusbind.c trampver.texi dbus.texi trampver.el
-  ange-ftp.el tramp-fish.el files.el files.texi tramp-imap.el Makefile.in
-  tramp-vc.el tramp-util.el tramp-uu.el notifications.el simple.el
-  auth-source.el dired-aux.el configure.in em-unix.el fileio.c
-  and 66 other files
+and changed tramp.texi dbusbind.c trampver.texi trampver.el tramp-adb.el
+  ange-ftp.el dbus.texi files.el tramp-fish.el autorevert.el files.texi
+  tramp-imap.el notifications.el configure.ac tramp-vc.el lisp.h
+  lisp/Makefile.in simple.el tramp-uu.el em-unix.el keyboard.c
+  and 116 other files
 
-Michael Ben-Gershon: changed acorn.h configure.in riscix1-1.h riscix1-2.h
+Michael Ben-Gershon: changed acorn.h configure.ac riscix1-1.h riscix1-2.h
   unexec.c
 
-Michael Brand: changed org.el org-agenda.el org.texi org-table.el
+Michael Brand: changed org.texi org-table.el org.el org-agenda.el
+  org-capture.el ob-tangle.el org-feed.el org-id.el org-list.el
+
+Michaël Cadilhac: changed browse-url.el fr-dired-ref.tex gnus-sum.el
+  gnus.texi ido.el Makefile emacsbug.el files.el fill.el flyspell.el
+  fr-refcard.tex ispell.el meta-mode.el nnrss.el anti.texi battery.el
+  blackbox.el bs.el calccard.tex callint.c cmuscheme.el
+  and 58 other files
 
 Michael D. Ernst: wrote reposition.el
 and changed dired-x.el uniquify.el ispell.el bibtex.el rmail.el dired.el
@@ -2533,52 +2967,58 @@ and changed dired-x.el uniquify.el ispell.el bibtex.el 
rmail.el dired.el
   complete.el fill.el shadow.el texnfo-upd.el vc.el allout.el comint.el
   cust-print.el edebug.el and 28 other files
 
+Michael Downes: changed gnus-sum.el
+
 Michael D. Prange: wrote fortran.el
 and changed tex-mode.el
 
-Michael Downes: changed gnus-sum.el
+Michael Gauland: co-wrote ob-scheme.el
+and changed ebnf2ps.el org-src.el
 
 Michael Gschwind: wrote iso-cvt.el
 
 Michael Harnois: changed nnimap.el
 
+Michael Heerdegen: changed dired.el easy-mmode.el eldoc.el wdired.el
+
+Michael Hoffman: changed term.el
+
 Michael Hotchin: changed progmodes/compile.el
 
 Michael I. Bushnell: changed rmail.el simple.el callproc.c gnu.h gnus.el
   lread.c process.c screen.el search.c sendmail.el startup.el timer.c
 
-Michael K. Johnson: changed configure.in emacs.c intel386.h linux.h
-  mem-limits.h process.c sysdep.c syssignal.h systty.h template.h
-  unexcoff.c
-
 Michael Kifer: wrote ediff-diff.el ediff-help.el ediff-hook.el
   ediff-init.el ediff-merg.el ediff-mult.el ediff-ptch.el ediff-util.el
   ediff-vers.el ediff-wind.el ediff.el viper-cmd.el viper-ex.el
   viper-init.el viper-keym.el viper-macs.el viper-mous.el viper-util.el
   viper.el
 and co-wrote cal-x.el
-and changed viper*.el ediff*.el viper.texi ediff.texi ediff-hooks.el
-  ediff-merge.el menu-bar.el appt.el desktop.el ediff-meta.el
-  viper-mouse.el
+and changed viper*.el ediff*.el viper.texi ediff.texi ediff-merge.el
+  menu-bar.el appt.el desktop.el ediff-meta.el viper-mouse.el
 
-Michael Markert: changed ob.el org-agenda.el org-ascii.el
-  org-contacts-wl.el org-docbook.el org-html.el org-latex.el org-table.el
-  org.el
+Michael K. Johnson: changed configure.ac emacs.c process.c sysdep.c
+  syssignal.h systty.h unexcoff.c
+
+Michael Marchionna: changed nsterm.m
+
+Michael Markert: changed ob.el org-agenda.el org-docbook.el org-table.el
+  org.el ox-ascii.el ox-html.el ox-latex.el
 
 Michael McNamara: co-wrote verilog-mode.el
 
-Michael Olson: changed erc.el erc-backend.el erc.texi erc-track.el
+Michael Olson: changed erc.el erc-backend.el Makefile erc-track.el
   erc-log.el erc-stamp.el erc-autoaway.el erc-dcc.el erc-goodies.el
-  erc-list.el erc-compat.el erc-identd.el ERC-NEWS erc-bbdb.el
+  erc-list.el erc-compat.el erc-identd.el erc.texi ERC-NEWS erc-bbdb.el
   erc-match.el erc-notify.el erc-ibuffer.el erc-services.el remember.el
-  erc-button.el erc-nicklist.el and 60 other files
+  erc-button.el and 62 other files
 
 Michael Piotrowski: changed gnus-art.el gnus-sum.el ps-print.el
 
 Michael R. Cook: changed gnus-sum.el gnus-topic.el gnus-art.el
 
-Michael R. Mauger: changed sql.el emacsclient.c cua-base.el custom.el
-  facemenu.el recentf.el replace.el tramp.el w32fns.c
+Michael R. Mauger: changed sql.el emacsclient.c comint.el cua-base.el
+  custom.el facemenu.el recentf.el replace.el tramp.el w32fns.c
 
 Michael R. Wolf: changed ange-ftp.el
 
@@ -2593,22 +3033,27 @@ Michael Sperber: changed aix3-1.h aix4-2.h gnus.texi 
mail-source.el
 
 Michael Staats: wrote pc-select.el
 
-Michael Welsh Duggan: changed lisp.h nnimap.el sh-script.el w32term.c
+Michael Vehrs: changed woman.el
+
+Michael Welsh Duggan: changed nnimap.el lisp.h sh-script.el w32term.c
   buffer.c gnus-spec.el keyboard.c nnir.el nnmail.el print.c
   sieve-manage.el termhooks.h url-http.el w32-win.el w32fns.c w32menu.c
   w32term.h woman.el xdisp.c xterm.c
 
-Michal Jankowski: changed insdel.c keyboard.c
+Michael Weylandt: changed ox-latex.el
+
+Michael Witten: changed TUTORIAL fixit.texi intro.texi
 
-Michal Nazarewicz: changed frame.c frame.h ispell.el w32term.c xterm.c
+Michal Jankowski: changed insdel.c keyboard.c
 
-Michal Sojka: changed org-icalendar.el
+Michal Nazarewicz: wrote descr-text-test.el tildify-tests.el
+and co-wrote tildify.el
+and changed simple.el remember.el bindings.el buffer.c cfengine.el cmds.c
+  descr-text.el eldoc.el files.el fill.el flyspell.el frame.c frame.h
+  hexl.el ielm.el ispell.el lisp/files.el mpc.el nxml-mode.el octave.el
+  paragraphs.el and 9 other files
 
-Michaël Cadilhac: changed browse-url.el gnus-sum.el gnus.texi ido.el
-  emacsbug.el files.el fill.el flyspell.el fr-drdref.tex fr-refcard.ps
-  fr-refcard.tex ispell.el meta-mode.el nnrss.el
-  refcards/fr-dired-ref.pdf Makefile anti.texi battery.el blackbox.el
-  bs.el calccard.pdf and 93 other files
+Michal Sojka: changed ox-icalendar.el
 
 Michelangelo Grigni: wrote ffap.el
 and changed gnus-score.el
@@ -2618,6 +3063,10 @@ Microelectronics and Computer Technology Corporation: 
changed
   rmailkwd.el rmailmsc.el rmailout.el rmailsum.el scribe.el server.el
   sysdep.c unexcoff.c xmenu.c
 
+Miguel Ruiz: changed ob-gnuplot.el
+
+Mihir Rege: changed js.el
+
 Mikael Djurfeldt: changed xdisp.c
 
 Mikael Fornius: changed org.el org-habit.el
@@ -2626,7 +3075,7 @@ Mike Haertel: changed 7300.h
 
 Mike Kazantsev: changed erc-dcc.el
 
-Mike Kupfer: changed mh-e.el mh-utils.el
+Mike Kupfer: changed mh-comp.el mh-e.el mh-utils.el
 
 Mike Lamb: changed em-unix.el esh-util.el pcmpl-unix.el
 
@@ -2634,11 +3083,15 @@ Mike Long: changed b2m.c make-dist make-mode.el 
netbsd.h view.el vms.h
 
 Mike McEwan: changed gnus-agent.el gnus-sum.el gnus-score.el
 
+Mike McLean: changed org-agenda.el
+
 Mike Newton: co-wrote bibtex.el
 
 Mike Rowan: changed process.c alloc.c dispnew.c keyboard.c process.h
   sysdep.c xdisp.c
 
+Mike Sperber: changed org.el org-footnote.el
+
 Mike Williams: wrote mouse-sel.el thingatpt.el
 and changed sgml-mode.el xml-lite.el
 
@@ -2647,30 +3100,34 @@ Mike Woolley: changed gnus-sum.el
 Mikio Nakajima: changed ring.el viper-util.el
 
 Milan Zamazal: wrote glasses.el language/czech.el quail/czech.el
-  tildify.el
-and co-wrote language/slovak.el prolog.el quail/slovak.el
-and changed abbrev.el filecache.el files.el mm-view.el org.el
-  progmodes/compile.el
+and co-wrote language/slovak.el prolog.el quail/slovak.el tildify.el
+and changed czech.el abbrev.el filecache.el files.el mm-view.el org.el
+  progmodes/compile.el slovak.el
 
 Miles Bader: wrote button.el face-remap.el image-file.el macroexp.el
   mb-depth.el minibuf-eldef.el rfn-eshadow.el
 and changed comint.el faces.el simple.el editfns.c xfaces.c xdisp.c
-  info.el minibuf.c display.texi wid-edit.el xterm.c Makefile.in
-  dispextern.h quick-install-emacs subr.el window.el cus-edit.el
-  diff-mode.el xfns.c bytecomp.el help.el and 270 other files
+  info.el minibuf.c display.texi wid-edit.el xterm.c dispextern.h
+  quick-install-emacs subr.el window.el cus-edit.el diff-mode.el xfns.c
+  bytecomp.el help.el lisp.h and 273 other files
 
 Milton Wulei: changed gdb-ui.el
 
+Mirek Kaim: changed configure.ac
+
 Mirko Vukovic: changed emacs.texi maintaining.texi
 
+Mitchel Humpherys: changed vc-git.el
+
 Miyashita Hisashi: changed ccl.c coding.c coding.h mule-cmds.el
   mule-conf.el mule.el pop3.el
 
 Miyoshi Masanori: changed mouse.el smtpmail.el xdisp.c
 
 Mohsen Banan: wrote persian.el
+and changed loadup.el
 
-Mon Key: changed animate.el syntax.el
+Mon Key: changed animate.el imap.el syntax.el
 
 Morten Welinder: wrote [many MS-DOS files] arc-mode.el desktop.el
   dosfns.c internal.el msdos.h pc-win.el s-region.el
@@ -2683,32 +3140,37 @@ Mosur Mohan: changed etags.c
 
 Motorola: changed buff-menu.el
 
+Muchenxuan Tong: changed org-agenda.el org-mobile.el org-timer.el
+
 Murata Shuuichirou: changed coding.c
 
-N. Raghavendra: changed timezone.el
+Myles English: changed org-clock.el
 
 Nachum Dershowitz: co-wrote cal-hebrew.el
 
 Nagy Andras: co-wrote gnus-sieve.el
-and changed imap.el gnus.el
+and changed gnus.el
 
 Nakagawa Makoto: changed ldap.el
 
-Nakaji Hiroyuki: changed mm-util.el amdx86-64.h configure.in smiley.el
+Nakaji Hiroyuki: changed mm-util.el amdx86-64.h configure.ac smiley.el
 
 Nakamura Toshikazu: changed w32fns.c
 
-Nali Toja: changed configure.in
+Nali Toja: changed configure.ac
 
 Naohiro Aota: changed fontset.c ftfont.c gnus-art.el mm-view.el tls.el
   xftfont.c
 
+Nathaniel Flath: changed cc-menus.el cc-engine.el cc-fonts.el cc-langs.el
+  cc-mode.el cc-vars.el
+
 Nathan J. Williams: changed imap.el
 
-Nathan Weizenbaum: changed js.el
+Nathan Trapuzzano: changed cconv.el cl-macs.el cperl-mode.el gnus.texi
+  linum.el progmodes/python.el python-tests.el
 
-Nathaniel Flath: changed cc-menus.el cc-engine.el cc-fonts.el cc-langs.el
-  cc-mode.el cc-vars.el
+Nathan Weizenbaum: changed js.el progmodes/python.el
 
 Neal Ziring: co-wrote vi.el (public domain)
 
@@ -2716,48 +3178,65 @@ Neil Mager: wrote appt.el
 
 Neil W. Van Dyke: wrote webjump.el
 
-Nelson H. F. Beebe: changed configure.in
+Nelson H. F. Beebe: changed configure.ac
 
-Nelson Jose dos Santos Ferreira: changed nnsoup.el gnus-art.el
-  gnus-dup.el spam-stat.el
+Nelson Jose dos Santos Ferreira: changed nnsoup.el emacs.el gnus-art.el
+  gnus-dup.el gnus-win.el spam-stat.el
 
 Nevin Kapur: changed nnmail.el gnus-sum.el nnimap.el gnus-group.el
   gnus-registry.el gnus.el nnbabyl.el nnfolder.el nnmbox.el nnmh.el
   nnml.el
 
+Nguyen Thai Ngoc Duy: co-wrote vnvni.el
+
 Niall Mansfield: changed etags.c
 
-Nic Ferrier: changed tramp.el
+Nic Ferrier: changed ert.el tramp.el
 
 Nicholas Maniscalco: changed term.el
 
 Nick Alcock: changed gnus.el
 
-Nick Dokos: changed org-exp.el mh-search.el org.el url-cache.el
+Nick Dokos: changed org-table.el ox.el icalendar.el mh-search.el
+  org-mobile.el org.el ox-ascii.el url-cache.el
 
 Nick Roberts: wrote gdb-mi.el t-mouse.el
 and changed gdb-ui.el gud.el building.texi tooltip.el speedbar.el
   bindings.el thumbs.el xt-mouse.el .gdbinit DEBUG cc-mode.el comint.el
   keyboard.c subr.el frames.texi help-mode.el progmodes/compile.el
-  xdisp.c Makefile.in display.texi term.c and 154 other files
+  xdisp.c display.texi term.c vc-svn.el and 144 other files
 
 Nico Francois: changed w32fns.c w32inevt.c w32menu.c
 
 Nicolas Avrutin: changed url-http.el
 
-Nicolas Goaziou: changed org-list.el org.el org-footnote.el org-exp.el
-  org-latex.el org-html.el org-inlinetask.el org-indent.el org-docbook.el
-  org-timer.el ob-asymptote.el org-ascii.el org-capture.el ob.el
-  org-agenda.el org-archive.el ob-exp.el org-clock.el org-macs.el
-  org-mouse.el org.texi and 3 other files
+Nicolas Calderon Asselin: changed org-clock.el
+
+Nicolas Goaziou: wrote org-element.el org-macro.el ox-ascii.el
+  ox-latex.el ox-md.el ox-org.el ox.el
+and co-wrote ox-beamer.el ox-icalendar.el ox-man.el
+and changed org-list.el org.el ox-html.el org-footnote.el ox-texinfo.el
+  org.texi ox-publish.el ox-odt.el org-inlinetask.el org-indent.el
+  org-docbook.el ob-exp.el org-agenda.el org-timer.el ob.el
+  org-capture.el ob-asymptote.el org-clock.el org-macs.el
+  org-pcomplete.el org-table.el and 22 other files
+
+Nicolas Petton: wrote seq-tests.el seq.el
+and changed sequences.texi authors.el
+
+Nicolas Richard: changed org.el simple.el align.el battery.el byte-run.el
+  eieio-opt.el elisp-mode.el help.el isearch.el ispell.el minibuffer.el
+  ob.el package.el wid-edit.el
 
 Niels Giesen: changed icalendar.el org-agenda.el org-clock.el
-  org-docbook.el org-icalendar.el
+  org-docbook.el org-table.el ox-icalendar.el ox-latex.el
 
 Niimi Satoshi: changed pp.el search.c
 
 Niklas Morberg: changed nnweb.el gnus-art.el nnimap.el spam.el
 
+Nikolai Weibull: changed org.el
+
 Nikolaj Schumacher: changed flymake.el progmodes/compile.el eldoc.el
   elp.el nsfont.m rx.el
 
@@ -2769,18 +3248,20 @@ Noah Friedman: wrote eldoc.el rlogin.el type-break.el
 and co-wrote erc-dcc.el
 and changed rsz-mini.el comint.el emacs-buffer.gdb files.el Makefile
   mailabbrev.el sendmail.el subr.el timer.el yow.el apropos.el battery.el
-  bytecomp.el calc.el coding.c complete.el config.in configure.in
-  copyright.h fns.c gnu-linux.h and 19 other files
+  bytecomp.el calc.el coding.c complete.el configure.ac copyright.h fns.c
+  gnu-linux.h hpux7.h and 18 other files
 
 Noah Lavine: changed tramp.el
 
+Noam Postavsky: changed cmdproxy.c process-tests.el w32proc.c
+
 Nobuyoshi Nakada: co-wrote ruby-mode.el
 
 Nobuyuki Hikichi: changed news-risc.h
 
 Noel Cragg: changed mh-junk.el
 
-Noorul Islam: changed org-latex.el org-html.el org.el org.texi
+Noorul Islam: changed ox-latex.el org.el org.texi ox-html.el
   org-capture.el org-gnus.el org-habit.el package.el
 
 Norbert Koch: changed gnus-msg.el gnus-score.el
@@ -2788,20 +3269,25 @@ Norbert Koch: changed gnus-msg.el gnus-score.el
 Nozomu Ando: changed unexmacosx.c alloc.c buffer.c mips.h pmax.h
   smtpmail.el sysselect.h unexelf.c
 
+N. Raghavendra: changed timezone.el
+
 Nuutti Kotivuori: changed gnus-sum.el flow-fill.el gnus-cache.el
 
 Odd Gripenstam: wrote dcl-mode.el
 
-Ognyan Kulev: changed TUTORIAL.bg quail/cyrillic.el
+Ognyan Kulev: changed TUTORIAL.bg cyrillic.el
 
-Okazaki Tetsurou: changed cc-fonts.el
+Okazaki Tetsurou: changed cc-fonts.el vc-svn.el vc.el
 
 Olaf Sylvester: wrote bs.el
 
 Ole Aamot: changed compile.el
 
-Oleg S. Tihonov: changed ispell.el language/cyrillic.el map-ynp.el
-  quail/cyrillic.el subr.el
+Oleg S. Tihonov: changed cyrillic.el ispell.el language/cyrillic.el
+  map-ynp.el subr.el
+
+Oleh Krehel: changed outline.el check-declare.el derived.el easy-mmode.el
+  gdb-mi.el lisp/custom.el org-capture.el org-clock.el replace.el
 
 Oleksandr Gavenko: changed generic-x.el progmodes/grep.el
 
@@ -2814,7 +3300,8 @@ Oliver Scholz: wrote ipa-praat.el
 and changed gamegrid.el gnus-cite.el nonascii.texi rx.el startup.el
   update-game-score.c
 
-Oliver Seidel: wrote todo-mode.el
+Oliver Seidel: wrote otodo-mode.el
+and co-wrote todo-mode.el
 
 Olivier Laurens: changed forms.el
 
@@ -2828,35 +3315,40 @@ Olof Ohlsson Sax: changed vc-svn.el
 
 Osamu Yamane: changed smtpmail.el
 
-Oscar Figueiredo: wrote eudc-bob.el eudc-export.el eudc-hotlist.el
-  eudc-vars.el eudc.el eudcb-bbdb.el eudcb-ldap.el eudcb-ph.el ldap.el
+Oscar Figueiredo: wrote ldap.el
+and co-wrote eudc-bob.el eudc-export.el eudc-hotlist.el eudc-vars.el
+  eudc.el eudcb-bbdb.el eudcb-ldap.el eudcb-ph.el
 and changed ph.el
 
-Óscar Fuentes: changed ido.el cmdproxy.c emacsclient.c vc-bzr.el
+Oscar Fuentes: changed ms-w32.h CPP-DEFINES addpm.c addsection.c
+  browse-url.el configure.ac keyboard.c preprep.c vc-cvs.el vc-git.el
+  vc-hg.el vc-hooks.el vc-mtn.el vc-svn.el vc.el vc/vc-bzr.el w32.c
+  w32heap.c w32term.c
 
-P. E. Jareth Hein: changed gnus-util.el
+Óscar Fuentes: changed ido.el cmdproxy.c diff-mode.el emacsclient.c
+  vc-bzr.el
 
-Pascal Dupuis: changed octave-inf.el
+Pascal Dupuis: changed octave.el
 
 Pascal Rigaux: changed image.c rfc2231.el
 
-Pat Thoyts: changed xfns.c
+Patrick Mahan: changed macfns.c
 
 Patric Mueller: changed gnus-sum.el
 
-Patrick Mahan: changed macfns.c
+Pat Thoyts: changed xfns.c
 
 Paul Curry: changed cc-subword.el
 
 Paul D. Smith: wrote snmp-mode.el
 and changed imenu.el make-mode.el
 
-Paul Eggert: wrote rcs2log vcdiff
+Paul Eggert: wrote rcs2log
 and co-wrote cal-dst.el
-and changed lisp.h Makefile.in editfns.c alloc.c xdisp.c configure.in
-  fileio.c image.c process.c fns.c xterm.c dispextern.h keyboard.c data.c
-  lread.c sysdep.c xfns.c eval.c emacs.c buffer.c config.in
-  and 573 other files
+and changed lisp.h configure.ac alloc.c process.c fileio.c sysdep.c
+  xdisp.c keyboard.c editfns.c image.c emacs.c xterm.c data.c lread.c
+  callproc.c fns.c Makefile.in dispextern.h dispnew.c eval.c xfns.c
+  and 1085 other files
 
 Paul Fisher: changed fns.c
 
@@ -2869,14 +3361,18 @@ and changed message.el gnus-util.el gnus-int.el gnus.el 
gnus-agent.el
   gnus-start.el gnus-sum.el nnmail.el
 
 Paul Pogonyshev: changed progmodes/python.el subr.el which-func.el
-  Makefile.in align.el byte-opt.el configure.in dabbrev.el display.texi
+  align.el byte-opt.el cc-langs.el configure.ac dabbrev.el display.texi
   eldoc.el etags.el image-file.el image.c image.el info.el replace.el
-  search.texi searching.texi ses.el tar-mode.el url-http.el window.el
+  search.texi searching.texi ses.el src/Makefile.in tar-mode.el
+  and 3 other files
 
-Paul Reilly: changed dgux.h lwlib-Xm.c lwlib.c xlwmenu.c configure.in
-  mail-utils.el process.c rmail.el xfns.c Makefile.in dgux5-4R2.h
-  dgux5-4R3.h files.el keyboard.c lwlib-Xaw.c lwlib-Xm.h lwlib-int.h
-  lwlib.h mail/rmailmm.el rmailedit.el rmailkwd.el and 10 other files
+Paul Rankin: changed outline.el
+
+Paul Reilly: changed dgux.h lwlib-Xm.c lwlib.c xlwmenu.c configure.ac
+  mail-utils.el process.c rmail.el xfns.c dgux5-4R2.h dgux5-4R3.h
+  files.el keyboard.c lwlib-Xaw.c lwlib-Xm.h lwlib-int.h lwlib.h
+  lwlib/Makefile.in mail/rmailmm.el rmailedit.el rmailkwd.el
+  and 10 other files
 
 Paul Rivier: changed ada-mode.el mixal-mode.el reftex-vars.el reftex.el
 
@@ -2888,15 +3384,19 @@ Paul Stevenson: changed nnvirtual.el
 
 Paul Stodghill: changed gnus-agent.el gnus-util.el
 
-Pavel Janík: changed keyboard.c xterm.c COPYING xdisp.c Makefile.in
-  process.c emacs.c lisp.h menu-bar.el ldap.el make-dist xfns.c buffer.c
-  coding.c eval.c fileio.c flyspell.el fns.c indent.c callint.c
-  cus-start.el and 710 other files
+Pavel Janík: co-wrote eudc-bob.el eudc-export.el eudc-hotlist.el
+  eudc-vars.el eudc.el eudcb-bbdb.el eudcb-ldap.el eudcb-ph.el
+and changed keyboard.c xterm.c COPYING xdisp.c process.c emacs.c lisp.h
+  menu-bar.el ldap.el make-dist xfns.c buffer.c coding.c eval.c fileio.c
+  flyspell.el fns.c indent.c Makefile.in callint.c cus-start.el
+  and 692 other files
 
 Pavel Kobiakov: wrote flymake.el
 and changed flymake.texi
 
-Peder O. Klingenberg: changed gnus.texi
+Peder O. Klingenberg: changed mm-decode.el emacsbug.el gnus.texi
+
+P. E. Jareth Hein: changed gnus-util.el
 
 Per Abrahamsen: wrote cus-dep.el cus-edit.el cus-face.el cus-start.el
   custom.el double.el gnus-cite.el gnus-cus.el progmodes/cpp.el
@@ -2918,14 +3418,14 @@ and changed vc.el vc-hooks.el diff-mode.el etags.c 
etags.el forms.el
 Per Persson: wrote gnus-vm.el
 and co-wrote erc-dcc.el
 
-Per Starbäck: changed ispell.el dired.el gnus-start.el BUGS apropos.el
-  bytecomp.el characters.el charset.h coding.c doctor.el emacs.c
+Per Starbäck: changed ispell.el characters.el dired.el gnus-start.el BUGS
+  apropos.el bibtex.el bytecomp.el charset.h coding.c doctor.el emacs.c
   european.el iso-transl.el pcmpl-gnu.el replace.el startup.el
   trouble.texi vc.el xdisp.c
 
-Pete Kazmier: changed gnus-art.el
+Pete Beardmore: changed semantic/complete.el idle.el
 
-Pete Ware: changed message.el
+Pete Kazmier: changed gnus-art.el
 
 Peter Breton: wrote dirtrack.el emacs-lisp/generic.el filecache.el
   find-lisp.el generic-x.el locate.el net-utils.el
@@ -2939,67 +3439,81 @@ Peter Dyballa: changed calendar.el
 
 Peter Heslin: changed flyspell.el outline.el
 
-Peter J. Weisberg: changed help.el picture.el simple.el
-
 Peter Jolly: changed arc-mode.el ftfont.c
 
 Peter Jones: changed nsterm.m
 
+Peter J. Weisberg: changed help.el picture.el simple.el
+
 Peter Kleiweg: wrote ps-mode.el
 
 Peter Liljenberg: wrote elint.el
 
-Peter Münster: changed gnus.texi org-agenda.el org.el
+Peter Münster: changed gnus-delay.el gnus-demon.el gnus-group.el
+  gnus-start.el gnus.texi org-agenda.el org.el
 
-Peter O'Gorman: changed configure.in frame.h hpux10-20.h termhooks.h
+Peter O'Gorman: changed configure.ac frame.h hpux10-20.h termhooks.h
 
-Peter Oliver: changed server.el
+Peter Oliver: changed perl-mode.el server.el
 
 Peter Povinec: changed term.el
 
-Peter Runestig: changed makefile.w32-in configure.bat dos-w32.el emacs.rc
-  envadd.bat gmake.defs multi-install-info.bat nmake.defs w32fns.c
-  zone-mode.el
+Peter Rosin: changed configure.ac
+
+Peter Runestig: changed configure.bat dos-w32.el emacs.rc.in
+  emacs/makefile.w32-in envadd.bat gmake.defs lispintro/makefile.w32-in
+  lispref/makefile.w32-in misc/makefile.w32-in multi-install-info.bat
+  nmake.defs nt/makefile.w32-in src/makefile.w32-in w32fns.c zone-mode.el
+
+Peter Seibel: changed cl-indent.el lisp-mode.el
 
 Peter S. Galbraith: wrote mh-alias.el mh-identity.el mh-inc.el
   mh-limit.el
 and changed mh-comp.el mh-e.el mh-utils.el mh-mime.el mh-customize.el
-  mh-seq.el mh-init.el mh-search.el mh-xemacs-compat.el
-  mh-xemacs-toolbar.el info-look.el mh-compat.el mh-funcs.el alias.pbm
-  alias.xpm cabinet.xpm goto-addr.el highlight.xpm mh-junk.el
-  mh-xemacs-icons.el mh-xemacs.el and 9 other files
-
-Peter Seibel: changed cl-indent.el lisp-mode.el
+  mh-seq.el Makefile mh-init.el mh-search.el mh-xemacs-compat.el
+  mh-xemacs-toolbar.el README info-look.el mh-compat.el mh-funcs.el
+  alias.pbm alias.xpm cabinet.xpm goto-addr.el highlight.xpm mh-junk.el
+  and 11 other files
 
 Peter Stephenson: wrote vcursor.el
 
 Peter Tury: changed org.texi
 
+Peter von der Ahe: changed gnus-ems.el
+
 Peter Whaite: changed data.c
 
-Peter von der Ahe: changed gnus-ems.el
+Pete Ware: changed message.el
+
+Pete Williamson: changed leim/Makefile.in lib-src/Makefile.in
+  lisp/Makefile.in
 
-Petr Salinger: changed configure.in gnu-kfreebsd.h
+Petr Hracek: changed emacs.1
 
-Petri Kaurinkoski: changed configure.in iris4d.h irix6-0.h irix6-5.h
+Petri Kaurinkoski: changed configure.ac iris4d.h irix6-0.h irix6-5.h
   usg5-4.h
 
+Petr Salinger: changed configure.ac gnu-kfreebsd.h
+
 Phil Hagelberg: wrote ert-x-tests.el
 and changed package.el pcmpl-unix.el subr.el
 
-Phil Sung: changed follow.el progmodes/python.el wdired.el
-
 Philip Jackson: wrote find-cmd.el org-irc.el
 
-Philipp Haselwarter: changed gnus-agent.el gnus.texi
-
 Philippe Schnoebelen: wrote gomoku.el mpuz.el
 
 Philippe Waroquiers: changed etags.el term.c
 
-Pierre Poissinger: changed charset.c
+Philipp Haselwarter: changed gnus-agent.el gnus-sum.el gnus-sync.el
+  gnus.texi newcomment.el
 
-Piet van Oostrum: changed data.c fileio.c flyspell.el smtpmail.el
+Philipp Rumpf: changed electric.el
+
+Phil Sainty: changed lisp.el subword.el
+
+Phil Sung: changed follow.el progmodes/python.el wdired.el
+
+Pierre Poissinger: changed charset.c
 
 Pieter E.J. Pareit: wrote mixal-mode.el
 
@@ -3007,221 +3521,260 @@ Pieter Praet: changed org-crypt.el
 
 Pieter Schoenmakers: changed TUTORIAL.nl
 
+Piet van Oostrum: changed data.c fileio.c flyspell.el smtpmail.el
+
 Pinku Surana: changed sql.el
 
-Piotr Zielinski: wrote org-mouse.el
+Piotr Zieliński: wrote org-mouse.el
 
 Prestoo Ten: changed screen.el
 
 Primoz Peterlin: changed TUTORIAL.sl
 
-Puneeth Chaganti: changed org.texi org-exp.el org-agenda.el
-  org-capture.el org-html.el
-
-R. Bernstein: changed gud.el
+Puneeth Chaganti: changed org.texi ox.el org-agenda.el org-capture.el
+  ox-html.el
 
-Rafael Laboissiere: changed org.el org.texi
+Rafael Laboissiere: changed org-remember.el org-bibtex.el org.el org.texi
 
 Rafael Sepúlveda: changed TUTORIAL.es
 
 Raffael Mancini: changed misc.el
 
-Rainer Orth: changed Makefile.in
-
-Rainer Schoepf: wrote alpha.h unexalpha.c
-and changed osf1.h alloc.c buffer.c callint.c data.c dispextern.h doc.c
-  editfns.c floatfns.c frame.h lisp.h lread.c marker.c mem-limits.h
-  print.c puresize.h window.h xdisp.c xterm.h
+Rainer Orth: changed gtkutil.c lisp/Makefile.in
 
-Raja R. Harinath: changed gnus-salt.el nnml.el
+Rainer Schöpf: changed osf1.h unexalpha.c alloc.c alpha.h buffer.c
+  callint.c data.c dispextern.h doc.c editfns.c floatfns.c frame.h lisp.h
+  lread.c marker.c mem-limits.h print.c puresize.h window.h xdisp.c
+  xterm.h
 
 Rajappa Iyer: changed gnus-salt.el
 
+Raja R. Harinath: changed gnus-salt.el nnml.el
+
 Rajesh Vaidheeswarran: wrote old-whitespace.el
 and changed whitespace.el ffap.el
 
 Ralf Angeli: wrote scroll-lock.el
-and changed w32fns.c gnus-art.el reftex-cite.el reftex-toc.el reftex.el
+and changed w32fns.c reftex-cite.el gnus-art.el reftex-toc.el reftex.el
+  reftex-auc.el reftex-dcr.el reftex-global.el reftex-index.el
+  reftex-parse.el reftex-ref.el reftex-sel.el reftex-vars.el reftex.texi
   tex-mode.el comint.el flow-fill.el frame.el killing.texi mm-uu.el
-  mm-view.el package.el pcl-cvs.texi reftex-auc.el reftex-dcr.el
-  reftex-global.el reftex-index.el reftex-parse.el reftex-ref.el
-  reftex-sel.el and 6 other files
+  mm-view.el and 6 other files
 
 Ralf Fassel: changed dabbrev.el files.el fill.el iso-acc.el tar-mode.el
 
+Ralf Mattes: changed el.srt
+
 Ralph Schleicher: wrote battery.el info-look.el
 and changed libc.el browse-url.el fileio.c info.el mm-decode.el
-  nnultimate.el perl-mode.el which-func.el
+  perl-mode.el which-func.el
 
 Ramakrishnan M: changed mlm-util.el
 
+Randall Smith: changed dired.el
+
 Randal Schwartz: wrote pp.el
 
-Randall Smith: changed dired.el
+Ransom Williams: changed files.el
+
+Rasmus Pank: changed org.el ox-latex.el ob-C.el org-entities.el
+  org-src.el ox.el
+
+Rasmus Pank Roulund: changed ange-ftp.el gnus-fun.el
+  gnus-notifications.el vc-git.el
 
 Raul Acevedo: changed info.el options.el
 
-Ray Blaak: co-wrote delphi.el
+Ray Blaak: co-wrote opascal.el
 
 Raymond Scholz: co-wrote deuglify.el
 and changed gnus-art.el gnus-msg.el gnus.texi message.el nnmail.el
   pgg-gpg.el
 
+R. Bernstein: changed gud.el
+
 Reiner Steib: wrote gmm-utils.el gnus-news.el
 and changed message.el gnus.texi gnus-art.el gnus-sum.el gnus-group.el
   gnus.el mml.el gnus-faq.texi mm-util.el gnus-score.el message.texi
   gnus-msg.el gnus-start.el gnus-util.el spam-report.el mm-uu.el spam.el
-  mm-decode.el files.el gnus-agent.el nnmail.el and 182 other files
+  mm-decode.el files.el gnus-agent.el nnmail.el and 173 other files
 
 Remek Trzaska: changed gnus-ems.el
 
 Remi Letot: changed nnmaildir.el
 
+Rémi Vanicat: changed ox-icalendar.el org-table.el
+
 Renaud Rioboo: changed nnmail.el
 
-René Kyllingstad: changed pcomplete.el
+René Kyllingstad: changed editfns.c mule-cmds.el pcomplete.el
 
 Reto Zimmermann: wrote vera-mode.el
 and co-wrote vhdl-mode.el
+and changed vhdl-mode.texi
 
-Reuben Thomas: changed files.el flymake.el loading.texi pcvs-defs.el
-  simple.el
+Reuben Thomas: changed remember.el README files.el msdos.c INSTALL
+  ada-mode.el ada-xref.el alloc.c arc-mode.el authors.el config.bat
+  copyright dired.el dosfns.c ediff.texi editfns.c emacs-xtra.texi
+  emacs.texi emacs/Makefile.in emacs/makefile.w32-in flymake.el
+  and 22 other files
 
 Riccardo Murri: changed vc-bzr.el tls.el
 
-Richard Dawe: changed Makefile.in config.in
+Richard Copley: changed Makefile.in epaths.in epaths.nt gdb-mi.el
+
+Richard Dawe: changed src/Makefile.in
 
 Richard G. Bielawski: changed modes.texi paren.el
 
 Richard Hoskins: changed message.el
 
 Richard Kim: wrote wisent/python.el
-and changed loading.texi python-wy.el texnfo-upd.el
+and changed bovine.texi db-global.el loading.texi texnfo-upd.el
+  wisent.texi
 
 Richard King: wrote filelock.c uniquify.el userlock.el
 
-Richard L. Pieri: wrote pop3.el
-
-Richard Lawrence: changed org-latex.el
+Richard Lawrence: changed org-agenda.el ox-latex.el
 
 Richard Levitte: changed vc-mtn.el
 
-Richard M. Heiberger: changed tex-mode.el
+Richard L. Pieri: wrote pop3.el
 
-Richard M. Stallman: wrote [The original GNU Emacs and numerous files]
-  easymenu.el image-mode.el menu-bar.el paren.el
-and co-wrote cc-align.el cc-cmds.el cc-defs.el cc-engine.el cc-langs.el
-  cc-menus.el cc-mode.el cc-styles.el cc-vars.el font-lock.el
-and changed files.el keyboard.c simple.el xterm.c xdisp.c rmail.el
-  Makefile.in fileio.c process.c sysdep.c buffer.c xfns.c window.c
-  configure.in subr.el startup.el sendmail.el emacs.c editfns.c info.el
-  dispnew.c and 1350 other files
+Richard M. Heiberger: changed tex-mode.el
 
 Richard Mlynarik: wrote cl-indent.el ebuff-menu.el ehelp.el rfc822.el
   terminal.el yow.el
-and changed files.el simple.el rmail.el info.el sysdep.c bytecomp.el
+and changed files.el rmail.el simple.el info.el sysdep.c bytecomp.el
   startup.el keyboard.c fileio.c process.c sendmail.el window.c editfns.c
   unexec.c xfns.c keymap.c lisp-mode.el minibuf.c buffer.c dired.el
   dispnew.c and 140 other files
 
+Richard M. Stallman: wrote [The original GNU Emacs and numerous files]
+  easymenu.el image-mode.el menu-bar.el paren.el
+and co-wrote cc-align.el cc-cmds.el cc-defs.el cc-engine.el cc-langs.el
+  cc-menus.el cc-mode.el cc-styles.el cc-vars.el font-lock.el
+and changed files.el keyboard.c simple.el xterm.c xdisp.c rmail.el
+  fileio.c process.c sysdep.c buffer.c xfns.c window.c subr.el
+  configure.ac startup.el sendmail.el emacs.c Makefile.in editfns.c
+  info.el dired.el and 1335 other files
+
 Richard Sharman: wrote hilit-chg.el
 and changed sh-script.el ediff-init.el regexp-opt.el simple.el
 
 Rick Farnbach: wrote morse.el
 
+Rick Frankel: changed ox-html.el ob-sql.el org.texi
+
 Rick Sladkey: wrote backquote.el
 and changed gud.el intervals.c intervals.h simple.el
 
-Rob Browning: changed configure.in
+Rob Browning: changed configure.ac
 
 Rob Christie: changed nsmenu.m
 
-Rob Giardina: changed org-agenda.el
-
-Rob Kaut: changed vhdl-mode.el
-
-Rob Riepel: wrote tpu-edt.el tpu-extras.el tpu-mapper.el vt-control.el
-and changed tpu-doc.el
-
 Robert Bihlmeyer: changed gnus-score.el gnus-util.el message.el
 
 Robert Brown: changed lisp-mode.el
 
 Robert Fenk: changed desktop.el
 
+Robert Jarzmik: changed ede/linux.el inversion.el
+
 Robert J. Chassell: wrote makeinfo.el page-ext.el texinfo.el
   texnfo-upd.el
-and changed texinfmt.el emacs-lisp-intro.texi emacs.tex texinfo.tex
-  info.el texinfo-update.el INSTALL case-table.el cl.texinfo help-fns.el
+and changed texinfmt.el emacs-lisp-intro.texi emacs.texi texinfo.tex
+  info.el texinfo-update.el INSTALL case-table.el cl.texi help-fns.el
   help-mode.el history.el informat.el latin-1.el latin-2.el latin-3.el
-  latin-4.el page.el tex-mode.el texinfo.texinfo vip.texinfo
+  latin-4.el page.el tex-mode.el texinfo.texi vip.texi
 
 Robert Marshall: changed mule-cmds.el
 
-Robert P. Goldman: changed org.texi ob-exp.el org-latex.el org.el
+Roberto Huelga Díaz: changed org-clock.el org-timer.el
+
+Roberto Rodríguez: changed ada-mode.texi glossary.texi widget.texi
+
+Robert P. Goldman: changed org.texi ob-exp.el org.el ox-latex.el
 
-Robert Pluim: changed gnus-demon.el org-agenda.el
+Robert Pluim: changed configure.ac gnus-demon.el org-agenda.el
+  todo-mode.el
 
 Robert Thorpe: changed cus-start.el indent.el
 
-Roberto Huelga: changed org-clock.el
+Rob Giardina: changed org-agenda.el
 
-Roberto Rodríguez: changed ada-mode.texi glossary.texi widget.texi
+Rob Kaut: changed vhdl-mode.el
+
+Rob Riepel: wrote tpu-edt.doc tpu-edt.el tpu-extras.el tpu-mapper.el
+  vt-control.el
 
 Roderick Schertler: changed dgux.h dgux4.h gud.el sysdep.c
 
 Rodney J. Whitby: co-wrote vhdl-mode.el
 
-Rodrigo Real: changed pt-br-refcard.tex pt-br-refcard.ps
+Rodrigo Real: changed pt-br-refcard.tex
+
+Rod Whitby: changed vhdl-mode.texi
 
 Roger Breitenstein: changed smtpmail.el
 
 Roland B. Roberts: changed buffer.h callproc.c dired.c files.el
   gnus-group.el gnus-sum.el process.c sort.el sysdep.c systty.h
 
-Roland Kaufmann: changed org-exp.el
+Roland Kaufmann: changed ox.el
 
 Roland McGrath: wrote autoload.el etags.el map-ynp.el progmodes/grep.el
 and co-wrote find-dired.el progmodes/compile.el
-and changed compile.el add-log.el configure.in files.el Makefile.in vc.el
-  simple.el mailabbrev.el comint.el buffer.c upd-copyr.el etags.c
-  menu-bar.el mem-limits.h ralloc.c fileio.c data.c process.c rlogin.el
-  rmail.el shell.el and 137 other files
+and changed compile.el add-log.el configure.ac files.el vc.el simple.el
+  mailabbrev.el comint.el Makefile.in buffer.c upd-copyr.el menu-bar.el
+  etags.c mem-limits.h ralloc.c src/Makefile.in fileio.c data.c process.c
+  rlogin.el rmail.el and 139 other files
 
 Roland Winkler: wrote proced.el
-and changed bibtex.el process.c appt.el artist.el conf-mode.el
-  flyspell.el hideshow.el ibuffer.el ispell.el make-mode.el sgml-mode.el
-  sh-script.el skeleton.el smtpmail.el
+and changed bibtex.el faces.el crm.el process.c appt.el artist.el
+  conf-mode.el cus-edit.el diary-lib.el flyspell.el hideshow.el
+  ibuf-ext.el ibuffer.el ispell.el make-mode.el sgml-mode.el sh-script.el
+  skeleton.el smtpmail.el
 
 Rolf Ebert: co-wrote ada-mode.el ada-stmt.el ada-xref.el
 and changed files.el find-file.el
 
-Romain Francoise: changed faq.texi message.el Makefile.in make-dist
-  gnus.texi dired-x.el comint.el ibuf-ext.el subr.el gnus-sum.el
-  gnus-uu.el progmodes/compile.el puresize.h replace.el startup.el
-  configure.in doclicense.texi emacs.c files.texi gnus-fun.el help-fns.el
-  and 146 other files
+Romain Francoise: changed efaq.texi message.el make-dist gnus.texi
+  dired-x.el Makefile.in comint.el fileio.c ibuf-ext.el subr.el
+  configure.ac files.texi gnus-sum.el gnus-uu.el progmodes/compile.el
+  puresize.h replace.el startup.el doclicense.texi emacs.c gnus-fun.el
+  and 150 other files
 
 Roman Belenov: changed which-func.el
 
-Ron Schnell: wrote dunnet.el
-
 Ronan Waide: changed smtpmail.el
 
+Ron Schnell: wrote dunnet.el
+
 Ross Patterson: co-wrote org-protocol.el
 
+Roy Hashimoto: changed mm-view.el
+
 Roy Liu: changed ns-win.el
 
+Rüdiger Sonderfeld: wrote inotify-test.el reftex-tests.el
+and changed eww.el octave.el shr.el bibtex.el configure.ac
+  misc/Makefile.in reftex-vars.el vc-git.el TUTORIAL.de ada-mode.el
+  autoinsert.el building.texi calc-lang.el cc-langs.el dired.texi
+  editfns.c emacs.c emacs.texi epa.el erc.el eww.texi and 35 other files
+
 Rui-Tao Dong: changed nnweb.el
 
 Rune Kleveland: changed xfns.c
 
-Rupert Swarbrick: changed gnus-score.el
+Rupert Swarbrick: changed autoinsert.el cal-html.el gnus-score.el
 
 Russ Allbery: changed message.el
 
 Ryan Barrett: changed dirtrack.el
 
+Ryan Crum: changed json.el
+
 Ryan C. Thompson: changed savehist.el
 
 Ryan Twitchell: changed ido.el
@@ -3230,32 +3783,37 @@ Ryan Yeske: wrote rcirc.el
 and changed ffap.el ispell.el message.texi rmailsum.el simple.el
   testcover.el webjump.el
 
+Ryo Takaishi: changed ob-tangle.el org-capture.el org-protocol.el
+
 Ryo Yoshitake: changed xterm.c frame.c frame.h mac.c macfns.c w32fns.c
   xfns.c
 
 Ryszard Kubiak: co-wrote ogonek.el
 
-Rémi Vanicat: changed org-icalendar.el
-
 Sacha Chua: wrote erc-pcomplete.el
-and changed erc.el erc-button.el
+and changed erc.el org.el erc-button.el org.texi
 
 Saito Takuya: changed mule.el progmodes/compile.el
 
 Sam Dooley: changed keyboard.c
 
+Samer Masterson: changed em-hist.el em-pred.el pcomplete.el
+
 Sam Falkner: changed nntp.el
 
 Sam Kendall: changed etags.c etags.el
 
 Sam Steingold: wrote gulp.el midnight.el
 and changed progmodes/compile.el cl-indent.el vc-cvs.el vc.el mouse.el
-  simple.el font-lock.el ange-ftp.el vc-hg.el window.el add-log.el
-  bookmark.el bug-reference.el diary-lib.el dired.el etags.el pcvs.el
-  tex-mode.el apropos.el bindings.el emacs-lisp/debug.el
-  and 126 other files
+  simple.el files.el font-lock.el tex-mode.el vc-hg.el ange-ftp.el
+  sgml-mode.el window.el add-log.el bindings.el bookmark.el
+  bug-reference.el calendar.el cperl-mode.el diary-lib.el dired.el
+  and 149 other files
+
+Samuel Bronson: changed custom.el emacsclient.c keyboard.c
+  progmodes/grep.el unexmacosx.c
 
-Samuel Bronson: changed custom.el
+Samuel Loury: changed org.el
 
 Samuel Tardieu: changed smime.el
 
@@ -3263,20 +3821,22 @@ Samuel Thibault: changed gnu.h sysdep.c term.c
 
 Sanghyuk Suh: changed mac-win.el macterm.c
 
+Santiago Payà i Miralta: changed vc-hg.el
+
 Sascha Lüdecke: co-wrote mml1991.el
 and changed gnus-win.el
 
-Sascha Wilde: changed pgg-gpg.el pgg.texi pgg.el bubbles.el configure.in
+Sascha Wilde: changed pgg-gpg.el pgg.texi pgg.el bubbles.el configure.ac
   ede/srecode.el proj-shared.el vc-hg.el
 
 Satyaki Das: wrote mh-acros.el mh-gnus.el mh-search.el mh-speed.el
   mh-thread.el mh-tool-bar.el
 and co-wrote mh-junk.el
 and changed mh-e.el mh-utils.el mh-seq.el mh-comp.el mh-mime.el
-  mh-customize.el mh-funcs.el mh-alias.el mh-unit.el mh-init.el
+  mh-customize.el mh-funcs.el Makefile mh-alias.el mh-unit.el mh-init.el
   mh-identity.el mh-make.el mh-xemacs-toolbar.el mh-xemacs-compat.el
-  pgg-gpg.el mh-inc.el highlight.xpm mh-func.el mh-logo.xpm mh-print.el
-  mh-xemacs.el simple.el
+  pgg-gpg.el mh-inc.el highlight.xpm mh-logo.xpm mh-print.el mh-xemacs.el
+  simple.el
 
 Schlumberger Technology Corporation: changed gud.el
 
@@ -3295,6 +3855,8 @@ Scott Frazer: wrote deeper-blue-theme.el 
whiteboard-theme.el
 
 Scott M. Meyers: changed cmacexp.el
 
+Sean Connor: changed gnus-sum.el
+
 Sean Neakums: changed gnus-msg.el gnus-uu.el supercite.el
 
 Sean O'Halpin: changed ob.el
@@ -3313,15 +3875,25 @@ and co-wrote dired-x.el find-dired.el
 and changed add-log.el
 
 Sebastian Rose: co-wrote org-protocol.el
-and changed org-publish.el ftfont.c org-jsinfo.el
+and changed ox-publish.el ftfont.c ox-jsinfo.el
 
 Sebastian Tennant: changed desktop.el
 
+Sebastian Wiesner: changed bytecomp.el comint.el files.el replace.el
+  simple.el
+
+Sébastien Delafond: changed org.el
+
+Sébastien Gross: changed hideshow.el
+
 Sebastien Kirche: changed mail-extr.el
 
-Seiji Zenitani: changed nsfns.m frame.c xterm.c Info.plist PkgInfo
-  document.icns find-func.el frame.h help-fns.el macfns.c nsfont.m
-  nsterm.m w32fns.c xdisp.c xfns.c
+Sébastien Vauban: changed org.el org-agenda.el ox-latex.el ob-core.el
+  org-clock.el ox-ascii.el ox-html.el
+
+Seiji Zenitani: changed nsfns.m frame.c xterm.c PkgInfo document.icns
+  find-func.el frame.h help-fns.el macfns.c nsfont.m nsterm.m w32fns.c
+  xdisp.c xfns.c
 
 Sen Nagata: wrote crm.el rfc2368.el
 
@@ -3332,9 +3904,14 @@ Seppo Sade: changed esh-ext.el
 Sergei Organov: changed vc.el
 
 Sergey Litvinov: co-wrote ob-fortran.el
+and changed ob-maxima.el ob-octave.el
 
 Sergey Poznyakoff: changed mh-mime.el rmail.el rmail.texi smtpmail.el
 
+Sergio Durigan Junior: changed eudcb-bbdb.el gdb-mi.el
+
+Sergio Martinez: changed nnimap.el
+
 Sergio Pokrovskij: changed TUTORIAL.eo
 
 Seweryn Kokot: changed positions.texi searching.texi
@@ -3343,27 +3920,27 @@ Shaun Johnson: changed ob-tangle.el org-exp-blocks.el
 
 Shawn Boles: changed url-cookie.el
 
-Shawn M. Carey: wrote freebsd.h
+Shawn M. Carey: wrote [some early FreeBSD support]
 
 Shenghuo Zhu: wrote binhex.el mm-extern.el mm-partial.el mm-url.el
   mm-uu.el mml2015.el nnrss.el rfc1843.el uudecode.el
 and co-wrote gnus-dired.el nnfolder.el
 and changed gnus-art.el message.el gnus-sum.el gnus-msg.el gnus.el
   gnus-agent.el mm-decode.el mm-util.el gnus-group.el mml.el
-  gnus-start.el gnus-util.el mm-view.el nnslashdot.el nnmail.el nntp.el
-  gnus-topic.el gnus-xmas.el rfc2047.el mail-source.el gnus-win.el
-  and 97 other files
+  gnus-start.el gnus-util.el mm-view.el nnmail.el nntp.el gnus-topic.el
+  gnus-xmas.el rfc2047.el mail-source.el gnus-win.el nnheader.el
+  and 87 other files
 
 Shigeru Fukaya: wrote bytecomp-tests.el
-and changed byte-opt.el bytecomp-testsuite.el bytecomp.el elint.el
-  rx-new.el ses.el texinfmt.el
+and changed apropos.el byte-opt.el bytecomp.el elint.el rx-new.el ses.el
+  texinfmt.el
 
 Shinichirou Sugou: changed etags.c
 
-Sho Nakatani: changed doc-view.el
-
 Shoji Nishimura: changed org.el
 
+Sho Nakatani: changed doc-view.el
+
 Shuhei Kobayashi: wrote hex-util.el hmac-def.el hmac-md5.el
 and changed gnus-group.el message.el nnmail.el
 
@@ -3375,19 +3952,23 @@ Sidney Markowitz: changed doctor.el nsmenu.m
 
 Sigbjorn Finne: changed gnus-srvr.el
 
+Simen Heggestøyl: changed css-mode.el scheme.el
+
 Simon Josefsson: wrote dig.el dns-mode.el flow-fill.el fringe.el imap.el
-  mml-sec.el mml-smime.el password-cache.el rfc2104.el sieve-manage.el
-  sieve-mode.el sieve.el smime.el starttls.el tls.el url-imap.el
+  mml-sec.el mml-smime.el password-cache.el rfc2104.el sieve-mode.el
+  sieve.el smime.el starttls.el tls.el url-imap.el
 and co-wrote gnus-sieve.el gssapi.el mml1991.el nnfolder.el nnimap.el
-  nnml.el
+  nnml.el sieve-manage.el
 and changed message.el gnus-sum.el gnus-art.el smtpmail.el pgg-gpg.el
   pgg.el gnus-agent.el mml2015.el mml.el gnus-group.el mm-decode.el
   gnus-msg.el gnus.texi pgg-pgp5.el browse-url.el gnus-int.el gnus.el
-  hashcash.el mm-view.el password.el gnus-cache.el and 99 other files
+  hashcash.el mm-view.el password.el gnus-cache.el and 98 other files
+
+Simon Law: changed delsel.el electric.el
 
 Simon Leinen: changed Makefile.in smtpmail.el Makefile cm.c cm.h hpux9.h
-  indent.c process.c sc.texinfo sgml-mode.el term.c vc.el xfns.c xmenu.c
-  xterm.c
+  indent.c leim/Makefile.in process.c sc.texi sgml-mode.el term.c vc.el
+  xfns.c xmenu.c xterm.c
 
 Simon Marshall: wrote fast-lock.el lazy-lock.el regexp-opt.el
 and co-wrote comint.el shell.el
@@ -3396,7 +3977,11 @@ and changed font-lock.el rmail.el fortran.el sendmail.el 
subr.el dired.el
   menu-bar.el perl-mode.el ps-print.el rmailsum.el bytecomp.el
   cc-fonts.el data.c faces.el lisp-mode.el and 56 other files
 
-Simon South: co-wrote delphi.el
+Simon Schubert: changed json.el
+
+Simon South: co-wrote opascal.el
+
+Simon Thum: changed ob-maxima.el
 
 Skip Collins: changed w32fns.c w32term.c w32term.h
 
@@ -3416,15 +4001,20 @@ Stefan Guath: changed find-dired.el
 
 Stefan Merten: co-wrote rst.el
 
-Stefan Monnier: wrote bibtex-style.el bzrmerge.el css-mode.el
-  cvs-status.el diff-mode.el lexbind-tests.el log-edit.el log-view.el
-  minibuffer.el mpc.el pcase.el pcvs-defs.el pcvs-info.el pcvs-parse.el
-  pcvs-util.el reveal.el smerge-mode.el smie.el vc-mtn.el
-and co-wrote font-lock.el
-and changed vc.el subr.el simple.el lisp.h keyboard.c files.el
-  bytecomp.el keymap.c Makefile.in progmodes/compile.el xdisp.c pcvs.el
-  alloc.c newcomment.el vc-hooks.el tex-mode.el buffer.c fileio.c eval.c
-  sh-script.el fill.el and 1033 other files
+Stefan Monnier: wrote bibtex-style.el bzrmerge.el cl-generic-tests.el
+  cl-generic.el cl-preloaded.el cl.el completion-tests.el
+  core-elisp-tests.el css-mode.el cvs-status.el diff-mode.el gv.el
+  inline.el lexbind-tests.el log-edit.el log-view.el minibuffer.el mpc.el
+  nadvice.el pcase.el pcvs-defs.el pcvs-info.el pcvs-parse.el
+  pcvs-util.el regexp-tests.el reveal.el smerge-mode.el smie.el
+  subword-tests.el vc-mtn.el
+and co-wrote font-lock.el gitmerge.el
+and changed subr.el simple.el keyboard.c lisp.h bytecomp.el files.el
+  vc.el cl-macs.el xdisp.c alloc.c eval.c progmodes/compile.el keymap.c
+  sh-script.el pcvs.el newcomment.el buffer.c tex-mode.el window.c
+  vc-hooks.el lread.c and 1245 other files
+
+Stefano Facchini: changed gtkutil.c
 
 Stefan Reichör: changed gnus-agent.el
 
@@ -3434,9 +4024,9 @@ Stefan Schoef: co-wrote bibtex.el
 
 Stefan Waldherr: changed nnweb.el
 
-Stefan Wiens: changed gnus-sum.el
+Stefan-W. Hahn: changed org-bibtex.el ps-print.el simple.el
 
-Steinar Bang: changed imap.el
+Stefan Wiens: changed gnus-sum.el
 
 Štěpán Němec: changed INSTALL calc-ext.el cl.texi comint.el edebug.texi
   font-lock.el loading.texi maps.texi mark.texi message.texi mini.texi
@@ -3448,20 +4038,21 @@ Stephan Stahl: changed which-func.el buff-menu.el 
buffer.c dired-x.texi
 
 Stephen A. Wood: changed fortran.el
 
-Stephen Berman: changed diary-lib.el todo-mode.el allout.el dframe.el
-  dired-aux.el dired.el files.el find-dired.el frame.c gnus-group.el
-  gtkutil.c info.el minibuffer.el newcomment.el page.el proced.el
-  recentf.el rfc822.el subr.el
+Stephen Berman: co-wrote todo-mode.el
+and changed todo-mode.texi diary-lib.el minibuffer.el info.el
+  otodo-mode.el allout.el dframe.el dired-aux.el dired.el doc-view.el
+  elpa files.el find-dired.el frame.c gamegrid.el gnus-group.el gomoku.el
+  gtkutil.c misc/Makefile.in newcomment.el outline.el and 8 other files
 
-Stephen C. Gilardi: changed configure.in
+Stephen C. Gilardi: changed configure.ac
 
 Stephen Compall: changed saveplace.el texinfo.el
 
 Stephen Eglen: wrote iswitchb.el mspools.el
-and changed diary-lib.el locate.el octave-inf.el org-agenda.el replace.el
+and changed diary-lib.el octave.el org-agenda.el locate.el replace.el
   hexl.el info-look.el sendmail.el spell.el uce.el MORE.STUFF add-log.el
   advice.el allout.el autoinsert.el avoid.el backquote.el battery.el
-  bib-mode.el bruce.el c-mode.el and 78 other files
+  bib-mode.el bruce.el c-mode.el and 80 other files
 
 Stephen Gildea: wrote refcard.tex
 and co-wrote mh-funcs.el mh-search.el
@@ -3471,8 +4062,9 @@ and changed time-stamp.el mh-e.el mh-comp.el mh-utils.el 
mh-customize.el
 
 Stephen J. Turnbull: changed ediff-init.el strings.texi subr.el
 
-Stephen Leake: changed ada-mode.el ada-xref.el ada-mode.texi ada-prj.el
-  ada-stmt.el align.el pcvs-parse.el vhdl-mode.el
+Stephen Leake: changed ada-mode.el ada-xref.el CONTRIBUTE ada-mode.texi
+  ada-prj.el ada-stmt.el INSTALL.REPO align.el commits pcvs-parse.el repo
+  startup.el trouble.texi vhdl-mode.el
 
 Stephen Peters: changed icalendar.el
 
@@ -3482,33 +4074,33 @@ Steve Fisk: co-wrote cal-tex.el
 
 Steve Grubb: changed vcdiff
 
-Steve Nygard: changed unexnext.c
-
-Steve Purcell: changed nnimap.el
-
-Steve Strassmann: wrote spook.el
-
-Steve Youngs: changed mh-utils.el mh-xemacs-compat.el mh-customize.el
-  mh-e.el mh-comp.el mh-mime.el dns.el gnus-art.el browse-url.el
-  gnus-sum.el gnus-xmas.el mh-search.el mh-seq.el password.el
-  run-at-time.el em-unix.el gmm-utils.el gnus-cite.el gnus-demon.el
-  gnus-ems.el gnus-msg.el and 16 other files
-
 Steven E. Harris: changed nnheader.el
 
 Steven Huwig: changed emacs.py progmodes/python.el
 
-Steven L. Baur: wrote footnote.el gnus-setup.el
+Steven L. Baur: wrote footnote.el
 and changed gnus-xmas.el gnus-msg.el add-log.el edebug.el gnus-ems.el
   gnus-start.el gnus-topic.el message.el nnbabyl.el nntp.el webjump.el
 
 Steven Suhr: changed dispnew.c scroll.c term.c termchar.h
 
-Steven Tamm: changed macterm.c mac.c macfns.c configure.in mac-win.el
-  unexmacosx.c Makefile.in darwin.h editfns.c lread.c macmenu.c
-  scroll-bar.el config.h config.in dispnew.c eval.c fileio.c fns.c
+Steven Tamm: changed macterm.c mac.c macfns.c configure.ac mac-win.el
+  unexmacosx.c darwin.h editfns.c lread.c macmenu.c scroll-bar.el
+  src/Makefile.in Makefile.in config.h dispnew.c eval.c fileio.c fns.c
   generic-x.el image.c process.c and 3 other files
 
+Steve Nygard: changed unexnext.c
+
+Steve Purcell: changed nnimap.el nsterm.m package.el
+
+Steve Strassmann: wrote spook.el
+
+Steve Youngs: changed mh-utils.el mh-xemacs-compat.el mh-customize.el
+  mh-e.el mh-comp.el mh-mime.el Makefile dns.el gnus-art.el browse-url.el
+  gnus-sum.el gnus-xmas.el mh-search.el mh-seq.el password.el
+  run-at-time.el em-unix.el gmm-utils.el gnus-cite.el gnus-demon.el
+  gnus-ems.el and 17 other files
+
 Stewart M. Clamen: co-wrote cal-mayan.el cc-align.el cc-cmds.el
   cc-defs.el cc-engine.el cc-langs.el cc-menus.el cc-mode.el cc-styles.el
   cc-vars.el
@@ -3519,48 +4111,50 @@ Stuart D. Herring: changed desktop.el files.el 
isearch.el align.el
   allout.el comint.el edebug.el find-lisp.el keymap.c minibuf.c sregex.el
   timeclock.el widget.texi
 
+Stuart Hickinbottom: changed org-clock.el
+
 Sudish Joseph: changed mac-win.el
 
+Suhail Shergill: changed ob-core.el ox-html.el
+
+Sundar Narasimhan: changed rnews.el
+
 Sun Microsystems, Inc: wrote emacs.icon sun.el
 and changed emacsclient.c server.el
 
 Sun Yijiang: changed TUTORIAL.cn
 
-Sundar Narasimhan: changed rnews.el
+Suvayu Ali: changed org.texi org-inlinetask.el org-src.el org.el ox.el
 
-Suvayu Ali: changed org.texi org-exp.el org-inlinetask.el org-src.el
+Svend Tollak Munkejord: changed deuglify.el
 
 Sven Joachim: changed files.el de-refcard.tex dired-aux.el emacs.1
   arc-mode.el dired-x.el em-cmpl.el em-hist.el em-ls.el esh-cmd.el
   esh-ext.el esh-io.el files.texi gnus-news.texi gnus-sum.el gnus.texi
   help.el make-dist message.el movemail.c mule.texi and 8 other files
 
-Svend Tollak Munkejord: changed deuglify.el
+Sylvain Chouleur: changed gnus-icalendar.el icalendar.el
 
 Syver Enstad: changed gud.el
 
-Sébastien Delafond: changed org.el
-
-Sébastien Vauban: changed org.el org-agenda.el org-html.el org-latex.el
-
-T.V. Raman: changed completion.el files.el json.el mairix.el mspools.el
-  xml.c
-
 Taichi Kawabata: wrote quail/indian.el ucs-normalize.el
-and changed devanagari.el ind-util.el Makefile.in devan-util.el
-  language/indian.el characters.el fontset.el malayalam.el mlm-util.el
-  mule-conf.el tamil.el tml-util.el
+and changed indian.el devanagari.el ind-util.el devan-util.el
+  language/indian.el characters.el fontset.el leim/Makefile.in
+  lisp/Makefile.in malayalam.el mlm-util.el mule-conf.el tamil.el
+  tml-util.el
 
 Takaaki Ota: wrote textmodes/table.el
 and changed appt.el dired.c etags.c ldap.el makefile.w32-in
   progmodes/compile.el recentf.el replace.el subr.el w32bdf.c
 
+Takafumi Arakaki: changed url-expand.el url-http.el which-func.el
+
 Takahashi Kaoru: changed texinfmt.el
 
 Takahashi Naoto: wrote ethio-util.el language/ethiopic.el latin-post.el
   quail/cyrillic.el quail/ethiopic.el robin.el
 and co-wrote latin-ltx.el quail.el
-and changed fontset.el mule-conf.el
+and changed ethiopic.el fontset.el mule-conf.el
 
 Takai Kousuke: changed ccl.el compface.el
 
@@ -3571,27 +4165,31 @@ and changed arc-mode.el
 
 Tassilo Horn: wrote doc-view.el
 and co-wrote org-gnus.el
-and changed subword.el image-mode.el Makefile.in cc-cmds.el emacsbug.el
-  gnus-art.el gnus.texi nnimap.el files.el gnus-sum.el info.el
-  org-footnote.el org.el reftex-ref.el saveplace.el simple.el
-  tsdh-dark-theme.el tsdh-light-theme.el ack.texi artist.el bindings.el
-  and 26 other files
+and changed reftex-vars.el gnus.texi gnus-sum.el tsdh-dark-theme.el
+  misc.texi reftex.el subword.el tsdh-light-theme.el image-mode.el
+  cc-cmds.el display.texi em-term.el emacsbug.el files.el gnus-art.el
+  nnimap.el reftex-cite.el reftex-ref.el buffers.texi control.texi
+  help.texi and 63 other files
 
 Tatsuya Ichikawa: changed gnus-agent.el gnus-cache.el
 
 Ted Lemon: changed emacs.c lastfile.c puresize.h
 
-Ted Phelps: changed mh-search.el mh-tool-bar.el
+Ted Phelps: changed mh-search.el mh-e.el mh-folder.el mh-junk.el
+  mh-scan.el mh-tool-bar.el shr.el
 
-Teemu Likonen: changed dired.el gnus-agent.el message.el
+Ted Wiles: changed org-habit.el
+
+Teemu Likonen: changed dired.el erc-backend.el gnus-agent.el indent.el
+  message.el
 
 Teodor Zlatanov: wrote auth-source.el gnus-registry.el gnus-sync.el
   gnus-tests.el gnutls.el registry.el spam-report.el url-future-tests.el
-  url-future.el
-and changed spam.el gnus.el nnimap.el gnus.texi gnus-sum.el gnus-util.el
-  auth.texi netrc.el gnus-start.el gnutls.c message.el spam-stat.el
-  encrypt.el nnir.el nnmail.el imap.el mail-source.el nnmairix.el nntp.el
-  Makefile.in gnus-encrypt.el and 97 other files
+  url-future.el url-util-tests.el
+and changed spam.el gnus.el nnimap.el gnus.texi gnus-sum.el gnutls.c
+  auth.texi cfengine.el gnus-util.el gnus-start.el netrc.el message.el
+  spam-stat.el encrypt.el gnutls.h nnir.el nnmail.el imap.el
+  mail-source.el nnmairix.el nntp.el and 110 other files
 
 Terje Rosten: changed xfns.c version.el xterm.c xterm.h
 
@@ -3601,42 +4199,54 @@ Terry Jones: wrote shadow.el
 
 Tetsuo Tsukamoto: changed nnrss.el
 
-Tetsurou Okazaki: changed Makefile.in byte-opt.el log-edit.el lread.c
-  xterm.c
+Tetsurou Okazaki: changed Makefile.in byte-opt.el lib-src/Makefile.in
+  log-edit.el lread.c xterm.c
+
+T.F. Torrey: changed org-rmail.el ox.el
 
 Thamer Mahmoud: changed arabic.el
 
 Theodore Jump: changed makefile.nt makefile.def w32-win.el w32faces.c
 
 Thien-Thi Nguyen: co-wrote hideshow.el
-and changed ewoc.el vc.el info.el zone.el Makefile.in processes.texi
-  lisp-mode.el text.texi vc-rcs.el display.texi fileio.c files.el
-  scheme.el vc-git.el MORE.STUFF TUTORIAL.it bindat.el cc-vars.el
-  configure.in dcl-mode.el diff-mode.el and 158 other files
+and changed ewoc.el vc.el info.el zone.el processes.texi lisp-mode.el
+  scheme.el text.texi vc-rcs.el display.texi fileio.c files.el vc-git.el
+  MORE.STUFF TUTORIAL.it bindat.el cc-vars.el configure.ac dcl-mode.el
+  diff-mode.el dired.el and 159 other files
+
+Thierry Banel: changed calc-arith.el
 
 Thierry Emery: changed kinsoku.el timezone.el url-http.el wid-edit.el
 
 Thierry Volpiatto: changed bookmark.el files.el dired-aux.el
-  eshell/eshell.el gnus-sum.el files.texi image-mode.el info.el man.el
-  woman.el dired.el doc-view.el find-func.el gnus-art.el gnus-msg.el
-  image-dired.el tramp.el vc-rcs.el
+  eshell/eshell.el gnus-sum.el net-utils.el package.el tramp.el eldoc.el
+  files.texi image-mode.el info.el man.el woman.el avoid.el dired.el
+  doc-view.el find-func.el font-lock.el gnus-art.el gnus-msg.el
+  and 6 other files
+
+Thomas Bach: changed wisent/python.el
 
 Thomas Baumann: wrote org-mhe.el
 and co-wrote org-bbdb.el
 
 Thomas Bellman: co-wrote avl-tree.el
 
-Thomas Deweese: changed x-win.el
+Thomas DeWeese: changed x-win.el
 
 Thomas Dorner: changed ange-ftp.el
 
 Thomas Dye: changed org.texi org-bibtex.el ob-R.el org.el
 
+Thomas Fitzsimmons: changed ldap.el eudc-vars.el eudc.el eudcb-ldap.el
+  eudc.texi ntlm.el
+
 Thomas Horsley: changed cxux-crt0.s cxux.h cxux7.h emacs.c nh3000.h
   nh4000.h simple.el sysdep.c xterm.c
 
 Thomas Hühn: changed tutorial.el
 
+Thomas Kappler: changed nsfont.m
+
 Thomas Link: wrote filesets.el
 
 Thomas Morgan: changed org-habit.el forms.el select.el
@@ -3663,20 +4273,28 @@ Tibor Šimko: co-wrote language/slovak.el quail/slovak.el
 
 Tijs van Bakel: changed erc.el
 
+Tim Burt: changed org-datetree.el
+
 Tim Cross: changed keymaps.texi
 
 Tim Harper: changed ns-win.el
 
-Tim Landscheidt: changed gnus.texi icalendar.el sort.el ws-mode.el
+Tim Howe: changed org-clock.el
 
-Tim Van Holder: changed emacsclient.c Makefile.in configure.in
-  progmodes/compile.el which-func.el
+Tim Landscheidt: changed gnus.texi icalendar.el sort.el ws-mode.el
 
 Timo Juhani Lindfors: changed gnus-msg.el
 
+Timo Lilja: changed mail-source.el
+
+Timo Myyrä: changed battery.el
+
 Timo Savola: changed emacs.c gtkutil.c startup.el x-win.el xfns.c xterm.c
   xterm.h
 
+Tim Van Holder: changed emacsclient.c Makefile.in configure.ac
+  progmodes/compile.el which-func.el
+
 Tobias C. Rittweiler: changed font-lock.el searching.texi sendmail.el
 
 Tobias Ringström: changed etags.c
@@ -3684,32 +4302,24 @@ Tobias Ringström: changed etags.c
 Toby Allsopp: changed ldap.el eudc.el
 
 Toby Cubitt: co-wrote avl-tree.el
-
-Toby S. Cubitt: changed org.el
+and changed org-capture.el org.el org-agenda.el org-clock.el
+  org-colview.el org.texi
 
 Toby Speight: changed generic-x.el window.el
 
-Tokuya Kameshima: wrote org-mew.el
-and co-wrote org-wl.el
-
-Tom Breton: changed autoinsert.el cus-edit.el gnus-agent.el lread.c
+Toke Høiland-Jørgensen: changed gnutls.c nnmaildir.el smime.el
 
-Tom Hageman: changed etags.c
+Tokuya Kameshima: changed org-mew.el org-agenda.el
 
-Tom Houlder: wrote mantemp.el
+Tomas Abrahamsson: wrote artist.el
 
-Tom Perrine: co-wrote modula2.el (public domain)
+Tomasz Gajewski: changed cpp-root.el
 
-Tom Rauchenwald: changed spam.el
+Tom Breton: changed autoinsert.el cus-edit.el gnus-agent.el lread.c
 
-Tom Tromey: wrote bug-reference.el erc-list.el package-x.el package.el
-and co-wrote tcl.el
-and changed buffer.c lisp.h makefile.el window.c xfns.c callint.c cmds.c
-  configure.in frame.c keyboard.c keymap.c xdisp.c buffer.h bytecode.c
-  callproc.c category.c character.c character.h charset.c coding.c
-  composite.c and 133 other files
+Tom Hageman: changed etags.c
 
-Tomas Abrahamsson: wrote artist.el
+Tom Houlder: wrote mantemp.el
 
 Tommi Vainikainen: changed gnus-sum.el message.el mml-sec.el
 
@@ -3720,33 +4330,55 @@ and changed rmail.el nnmail.el rmailout.el gnus-sum.el 
nnfolder.el
   gnus-ems.el gnus-mule.el message.el nnspool.el nntp.el rmailkwd.el
   smiley.el
 
+Tomohiro Matsuyama: wrote profiler.el
+and changed profiler.c alloc.c emacs.c eval.c lisp.h src/Makefile.in
+  src/makefile.w32-in xdisp.c
+
 Tomoji Kagatani: wrote smtpmail.el
 
+Tom Perrine: co-wrote modula2.el (public domain)
+
+Tom Rauchenwald: changed spam.el
+
+Tom Regner: changed notifications.el
+
+Tom Seddon: changed w32font.c
+
+Tom Tromey: wrote bug-reference.el erc-list.el package-x.el
+and co-wrote package.el tcl.el
+and changed buffer.c lisp.h makefile.el window.c keyboard.c keymap.c
+  xfns.c buffer.h bytecode.c callint.c callproc.c cmds.c composite.c
+  configure.ac dispextern.h doc.c editfns.c fileio.c frame.c insdel.c
+  intervals.h and 137 other files
+
+Tom Willemse: changed package.el prog-mode.el progmodes/python.el
+  simple.el
+
 Torbjörn Axelsson: changed options.el
 
 Torbjörn Einarsson: wrote progmodes/f90.el
 and changed f90.el
 
-Torsten Anders: changed org-beamer.el
+Torsten Anders: changed ox-beamer.el
 
 Torsten Bronger: changed latin-ltx.el
 
 Toru Tomabechi: wrote language/tibetan.el quail/tibetan.el tibet-util.el
 
 Toru Tsuneyoshi: changed ange-ftp.el buff-menu.el cus-start.el fileio.c
-  files.el lisp.h tramp.el w32fns.c
+  files.el fill.el lisp.h tramp.el w32fns.c
 
 Toshiaki Nomura: changed uxpds.h
 
-Travis Jeffery: changed Info.plist
-
 Trent W. Buck: changed rcirc.el remember.el rx.el
 
+Trevor Murphy: changed gnus.texi nnimap.el org.el
+
 Trey Jackson: changed spam-stat.el
 
 Triet Hoai Lai: changed vntelex.el viet-util.el vietnamese.el
 
-Troels Nielsen: changed process.c
+Troels Nielsen: changed process.c buffer.c progmodes/compile.el window.el
 
 Trung Tran-Duc: changed nntp.el
 
@@ -3755,65 +4387,72 @@ Tsuchiya Masatoshi: changed gnus-art.el mm-view.el 
gnus-sum.el
   gnus-cache.el gnus-msg.el gnus.el nndiary.el nnfolder.el nnimap.el
   nnmaildir.el pgg.el rfc2047.el
 
-Tsugutomo Enami: changed frame.c keyboard.c configure.in dispnew.c
+Tsugutomo Enami: changed frame.c keyboard.c configure.ac dispnew.c
   fileio.c process.c simple.el sysdep.c xdisp.c add-log.el bytecomp.el
-  editfns.c emacs.c frame.h gnus-group.el netbsd.h nnheader.el
-  perl-mode.el regex.c regex.h rmailsum.el and 4 other files
+  editfns.c emacs.c frame.h gnus-group.el netbsd.h nnheader.el nnimap.el
+  perl-mode.el regex.c regex.h and 6 other files
 
 Tsuyoshi Akiho: changed gnus-sum.el nnrss.el
 
 Tudor Hulubei: changed iso-acc.el latin-pre.el
 
+T.V. Raman: changed completion.el files.el json.el mairix.el mspools.el
+  xml.c
+
 Uday S Reddy: changed etags.el fill.el
 
 Ulf Jasper: wrote bubbles.el icalendar-tests.el icalendar.el
-  newst-backend.el newst-plainview.el newst-reader.el newst-ticker.el
-  newst-treeview.el newsticker-tests.el newsticker.el
-and changed icalendar-testsuite.el calendar.texi newsticker-plainview.el
-  newsticker-treeview.el newsticker.texi newsticker-backend.el
-  newsticker-reader.el newsticker-ticker.el Makefile.in README
+  libxml-tests.el newst-backend.el newst-plainview.el newst-reader.el
+  newst-ticker.el newst-treeview.el newsticker-tests.el newsticker.el
+and changed newsticker.texi calendar.texi image.c newsticker-plainview.el
+  newsticker-treeview.el README newsticker-backend.el
+  newsticker-reader.el newsticker-ticker.el xml.c Makefile.in
   browse-url.xpm get-all.xpm mark-immortal.xpm mark-read.xpm narrow.xpm
-  newsticker newsticker-testsuite.el next-feed.xpm next-item.xpm
-  prev-feed.xpm prev-item.xpm and 3 other files
+  newsticker next-feed.xpm next-item.xpm prev-feed.xpm prev-item.xpm
+  and 8 other files
 
 Ulf Stegemann: co-wrote org-entities.el
 and changed org-gnus.el smime.el
 
 Ulrich Leodolter: changed w32proc.c
 
-Ulrich Mueller: changed configure.in Makefile.in doctor.el files.el
-  gud.el server.el ChgPane.c ChgSel.c HELLO INSTALL XMakeAssoc.c
-  authors.el bytecomp.el calc-units.el case-table.el configure em-ls.el
-  emacs.1 emacs.c emacs.desktop emacsclient.c and 26 other files
+Ulrich Müller: changed configure.ac lib-src/Makefile.in src/Makefile.in
+  version.el doctor.el emacs.1 files.el gamegrid.el gud.el server.el
+  ChgPane.c ChgSel.c HELLO INSTALL Makefile.in XMakeAssoc.c authors.el
+  bytecomp.el calc-units.el case-table.el configure and 39 other files
 
 Ulrich Neumerkel: changed xterm.c
 
 Ulrik Vieth: wrote meta-mode.el
 and changed files.el
 
+Uwe Brauer: changed mml-smime.el
+
 Vadim Nasardinov: changed allout.el
 
 Vagn Johansen: changed gnus-cache.el vc-svn.el
 
 Valentin Wüstholz: changed org.el
 
-Valery Alexeev: changed cyril-util.el quail/cyrillic.el
+Valery Alexeev: changed cyril-util.el cyrillic.el
 
-Vasily Korytov: changed message.el quail/cyrillic.el cperl-mode.el
-  gnus-art.el gnus-dired.el gnus-msg.el gnus-util.el mail-source.el
-  smiley.el
+Vasily Korytov: changed cyrillic.el message.el cperl-mode.el gnus-art.el
+  gnus-dired.el gnus-msg.el gnus-util.el mail-source.el smiley.el
 
-Victor Zandy: wrote zone.el
+Vegard Øye: changed viper-init.el
 
-Vida Gábor: changed gnus-demon.el
+Victor Zandy: wrote zone.el
 
-Viktor Rosenfeld: changed ob-sql.el
+Viktor Rosenfeld: changed ob-sql.el org.el
 
 Ville Skyttä: changed mh-comp.el pgg.el tcl.el
 
 Vincent Belaïche: changed ses.el 5x5.el calc-alg.el calc-vec.el calc.texi
-  calc-embed.el calc-help.el calc-misc.el calc.el floatfns.c org.el
-  recentf.el
+  ses.texi calc-embed.el calc-help.el calc-misc.el calc.el configure.bat
+  floatfns.c macroexp.el org.el package.el recentf.el reftex-parse.el
+  reftex-toc.el reftex.el
+
+Vincent Bernat: changed gnus-int.el nnimap.el
 
 Vincent Del Vecchio: changed info.el mh-utils.el
 
@@ -3824,64 +4463,76 @@ and co-wrote ps-def.el ps-mule.el ps-print.el ps-samp.el
 and changed ps-prin1.ps ps-bdf.el ps-prin0.ps blank-mode.el ps-prin3.ps
   ps-prin2.ps lpr.el subr.el diff-mode.el TUTORIAL.pt_BR compilation.txt
   easymenu.el loading.texi menu-bar.el misc.texi progmodes/compile.el
-  ps-print-def.el ps-print.ps ps-vars.el
+  ps-print-def.el ps-vars.el
 
-Vitalie Spinu: changed ob-R.el
+Vitalie Spinu: changed comint.el message.el ob-R.el ob-core.el
+  ob-tangle.el subr.el
 
 Vivek Dasmohapatra: wrote hfy-cmap.el htmlfontify.el
-and changed erc.el erc-backend.el emacs.c erc-join.el erc-services.el
-  sh-script.el xterm.c xterm.h
+and changed erc.el erc-backend.el erc-services.el hexl.el emacs.c
+  erc-join.el htmlfontify.texi sh-script.el xterm.c xterm.h
 
 Vladimir Alexiev: changed arc-mode.el nnvirtual.el tmm.el
 
+Vladimir Kazanov: changed java.srt
+
+Vladimir Lomov: changed ox-html.el
+
 Vladimir Volovich: changed smime.el
 
 Volker Sobek: changed programs.texi
 
-W. Martin Borgert: changed files.el schemas.xml
-
 Walter C. Pelissero: changed browse-url.el url-methods.el
 
 Wang Diancheng: changed gdb-mi.el nnml.el
 
+Wei-Wei Guo: co-wrote rst.el
+
 Werner Benger: changed keyboard.c
 
 Werner Lemberg: wrote sisheng.el vntelex.el
-and changed Makefile.in TUTORIAL.de calc.texi chinese.el emacs.1
-  european.el idlwave.el language/czech.el language/slovak.el
+and co-wrote vnvni.el
+and changed TUTORIAL.de calc.texi chinese.el emacs.1 european.el
+  idlwave.el language/czech.el language/slovak.el lispref/Makefile.in
   reftex-vars.el reftex.el reftex.texi supercite.el advice.el
   calc-forms.el calc-sel.el calendar.el china-util.el cl-macs.el cl.texi
-  complete.el and 50 other files
+  complete.el and 53 other files
 
 Werner Meisner: changed lwlib-Xm.c
 
 Wes Hardaker: changed gnus-score.el gnus-art.el gnus-sum.el gnus-win.el
   spam.el
 
+Wesley Dawson: changed icomplete.el
+
 Wilfred Hughes: changed vc-git.el
 
 Will Glozer: changed macterm.c
 
-Will Mengarini: wrote repeat.el
-
 William F. Schelter: wrote telnet.el
 
 William M. Perry: wrote url-dav.el url-gw.el url-http.el url-util.el
   url.el vc-dav.el
 and co-wrote mailcap.el socks.el
 and changed url-handlers.el url-file.el url-methods.el url-vars.el
-  url-https.el aclocal.m4 mule-sysdp.el url-imap.el url-news.el
-  url-nfs.el image.el mwheel.el url-about.el url-auth.el url-cid.el
-  url-dired.el url-expand.el url-ftp.el url-history.el url-irc.el
-  url-misc.el and 5 other files
+  url-https.el url-imap.el url-news.el url-nfs.el image.el mwheel.el
+  url-about.el url-auth.el url-cid.el url-dired.el url-expand.el
+  url-ftp.el url-history.el url-irc.el url-misc.el url-parse.el
+  url-privacy.el and 3 other files
+
+William Parsons: changed ange-ftp.el
 
 William Smith: changed strftime.c
 
 William Sommerfeld: wrote emacsclient.c scribe.el server.el
 
 William Stevenson: wrote adwaita-theme.el
+and changed artist.el
 
-William Xu: changed nsterm.m outline.el webjump.el
+William Xu: changed arc-mode.el gcc.el hideif.el nsterm.m outline.el
+  url.el webjump.el
+
+Will Mengarini: wrote repeat.el
 
 Wilson H. Tien: changed unexelf.c
 
@@ -3891,20 +4542,25 @@ and changed files.el
 Wim Nieuwenhuizen: changed TUTORIAL.nl
 
 Wlodzimierz Bzyl: co-wrote ogonek.el
-and changed latin-pre.el pl-refcard.ps pl-refcard.tex refcard-pl.ps
-  refcard-pl.tex survival.tex
+and changed latin-pre.el pl-refcard.tex survival.tex
+
+W. Martin Borgert: changed files.el schemas.xml
 
 Wolfgang Glas: changed unexsgi.c
 
-Wolfgang Jenkner: changed conf-mode.el gnus-agent.el gnus-sum.el lread.c
-  network-stream.el pcvs.el pop3.el
+Wolfgang Jenkner: wrote man-tests.el
+and changed gnus-agent.el image-mode.el man.el network-stream.el
+  ansi-color.el gnus-spec.el gnus-sum.el gnus-util.el
+  automated/Makefile.in calc-tests.el calc-units.el conf-mode.el
+  functions.texi gnus-group.el gnus-picon.el gnus-salt.el gnus-start.el
+  gnus.texi intro.texi lread.c nntp.el and 7 other files
 
 Wolfgang Lux: changed nsterm.m keyboard.c
 
 Wolfgang Rupprecht: wrote float-sup.el floatfns.c sup-mouse.el
-and changed config.in process.c alloc.c callint.c configure.in data.c
-  ecrt0.c fns.c lisp-mode.el lisp.h loadup.el lread.c net-utils.el
-  nntp.el print.c sort.el
+and changed process.c alloc.c callint.c configure.ac data.c fns.c
+  lisp-mode.el lisp.h loadup.el lread.c net-utils.el nntp.el print.c
+  sort.el
 
 Wolfgang Scherer: changed vc-cvs.el
 
@@ -3914,66 +4570,91 @@ Wolfram Fenske: changed nnimap.el
 
 Wolfram Gloger: changed emacs.c
 
+W. Trevor King: changed xterm.el
+
 Xavier Maillard: changed gnus-faq.texi gnus-score.el mh-utils.el spam.el
 
+Xue Fuqiao: changed display.texi maintaining.texi files.texi
+  nonascii.texi text.texi windows.texi os.texi vc-cvs.el vc-dir.el
+  emacs.texi ido.texi vc-git.el vc-hg.el vc-hooks.el vc-svn.el vc.el
+  vc/vc-bzr.el INSTALL cl.texi emacs-lisp-intro.texi frames.texi
+  and 91 other files
+
 Yagi Tatsuya: changed gnus-art.el gnus-start.el
 
-Yair F: changed quail/hebrew.el
+Yair F: changed hebrew.el
 
-Yamamoto Mitsuharu: changed macterm.c macfns.c mac-win.el mac.c macterm.h
-  macmenu.c macgui.h image.c xdisp.c macselect.c keyboard.c xterm.c
-  Makefile.in emacs.c darwin.h dispnew.c unexmacosx.c w32term.c alloc.c
-  dispextern.h configure.in and 88 other files
+Yamamoto Mitsuharu: wrote uvs.el
+and changed macterm.c macfns.c mac-win.el mac.c macterm.h macmenu.c
+  macgui.h image.c xdisp.c xterm.c macselect.c keyboard.c w32term.c
+  src/Makefile.in unexmacosx.c emacs.c darwin.h dispnew.c configure.ac
+  dispextern.h alloc.c and 89 other files
 
 Yann Dirson: changed imenu.el
 
-Yann Hodique: changed rcirc.el
+Yann Hodique: changed ox-publish.el package.el rcirc.el
+
+Yasushi Shoji: changed org-clock.el org.texi ox-ascii.el
+
+Yavor Doganov: changed configure.ac Makefile.in emacs.1 etags.1 make-dist
+  nsfont.m
 
-Yavor Doganov: changed configure.in Info-gnustep.plist Makefile.in
-  emacs.1 etags.1 make-dist nsfont.m
+Ye Qianchuan: changed descr-text.el
 
 Yoichi Nakayama: changed browse-url.el finder.el man.el rfc2368.el
 
 Yong Lu: changed charset.c coding.c language/greek.el
 
 Yoni Rabkin: changed faces.el net-utils.el artist.el bs.el cmacexp.el
-  ediff.el files.el hilit19.el ps-mode.el simula.el vera-mode.el
+  ediff.el eww.el files.el hilit19.el ps-mode.el simula.el vera-mode.el
   verilog-mode.el vhdl-mode.el viper.el whitespace.el
 
 Yoshiaki Kasahara: changed buffer.c term.c
 
 Yoshiki Hayashi: changed texinfmt.el nnheader.el
 
+Yoshinari Nomura: changed ox-html.el ox.el
+
 Yoshinori Koseki: wrote iimage.el
 and changed fontset.el message.el nnheader.el nnmail.el
 
-Yu-Ji Hosokawa: changed README.W32
-
 Yuanle Song: changed rng-xsd.el
 
+Yu-ji Hosokawa: changed README.W32
+
 Yukihiro Matsumoto: co-wrote ruby-mode.el
 
 Yuri Karaban: changed pop3.el
 
 Yuri Shtil: changed etags.c
 
-Yutaka Niibe: changed indent.c xdisp.c configure.in Makefile.in dispnew.c
-  sysdep.c config.in dired.el emacs.c fill.el fns.c gmalloc.c gnu-linux.h
-  indent.h process.c simple.el term.c window.c
+Yuriy Vostrikov: changed vc-git.el
+
+Yutaka Niibe: changed indent.c xdisp.c configure.ac dispnew.c sysdep.c
+  Makefile.in dired.el emacs.c fill.el fns.c gmalloc.c gnu-linux.h
+  indent.h process.c simple.el src/Makefile.in term.c window.c
 
-Zachary Kanfer: changed cus-edit.el keyboard.c
+Yuya Nishihara: changed vc-hooks.el
+
+Yves Baumes: changed package.el
+
+Zachary Kanfer: changed org.el cus-edit.el keyboard.c
 
 Zhang Wei: changed chinese.el characters.el mule-cmds.el xfns.c erc.el
-  faces.el fontset.el makefile.w32-in mm-util.el mule.el org-publish.el
-  rfc2047.el x-win.el
+  faces.el fontset.el lib-src/makefile.w32-in mm-util.el mule.el
+  org-publish.el rfc2047.el x-win.el
 
 Zhang Weize: wrote ob-plantuml.el
 
+Zhongwei Yao: changed tramp-adb.el
+
 Zoltan Kemenczy: changed gud.el
 
 Zoran Milojevic: changed avoid.el
 
-Йордан Миладинов: changed quail/cyrillic.el
+Дядов Васил Стоянов: changed org-docview.el
+
+Йордан Миладинов: changed cyrillic.el
 
 Local Variables:
 coding: utf-8
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index 83855af..9786809 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,27 @@
+2015-03-06  Paul Eggert  <address@hidden>
+
+       Random minor fixes for movemail
+       * movemail.c: Include <stdbool.h> and <signal.h>.
+       (waitpid) [WINDOWSNT]: New macro.
+       (wait) [WINDOWSNT]: Remove.
+       (main, popmail, pop_retr, mbx_write, mbx_delimit_begin)
+       (mbx_delimit_end): Use bool for boolean.
+       (main): Simplify #if usage a bit.
+       (main): Don't assume EOF == -1.  Prefer 'return' to 'exit'.  Don't
+       possibly unlink lockname twice, as that's a race condition.  Set
+       SIGCHLD to SIG_DFL to work around SysV misfeature.  Check for fork
+       failure.  Use waitpid, not wait, to avoid a race condition in the
+       unlikely case where we start up with a child.
+       (NOTOK, OK): Remove, in favor of plain boolean.
+       (popmail, pop_retr): Don't get confused about errno, e.g., ferror
+       need not set errno.
+       (popmail): Use fclose (mbf), not close (fileno (mbf)), to also
+       detect any stream-related errors (e.g., memory exhaustion).
+       (pop_retr): Report pop errors separately, since caller now does
+       errno reporting.
+       (mbx_write, mbx_delimit_begin, mbx_delimit_end): Check < 0, not ==
+       EOF, as it's a bit faster and (in theory) pickier.
+
 2015-02-27  Mark Laws  <address@hidden>
 
        Support daemon mode on MS-Windows (bug#19688)
diff --git a/lib-src/movemail.c b/lib-src/movemail.c
index 5008c9b..1618a69 100644
--- a/lib-src/movemail.c
+++ b/lib-src/movemail.c
@@ -59,6 +59,7 @@ along with GNU Emacs.  If not, see 
<http://www.gnu.org/licenses/>.  */
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <sys/file.h>
+#include <stdbool.h>
 #include <stdio.h>
 #include <errno.h>
 #include <time.h>
@@ -66,6 +67,7 @@ along with GNU Emacs.  If not, see 
<http://www.gnu.org/licenses/>.  */
 #include <getopt.h>
 #include <unistd.h>
 #include <fcntl.h>
+#include <signal.h>
 #include <string.h>
 #include "syswait.h"
 #ifdef MAIL_USE_POP
@@ -81,7 +83,7 @@ along with GNU Emacs.  If not, see 
<http://www.gnu.org/licenses/>.  */
 #undef access
 #undef unlink
 #define fork() 0
-#define wait(var) (*(var) = 0)
+#define waitpid(child, var, flags) (*(var) = 0)
 /* Unfortunately, Samba doesn't seem to properly lock Unix files even
    though the locking call succeeds (and indeed blocks local access from
    other NT programs).  If you have direct file access using an NFS
@@ -134,11 +136,11 @@ static void error (const char *s1, const char *s2, const 
char *s3);
 static _Noreturn void pfatal_with_name (char *name);
 static _Noreturn void pfatal_and_delete (char *name);
 #ifdef MAIL_USE_POP
-static int popmail (char *mailbox, char *outfile, int preserve, char 
*password, int reverse_order);
-static int pop_retr (popserver server, int msgno, FILE *arg);
-static int mbx_write (char *line, int len, FILE *mbf);
-static int mbx_delimit_begin (FILE *mbf);
-static int mbx_delimit_end (FILE *mbf);
+static int popmail (char *, char *, bool, char *, bool);
+static bool pop_retr (popserver, int, FILE *);
+static bool mbx_write (char *, int, FILE *);
+static bool mbx_delimit_begin (FILE *);
+static bool mbx_delimit_end (FILE *);
 #endif
 
 #if (defined MAIL_USE_MAILLOCK                                         \
@@ -166,23 +168,21 @@ main (int argc, char **argv)
   int indesc, outdesc;
   ssize_t nread;
   int wait_status;
-  int c, preserve_mail = 0;
+  int c;
+  bool preserve_mail = false;
 
 #ifndef MAIL_USE_SYSTEM_LOCK
   struct stat st;
   int tem;
-  char *lockname;
   char *tempname;
   size_t inname_len, inname_dirlen;
   int desc;
 #endif /* not MAIL_USE_SYSTEM_LOCK */
 
-#ifdef MAIL_USE_MAILLOCK
-  char *spool_name;
-#endif
+  char *spool_name = 0;
 
 #ifdef MAIL_USE_POP
-  int pop_reverse_order = 0;
+  bool pop_reverse_order = false;
 # define ARGSTR "pr"
 #else /* ! MAIL_USE_POP */
 # define ARGSTR "p"
@@ -193,19 +193,19 @@ main (int argc, char **argv)
 
   delete_lockname = 0;
 
-  while ((c = getopt (argc, argv, ARGSTR)) != EOF)
+  while (0 <= (c = getopt (argc, argv, ARGSTR)))
     {
       switch (c) {
 #ifdef MAIL_USE_POP
       case 'r':
-       pop_reverse_order = 1;
+       pop_reverse_order = true;
        break;
 #endif
       case 'p':
-       preserve_mail++;
+       preserve_mail = true;
        break;
       default:
-       exit (EXIT_FAILURE);
+       return EXIT_FAILURE;
       }
     }
 
@@ -223,7 +223,7 @@ main (int argc, char **argv)
 #else
       fprintf (stderr, "Usage: movemail [-p] inbox destfile%s\n", "");
 #endif
-      exit (EXIT_FAILURE);
+      return EXIT_FAILURE;
     }
 
   inname = argv[optind];
@@ -244,7 +244,7 @@ main (int argc, char **argv)
       status = popmail (inname + 3, outname, preserve_mail,
                        (argc - optind == 3) ? argv[optind+2] : NULL,
                        pop_reverse_order);
-      exit (status);
+      return status;
     }
 
   if (setuid (getuid ()) < 0)
@@ -253,18 +253,15 @@ main (int argc, char **argv)
 #endif /* MAIL_USE_POP */
 
 #ifndef DISABLE_DIRECT_ACCESS
+
+  char *lockname = 0;
+
 #ifndef MAIL_USE_MMDF
 #ifndef MAIL_USE_SYSTEM_LOCK
 #ifdef MAIL_USE_MAILLOCK
   spool_name = mail_spool_name (inname);
-  if (spool_name)
-    {
-#ifdef lint
-      lockname = 0;
-#endif
-    }
-  else
 #endif
+  if (! spool_name)
     {
       /* Use a lock file named after our first argument with .lock appended:
         If it exists, the mail file is locked.  */
@@ -292,7 +289,7 @@ main (int argc, char **argv)
        continue;
       tempname = xmalloc (inname_dirlen + sizeof "EXXXXXX");
 
-      while (1)
+      while (true)
        {
          /* Create the lock file, but not under the lock file name.  */
          /* Give up if cannot do that.  */
@@ -328,7 +325,10 @@ main (int argc, char **argv)
            {
              time_t now = time (0);
              if (st.st_ctime < now - 300)
-               unlink (lockname);
+               {
+                 unlink (lockname);
+                 lockname = 0;
+               }
            }
        }
 
@@ -337,15 +337,20 @@ main (int argc, char **argv)
 #endif /* not MAIL_USE_SYSTEM_LOCK */
 #endif /* not MAIL_USE_MMDF */
 
-  if (fork () == 0)
+#ifdef SIGCHLD
+  signal (SIGCHLD, SIG_DFL);
+#endif
+
+  pid_t child = fork ();
+  if (child < 0)
+    fatal ("Error in fork; %s", strerror (errno), 0);
+
+  if (child == 0)
     {
       int lockcount = 0;
       int status = 0;
 #if defined (MAIL_USE_MAILLOCK) && defined (HAVE_TOUCHLOCK)
-      time_t touched_lock;
-# ifdef lint
-      touched_lock = 0;
-# endif
+      time_t touched_lock IF_LINT (= 0);
 #endif
 
       if (setuid (getuid ()) < 0 || setregid (-1, real_gid) < 0)
@@ -382,9 +387,9 @@ main (int argc, char **argv)
 #ifdef MAIL_USE_MAILLOCK
       if (spool_name)
        {
-         /* The "0 - " is to make it a negative number if maillock returns
+         /* The "-" is to make it a negative number if maillock returns
             non-zero. */
-         status = 0 - maillock (spool_name, 1);
+         status = - maillock (spool_name, 1);
 #ifdef HAVE_TOUCHLOCK
          touched_lock = time (0);
 #endif
@@ -422,7 +427,7 @@ main (int argc, char **argv)
       {
        char buf[1024];
 
-       while (1)
+       while (true)
          {
            nread = read (indesc, buf, sizeof buf);
            if (nread < 0)
@@ -464,7 +469,7 @@ main (int argc, char **argv)
 #ifdef MAIL_USE_SYSTEM_LOCK
       if (! preserve_mail)
        {
-         if (ftruncate (indesc, 0L) != 0)
+         if (ftruncate (indesc, 0) != 0)
            pfatal_with_name (inname);
        }
 #endif /* MAIL_USE_SYSTEM_LOCK */
@@ -499,21 +504,18 @@ main (int argc, char **argv)
       if (spool_name)
        mailunlock ();
 #endif
-      exit (EXIT_SUCCESS);
+      return EXIT_SUCCESS;
     }
 
-  wait (&wait_status);
+  if (waitpid (child, &wait_status, 0) < 0)
+    fatal ("Error in waitpid; %s", strerror (errno), 0);
   if (!WIFEXITED (wait_status))
-    exit (EXIT_FAILURE);
+    return EXIT_FAILURE;
   else if (WEXITSTATUS (wait_status) != 0)
-    exit (WEXITSTATUS (wait_status));
+    return WEXITSTATUS (wait_status);
 
-#if !defined (MAIL_USE_MMDF) && !defined (MAIL_USE_SYSTEM_LOCK)
-#ifdef MAIL_USE_MAILLOCK
-  if (! spool_name)
-#endif /* MAIL_USE_MAILLOCK */
+  if (lockname)
     unlink (lockname);
-#endif /* not MAIL_USE_MMDF and not MAIL_USE_SYSTEM_LOCK */
 
 #endif /* ! DISABLE_DIRECT_ACCESS */
 
@@ -616,12 +618,6 @@ pfatal_and_delete (char *name)
 #include <pwd.h>
 #include <string.h>
 
-#define NOTOK (-1)
-#define OK 0
-
-static char Errmsg[200];       /* POP errors, at least, can exceed
-                                  the original length of 80.  */
-
 /*
  * The full valid syntax for a POP mailbox specification for movemail
  * is "po:username:hostname".  The ":hostname" is optional; if it is
@@ -637,10 +633,11 @@ static char Errmsg[200];  /* POP errors, at least, can 
exceed
  */
 
 static int
-popmail (char *mailbox, char *outfile, int preserve, char *password, int 
reverse_order)
+popmail (char *mailbox, char *outfile, bool preserve, char *password,
+        bool reverse_order)
 {
   int nmsgs, nbytes;
-  register int i;
+  int i;
   int mbfi;
   FILE *mbf;
   popserver server;
@@ -690,7 +687,8 @@ popmail (char *mailbox, char *outfile, int preserve, char 
*password, int reverse
        }
     }
 
-  if ((mbf = fdopen (mbfi, "wb")) == NULL)
+  mbf = fdopen (mbfi, "wb");
+  if (!mbf)
     {
       pop_close (server);
       error ("Error in fdopen: %s", strerror (errno), 0);
@@ -713,35 +711,28 @@ popmail (char *mailbox, char *outfile, int preserve, char 
*password, int reverse
     }
 
   for (i = start; i * increment <= end * increment; i += increment)
-    {
-      if (mbx_delimit_begin (mbf) != OK
-         || pop_retr (server, i, mbf) != OK)
-       {
-         error ("%s", Errmsg, 0);
-         close (mbfi);
-         return EXIT_FAILURE;
-       }
-      mbx_delimit_end (mbf);
-      fflush (mbf);
-      if (ferror (mbf))
-       {
-         error ("Error in fflush: %s", strerror (errno), 0);
-         pop_close (server);
-         close (mbfi);
-         return EXIT_FAILURE;
-       }
-    }
+    if (! (mbx_delimit_begin (mbf)
+          && pop_retr (server, i, mbf)
+          && mbx_delimit_end (mbf)
+          && fflush (mbf) == 0))
+      {
+       if (errno)
+         error ("Error in POP retrieving: %s", strerror (errno), 0);
+       pop_close (server);
+       fclose (mbf);
+       return EXIT_FAILURE;
+      }
 
   if (fsync (mbfi) != 0 && errno != EINVAL)
     {
       error ("Error in fsync: %s", strerror (errno), 0);
-      close (mbfi);
+      fclose (mbf);
       return EXIT_FAILURE;
     }
 
-  if (close (mbfi) != 0)
+  if (fclose (mbf) != 0)
     {
-      error ("Error in close: %s", strerror (errno), 0);
+      error ("Error in fclose: %s", strerror (errno), 0);
       return EXIT_FAILURE;
     }
 
@@ -765,7 +756,7 @@ popmail (char *mailbox, char *outfile, int preserve, char 
*password, int reverse
   return EXIT_SUCCESS;
 }
 
-static int
+static bool
 pop_retr (popserver server, int msgno, FILE *arg)
 {
   char *line;
@@ -773,8 +764,9 @@ pop_retr (popserver server, int msgno, FILE *arg)
 
   if (pop_retrieve_first (server, msgno, &line))
     {
-      snprintf (Errmsg, sizeof Errmsg, "Error from POP server: %s", pop_error);
-      return (NOTOK);
+      error ("Error from POP server: %s", pop_error, 0);
+      errno = 0;
+      return false;
     }
 
   while ((ret = pop_retrieve_next (server, &line)) >= 0)
@@ -782,24 +774,26 @@ pop_retr (popserver server, int msgno, FILE *arg)
       if (! line)
        break;
 
-      if (mbx_write (line, ret, arg) != OK)
+      if (! mbx_write (line, ret, arg))
        {
-         strcpy (Errmsg, strerror (errno));
+         int write_errno = errno;
          pop_close (server);
-         return (NOTOK);
+         errno = write_errno;
+         return false;
        }
     }
 
   if (ret)
     {
-      snprintf (Errmsg, sizeof Errmsg, "Error from POP server: %s", pop_error);
-      return (NOTOK);
+      error ("Error from POP server: %s", pop_error, 0);
+      errno = 0;
+      return false;
     }
 
-  return (OK);
+  return true;
 }
 
-static int
+static bool
 mbx_write (char *line, int len, FILE *mbf)
 {
 #ifdef MOVEMAIL_QUOTE_POP_FROM_LINES
@@ -811,47 +805,42 @@ mbx_write (char *line, int len, FILE *mbf)
                            && (a[4] == ' '))
   if (IS_FROM_LINE (line))
     {
-      if (fputc ('>', mbf) == EOF)
-       return (NOTOK);
+      if (fputc ('>', mbf) < 0)
+       return false;
     }
 #endif
   if (line[0] == '\037')
     {
-      if (fputs ("^_", mbf) == EOF)
-       return (NOTOK);
+      if (fputs ("^_", mbf) < 0)
+       return false;
       line++;
       len--;
     }
-  if (fwrite (line, 1, len, mbf) != len)
-    return (NOTOK);
-  if (fputc (0x0a, mbf) == EOF)
-    return (NOTOK);
-  return (OK);
+  return fwrite (line, 1, len, mbf) == len && 0 <= fputc ('\n', mbf);
 }
 
-static int
+static bool
 mbx_delimit_begin (FILE *mbf)
 {
   time_t now = time (NULL);
   struct tm *ltime = localtime (&now);
   if (!ltime)
-    return NOTOK;
+    return false;
 
   char fromline[100];
   if (! strftime (fromline, sizeof fromline,
                  "From movemail %a %b %e %T %Y\n", ltime))
-    return NOTOK;
-  if (fputs (fromline, mbf) == EOF)
-    return (NOTOK);
-  return (OK);
+    {
+      errno = EOVERFLOW;
+      return false;
+    }
+  return 0 <= fputs (fromline, mbf);
 }
 
-static int
+static bool
 mbx_delimit_end (FILE *mbf)
 {
-  if (putc ('\n', mbf) == EOF)
-    return (NOTOK);
-  return (OK);
+  return 0 <= putc ('\n', mbf);
 }
 
 #endif /* MAIL_USE_POP */
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 60e2b50..c25f4ef 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,11 +1,211 @@
-2015-03-03  Agustín Martín Domingo <address@hidden>
+2015-03-10  Thomas Fitzsimmons  <address@hidden>
+
+       * net/ldap.el (ldap-attribute-syntaxes-alist): Add LDAP attributes
+       from RFC2798 Section 9.1.1.  (Bug#8983)
+
+2015-03-09  Nicolas Petton <address@hidden>
+
+       * emacs-lisp/seq.el (seq-into): New function.
+       Bump seq.el version to 1.3.
+
+2015-03-09  Dmitry Gutov  <address@hidden>
+
+       * progmodes/ruby-mode.el (ruby-font-lock-keywords): Don't consider
+       `=' a part of symbol when followed by `>'.  (Bug#18644)
+       (ruby-syntax-before-regexp-re): Detect regexps after `!'.
+       (Bug#19285)
+
+2015-03-09  Eli Zaretskii  <address@hidden>
+
+       * dired.el (dired-delete-file): Doc fix.  (Bug#20021)
+
+2015-03-06  Sergio Durigan Junior  <address@hidden>
+           Thomas Fitzsimmons  <address@hidden>
+
+       * net/eudcb-bbdb.el (eudc-bbdb-field): New function.
+       (eudc-bbdb-filter-non-matching-record): Call eudc-bbdb-field.
+       (eudc-bbdb-format-record-as-result): Likewise.
+
+2015-03-08  Dmitry Gutov  <address@hidden>
+
+       * progmodes/ruby-mode.el (ruby-font-lock-keywords): Use
+       `font-lock-constant-face' for nil, true and false.  Highlight
+       `self' as a keyword.  (Bug#17733)
+
+2015-03-08  Nobuyoshi Nakada  <address@hidden>
+
+       * progmodes/ruby-mode.el (ruby-syntax-before-regexp-re): Expect
+       beginning of regexp also after open brace or vertical bar.
+       (Bug#20026)
+
+2015-03-07  Stefan Monnier  <address@hidden>
+
+       * battery.el (battery-echo-area-format): Simplify default.
+       (battery-linux-sysfs): Standardize on energy&power.  Accept ADP1
+       for AC adapter.
+
+       * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Don't try to
+       unfold `closure's since byte-compile-unfold-lambda doesn't know how to
+       do it.
+
+2015-03-06  Oscar Fuentes  <address@hidden>
+
+       * net/browse-url.el (browse-url-firefox): Remove outdated
+       MS-Windows limitations.
+
+2015-03-06  Thomas Fitzsimmons  <address@hidden>
+
+       * net/eudcb-ldap.el (eudc-ldap-cleanup-record-simple): Mark as
+       obsolete.
+       (eudc-ldap-cleanup-record-filtering-addresses): Add docstring.
+       Don't clean up postal addresses if ldap-ignore-attribute-codings
+       is set.  Combine mail addresses into one field. (Bug#17720)
+       (eudc-ldap-simple-query-internal):
+       Call eudc-ldap-cleanup-record-filtering-addresses instead of
+       eudc-ldap-cleanup-record-simple.
+       (eudc-ldap-get-field-list): Likewise.
+
+2015-03-05  Ivan Shmakov  <address@hidden>
+
+       * net/eww.el (eww-html-p): New function (bug#20009).
+       (eww-render): Use it.
+
+2015-03-05  Artur Malabarba  <address@hidden>
+
+       * desktop.el (desktop-buffer-info): Write docstring.
+       (desktop-buffer-info): Use `pushnew' instead of `add-to-list' and
+       unquote lamda.
+
+       * emacs-lisp/package.el (package-refresh-contents): Update doc.
+
+2015-03-05  Dmitry Gutov  <address@hidden>
+
+       * progmodes/js.el (js-mode-syntax-table): Add an entry for `.
+
+2015-03-05  Stefan Monnier  <address@hidden>
+
+       Replace *-function vars with generic functions in cl-generic.
+       * emacs-lisp/cl-generic.el (cl--generic-generalizer): New struct.
+       (cl-generic-tagcode-function, cl-generic-tag-types-function): Remove.
+       (cl--generic-t-generalizer): New const.
+       (cl--generic-make-method): Rename from `cl--generic-method-make'.
+       (cl--generic-make): Change calling convention.
+       (cl--generic): Add `options' field.
+       (cl-generic-function-options): New function.
+       (cl-defgeneric): Rewrite handling of options.  Add support for :method
+       options and allow the use of a default body.
+       (cl-generic-define): Save options in the corresponding new field.
+       (cl-defmethod): Fix ordering of qualifiers.
+       (cl-generic-define-method): Use cl-generic-generalizers.
+       (cl--generic-get-dispatcher): Change calling convention, and change
+       calling convention of the returned function as well so as to take the
+       list of methods separately from the generic function object, so that it
+       can receive the original generic function object.
+       (cl--generic-make-next-function): New function, extracted from
+       cl--generic-make-function.
+       (cl--generic-make-function): Use it.
+       (cl-generic-method-combination-function): Remove.
+       (cl--generic-cyclic-definition): New error.
+       (cl-generic-call-method): Take a generic function object rather than
+       its name.
+       (cl-method-qualifiers): New alias.
+       (cl--generic-build-combined-method): Use cl-generic-combine-methods,
+       don't segregate by qualifiers here any more.
+       (cl--generic-standard-method-combination): Segregate by qualifiers
+       here instead.  Add support for the `:extra' qualifier.
+       (cl--generic-cache-miss): Move earlier, adjust to new calling 
convention.
+       (cl-generic-generalizers, cl-generic-combine-methods):
+       New generic functions.
+       (cl-no-next-method, cl-no-applicable-method, cl-no-primary-method):
+       Use the new "default method in defgeneric" functionality, change
+       calling convention to receive a generic function object.
+       (cl--generic-head-used): New var.
+       (cl--generic-head-generalizer, cl--generic-eql-generalizer)
+       (cl--generic-struct-generalizer, cl--generic-typeof-generalizer):
+       New consts.
+       * emacs-lisp/eieio-core.el (eieio--generic-generalizer)
+       (eieio--generic-subclass-generalizer): New consts.
+       (cl-generic-generalizers): New methods.
+       * emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-generalizer)
+       (eieio--generic-static-object-generalizer): New consts.
+       (cl-generic-generalizers) <(head eieio--static)>: New method.
+       * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
+       Unfold closures like lambdas.
+
+2015-03-04  Filipp Gunbin  <address@hidden>
+
+       * autorevert.el (auto-revert-notify-add-watch):
+       Fix handler installation.  (Bug#20000)
+
+2015-03-04  Rüdiger Sonderfeld  <address@hidden>
+
+       * net/eww.el (eww-search-prefix, eww-open-file, eww-search-words)
+       (eww-same-page-p,eww-set-character-encoding): Fix docstring.
+       (eww): Do not end error messages with a period.
+
+2015-03-04  Zhongwei Yao  <address@hidden>
+
+       * net/tramp-adb.el (tramp-adb-connect-if-not-connected):
+       New user option.
+       (tramp-adb-ls-toolbox-regexp): Fix regexp in order to support file
+       names starting with a space.
+       (tramp-methods): Add `tramp-default-port' for "adb".
+       (tramp-adb-parse-device-names): Add traces.  Return device names
+       with port, if present.
+       (tramp-adb-handle-directory-files-and-attributes): Quote all
+       remote file names.
+       (tramp-adb-get-device): New defun.
+       (tramp-adb-execute-adb-command, tramp-adb-maybe-open-connection):
+       Use it.
+       (tramp-adb-maybe-open-connection): Set `tramp-current-*'
+       variables.  Remove checks for listed devices.
+
+2015-03-04  Michael Albinus  <address@hidden>
+
+       * net/tramp.el (tramp): Add :link property.
+       (tramp-login-prompt-regexp): Allow also "user", as required by
+       Fritz!Box telnet.
+       (tramp-autoload-file-name-handler): Use "/".
+       (tramp-handle-unhandled-file-name-directory): Return nil when
+       required by the spec.
+
+       * net/tramp-cache.el (tramp-dump-connection-properties):
+       Use `with-temp-file'.
+
+       * net/tramp-sh.el (tramp-perl-file-attributes)
+       (tramp-perl-directory-files-and-attributes): Escape apostrophes in
+       file names.
+       (tramp-do-file-attributes-with-stat): Quote file name.
+       (tramp-sh-handle-directory-files-and-attributes): Fall back to
+       `tramp-handle-directory-files-and-attributes' in case of problems.
+       (tramp-do-directory-files-and-attributes-with-stat)
+       (tramp-sh-handle-file-name-all-completions)
+       (tramp-sh-handle-delete-directory)
+       (tramp-sh-handle-expand-file-name, tramp-sh-handle-process-file):
+       Normalize use of "cd".
+       (tramp-do-directory-files-and-attributes-with-stat): Use the
+       `quoting-style' arg of `ls' if possible.  Make it also working for
+       file names with apostrophes.
+       (tramp-sh-handle-file-name-all-completions): Use arguments of `ls'
+       in proper order.
+       (tramp-do-copy-or-rename-file-via-buffer)
+       (tramp-sh-handle-file-local-copy): Use `with-temp-file'.
+       (tramp-get-remote-locale): Accept also \r in output.
+       (tramp-get-ls-command-with-quoting-style): New defun.
+       (tramp-get-inline-coding): Set `default-directory' to a local
+       directory.  Sporadically, `call-process-region' does not handle a
+       remote default directory properly.
+
+       * net/trampver.el: Update release number.
+
+2015-03-03  Agustín Martín Domingo  <address@hidden>
 
        * textmodes/ispell.el (ispell-aspell-find-dictionary): Make sure
        .dat files for aspell dicts are also searched for in location
        described by `ispell-aspell-dict-dir', matching aspell's dict-dir
        variable.
 
-2015-03-03  Agustín Martín Domingo <address@hidden>
+2015-03-03  Agustín Martín Domingo  <address@hidden>
 
        * textmodes/ispell.el (ispell-dicts-name2locale-equivs-alist)
        (ispell-hunspell-fill-dictionary-entry)
@@ -56,11 +256,11 @@
 
        * simple.el (transient-mark-mode): Doc fix.  (Bug#19841)
 
-2015-03-03  Agustín Martín Domingo <address@hidden>
+2015-03-03  Agustín Martín Domingo  <address@hidden>
 
        Improve string search in `flyspell-word-search-*`. (Bug#16800)
-       * flyspell.el (flyspell-duplicate-distance): Limit default search
-       distance for duplicated words to 40000.
+       * textmodes/flyspell.el (flyspell-duplicate-distance): Limit
+       default search distance for duplicated words to 40000.
        (flyspell-word-search-backward, flyspell-word-search-forward):
        Search as full word with defined casechars, not as substring.
 
@@ -76,8 +276,8 @@
 2015-03-03  Eli Zaretskii  <address@hidden>
 
        * frame.el (frame-notice-user-settings): Refresh the value of
-       frame parameters after calling tty-handle-reverse-video.  Call
-       face-set-after-frame-default with the actual parameters, to avoid
+       frame parameters after calling tty-handle-reverse-video.
+       Call face-set-after-frame-default with the actual parameters, to avoid
        resetting colors back to unspecified.
        (set-background-color, set-foreground-color): Pass the foreground
        and background colors to face-set-after-frame-default.  (Bug#19802)
@@ -110,8 +310,8 @@
 
 2015-03-03  Eli Zaretskii  <address@hidden>
 
-       * textmodes/artist.el (artist-ellipse-compute-fill-info): Use
-       mapcar, not mapc, to create the other half of fill-info.
+       * textmodes/artist.el (artist-ellipse-compute-fill-info):
+       Use mapcar, not mapc, to create the other half of fill-info.
        (Bug#19763)
 
 2015-03-03  Nicolas Petton  <address@hidden>
@@ -136,11 +336,9 @@
 
 2015-03-03  Alan Mackenzie  <address@hidden>
 
-       CC Mode: Stop Font Lock forcing fontification from BOL.  Fixes
-       debbugs#19669.
-
-       * progmodes/cc-mode.el (c-font-lock-init): Setq
-       font-lock-extend-region-functions to nil.
+       CC Mode: Stop Font Lock forcing fontification from BOL.  (Bug#19669)
+       * progmodes/cc-mode.el (c-font-lock-init):
+       Set font-lock-extend-region-functions to nil.
 
 2015-03-03  Daniel Colascione  <address@hidden>
 
@@ -259,8 +457,8 @@
 
        Handle "#" operator properly inside macro.  Fix coding bug.
 
-       * progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): On
-       finding a "#" which looks like the start of a macro, check it
+       * progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP):
+       On finding a "#" which looks like the start of a macro, check it
        isn't already inside a macro.
 
        * progmodes/cc-engine.el (c-state-safe-place): Don't record a new
@@ -275,7 +473,6 @@
 2015-02-26  Fabián Ezequiel Gallina  <address@hidden>
 
        python.el: Handle tabs in python-indent-dedent-line.
-
        * progmodes/python.el (python-indent-dedent-line): Fixes for
        indentation with tabs.  Thanks to <address@hidden> (Bug#19730).
 
@@ -301,15 +498,15 @@
 
 2015-02-25  Oleh Krehel  <address@hidden>
 
-       * emacs-lisp/check-declare.el (check-declare-warn): Use
-       compilation-style warnings.
+       * emacs-lisp/check-declare.el (check-declare-warn):
+       Use compilation-style warnings.
        (check-declare-files): Make sure that
        `check-declare-warning-buffer' is in `compilation-mode'.
 
 2015-02-25  Oleh Krehel  <address@hidden>
 
-       * emacs-lisp/check-declare.el (check-declare-ext-errors): New
-       defcustom.
+       * emacs-lisp/check-declare.el (check-declare-ext-errors):
+       New defcustom.
        (check-declare): New defgroup.
        (check-declare-verify): When `check-declare-ext-errors' is
        non-nil, warn about an unfound function, instead of saying
@@ -317,8 +514,8 @@
 
 2015-02-25  Tassilo Horn  <address@hidden>
 
-       * textmodes/reftex-vars.el (reftex-include-file-commands): Call
-       reftex-set-dirty on changes.
+       * textmodes/reftex-vars.el (reftex-include-file-commands):
+       Call reftex-set-dirty on changes.
 
 2015-02-25  Stefan Monnier  <address@hidden>
 
@@ -390,9 +587,8 @@
 
 2015-02-23  Paul Eggert  <address@hidden>
 
-       Fix the desired binding for comment-line
        * bindings.el (ctl-x-map): Use [?\C-\;] to get the desired binding.
-       Fixes: bug#19826
+       (Bug#19826)
 
 2015-02-23  Stefan Monnier  <address@hidden>
 
@@ -416,8 +612,7 @@
 
        * bindings.el (ctl-x-map): There is no 'C-;'.
        For now, make do with 'M-;'; this allows 'make bootstrap' to work.
-       Perhaps some other binding should be chosen.
-       Fixes: bug#19826
+       Perhaps some other binding should be chosen.  (Bug#19826)
 
 2015-02-21  Artur Malabarba  <address@hidden>
 
@@ -695,7 +890,7 @@
        (package-install-button-action, package-reinstall)
        (package-menu-execute): Account for the change.
 
-2015-02-11  Nicolas Petton <address@hidden>
+2015-02-11  Nicolas Petton  <address@hidden>
 
        * emacs-lisp/seq.el (seq-reverse): Add a backward-compatible
        version of seq-reverse that works on sequences in Emacs 24.
@@ -780,7 +975,7 @@
        (python-shell-font-lock-turn-off): Fix typo.
        (python-util-text-properties-replace-name): Delete function.
 
-2015-02-09  Nicolas Petton <address@hidden>
+2015-02-09  Nicolas Petton  <address@hidden>
 
        * emacs-lisp/seq.el (seq-group-by): Improves seq-group-by to
        return sequence elements in correct order.
@@ -844,7 +1039,7 @@
 2015-02-08  Oleh Krehel  <address@hidden>
 
        * outline.el (outline-show-entry): Fix one invisible char for the
-       file's last outline.  Fixes Bug#19493.
+       file's last outline.  (Bug#19493)
 
 2015-02-08  Stefan Monnier  <address@hidden>
 
@@ -880,7 +1075,6 @@
 2015-02-07  Fabián Ezequiel Gallina  <address@hidden>
 
        python.el: Keep eldoc visible while typing args.  (Bug#19637)
-
        * progmodes/python.el (python-eldoc--get-symbol-at-point):
        New function based on Carlos Pita <address@hidden> patch.
        (python-eldoc--get-doc-at-point, python-eldoc-at-point): Use it.
@@ -888,7 +1082,6 @@
 2015-02-07  Fabián Ezequiel Gallina  <address@hidden>
 
        Fix hideshow integration.  (Bug#19761)
-
        * progmodes/python.el
        (python-hideshow-forward-sexp-function): New function based on
        Carlos Pita <address@hidden> patch.
@@ -914,11 +1107,13 @@
        * vc/vc-cvs.el (vc-cvs-dir-status-files): Don't pass DIR to
        `vc-cvs-command' (bug#19732).
 
-2015-02-06  Nicolas Petton <address@hidden>
+2015-02-06  Nicolas Petton  <address@hidden>
 
-       * emacs-lisp/seq.el (seq-mapcat, seq-partition, seq-group-by): New 
functions.
+       * emacs-lisp/seq.el (seq-mapcat, seq-partition, seq-group-by):
+       New functions.
        * emacs-lisp/seq.el (seq-drop-while, seq-take-while, seq-count)
-       (seq--drop-list, seq--take-list, seq--take-while-list): Better 
docstring.
+       (seq--drop-list, seq--take-list, seq--take-while-list):
+       Better docstring.
 
 2015-02-06  Artur Malabarba  <address@hidden>
 
@@ -965,7 +1160,7 @@
        * json.el (json-end-of-file): New error (bug#19768).
        (json-pop, json-read): Use it.
 
-2015-02-05  Kelly Dean <address@hidden>
+2015-02-05  Kelly Dean  <address@hidden>
 
        * help-mode.el (help-xref-interned): Pass BUFFER and FRAME to
        `describe-variable'.
@@ -1335,8 +1530,8 @@
 
 2015-01-28  Paul Eggert  <address@hidden>
 
-       Fix dired quoting bug with "Hit`N`Hide".  Fixes Bug#19498.
-       * files.el (shell-quote-wildcard-pattern): Also quote "`".
+       Fix dired quoting bug with "Hit`N`Hide".
+       * files.el (shell-quote-wildcard-pattern): Also quote "`".  (Bug#19498)
 
 2015-01-28  Stefan Monnier  <address@hidden>
 
@@ -3073,7 +3268,7 @@
        * emacs-lisp/package.el (package--list-loaded-files): Don't call
        file-truename on load-history elements (bug#19390).
 
-2014-12-16  Nicolas Petton <address@hidden>
+2014-12-16  Nicolas Petton  <address@hidden>
 
        * emacs-lisp/seq.el: New file.
 
@@ -3719,7 +3914,7 @@
        Pass correct status to `newsticker--sentinel-work'.
        (newsticker--sentinel-work): Use "newsticker--download-error" as
        guid in order to prevent multiple "Could not download..."
-       messages.  Fixes bug#19166.
+       messages.  (Bug#19166)
 
 2014-12-01  Ivan Shmakov  <address@hidden>
 
@@ -4130,15 +4325,13 @@
 2014-11-22  Alan Mackenzie  <address@hidden>
 
        Fix error with `mark-defun' and "protected:" in C++ Mode.
-       Fixes: debbugs:19134.
-
        * progmodes/cc-cmds.el (c-where-wrt-brace-construct): Handle a
-       return code of (label) from c-beginning-of-decl-1.
+       return code of (label) from c-beginning-of-decl-1.  (Bug#19134)
 
 2014-11-22  Ulf Jasper  <address@hidden>
 
        * net/newst-backend.el (newsticker--sentinel-work):
-       Tell `libxml-parse-xml-region' to discard comments.  Fixes bug#18787.
+       Tell `libxml-parse-xml-region' to discard comments.  (Bug#18787)
 
 2014-11-22  Michael Albinus  <address@hidden>
 
@@ -4476,7 +4669,7 @@
        (python-shell-calculate-process-environment): Use it.
        (python-shell-calculate-exec-path): Add comment.
 
-2014-11-16  Thierry Banel <address@hidden>  (tiny change)
+2014-11-16  Thierry Banel  <address@hidden>  (tiny change)
 
        * calc/calc-arith.el (math-max-list, math-min-list): Fix bug
        for date handling.
@@ -4501,7 +4694,7 @@
        * mail/emacsbug.el (report-emacs-bug): Make a better guess at
          envelope-from when reporting through sendmail (bug#19054).
 
-2014-11-16  Oscar Fuentes <address@hidden>
+2014-11-16  Oscar Fuentes  <address@hidden>
 
        Add faces for the VC modeline state indicator.
        * vc/vc-hooks.el:
@@ -4728,11 +4921,11 @@
 
 2014-11-08  Alan Mackenzie  <address@hidden>
 
-       Fix wrong bound to c-font-lock-declarators.  Fixes bug #18948.
+       Fix wrong bound to c-font-lock-declarators.
        * progmodes/cc-fonts.el (c-font-lock-declarations):
        Pass "(point-max)" as bound to c-font-lock-declarators, not "limit", as
        the buffer is sometimes narrowed to less than "limit" (e.g., in
-       the presence of macros).
+       the presence of macros).  (Bug#18948)
 
 2014-11-08  Michael Albinus  <address@hidden>
 
@@ -4957,20 +5150,20 @@
        correct buffer.
        (eww-view-source): Use it.
 
-2014-11-02  Ivan Shmakov <address@hidden>
+2014-11-02  Ivan Shmakov  <address@hidden>
 
        * net/eww.el (eww): Recognize colon-delimited IPv6 addresses.
        (Bug#18603).
 
-2014-11-02  Brian McKenna <address@hidden>  (tiny change)
+2014-11-02  Brian McKenna  <address@hidden>  (tiny change)
 
        * net/eww.el (eww-submit): Encode empty form values as "".  (Bug#17785).
 
-2014-11-02  Ivan Shmakov <address@hidden>
+2014-11-02  Ivan Shmakov  <address@hidden>
 
        * net/eww.el (eww): Allow "file:/file/name" URLs.  (Bug#18825).
 
-2014-11-02  Ivan Shmakov <address@hidden>
+2014-11-02  Ivan Shmakov  <address@hidden>
 
        * net/eww.el (eww-mode-map): Remove mentions of `eww-quit'.
        (Bug#18834).
@@ -5546,9 +5739,8 @@
 2014-10-18  Alan Mackenzie  <address@hidden>
 
        Check that a "macro" found near point-min isn't a ## operator.
-       Fixes bug #18749.
        * progmodes/cc-engine.el (c-macro-is-genuine-p): New function.
-       (c-beginning-of-macro): Use the above new function.
+       (c-beginning-of-macro): Use the above new function.  (Bug#18749)
 
 2014-10-18  Teodor Zlatanov  <address@hidden>
 
diff --git a/lisp/autorevert.el b/lisp/autorevert.el
index 6489a3e..357916c 100644
--- a/lisp/autorevert.el
+++ b/lisp/autorevert.el
@@ -503,36 +503,37 @@ will use an up-to-date value of `auto-revert-interval'"
   "Enable file notification for current buffer's associated file."
   ;; We can assume that `buffer-file-name' and
   ;; `auto-revert-use-notify' are non-nil.
-  (when (or (string-match auto-revert-notify-exclude-dir-regexp
-                         (expand-file-name default-directory))
-           (file-symlink-p (or buffer-file-name default-directory)))
-    ;; Fallback to file checks.
-    (set (make-local-variable 'auto-revert-use-notify) nil))
-
-  (when (not auto-revert-notify-watch-descriptor)
-    (setq auto-revert-notify-watch-descriptor
-         (ignore-errors
-           (if buffer-file-name
-               (file-notify-add-watch
-                (expand-file-name buffer-file-name default-directory)
-                '(change attribute-change)
-                'auto-revert-notify-handler)
-             (file-notify-add-watch
-              (expand-file-name default-directory)
-              '(change)
-              'auto-revert-notify-handler))))
-    (if auto-revert-notify-watch-descriptor
-       (progn
-         (puthash
-          auto-revert-notify-watch-descriptor
-          (cons (current-buffer)
-                (gethash auto-revert-notify-watch-descriptor
-                         auto-revert-notify-watch-descriptor-hash-list))
-          auto-revert-notify-watch-descriptor-hash-list)
-         (add-hook (make-local-variable 'kill-buffer-hook)
-                   'auto-revert-notify-rm-watch))
+  (if (or (string-match auto-revert-notify-exclude-dir-regexp
+                       (expand-file-name default-directory))
+         (file-symlink-p (or buffer-file-name default-directory)))
+
       ;; Fallback to file checks.
-      (set (make-local-variable 'auto-revert-use-notify) nil))))
+      (set (make-local-variable 'auto-revert-use-notify) nil)
+
+    (when (not auto-revert-notify-watch-descriptor)
+      (setq auto-revert-notify-watch-descriptor
+           (ignore-errors
+             (if buffer-file-name
+                 (file-notify-add-watch
+                  (expand-file-name buffer-file-name default-directory)
+                  '(change attribute-change)
+                  'auto-revert-notify-handler)
+               (file-notify-add-watch
+                (expand-file-name default-directory)
+                '(change)
+                'auto-revert-notify-handler))))
+      (if auto-revert-notify-watch-descriptor
+         (progn
+           (puthash
+            auto-revert-notify-watch-descriptor
+            (cons (current-buffer)
+                  (gethash auto-revert-notify-watch-descriptor
+                           auto-revert-notify-watch-descriptor-hash-list))
+            auto-revert-notify-watch-descriptor-hash-list)
+           (add-hook (make-local-variable 'kill-buffer-hook)
+                     'auto-revert-notify-rm-watch))
+       ;; Fallback to file checks.
+       (set (make-local-variable 'auto-revert-use-notify) nil)))))
 
 ;; If we have file notifications, we want to update the auto-revert buffers
 ;; immediately when a notification occurs. Since file updates can happen very
diff --git a/lisp/battery.el b/lisp/battery.el
index 41e5979..b9ce5b4 100644
--- a/lisp/battery.el
+++ b/lisp/battery.el
@@ -44,27 +44,27 @@
 (defcustom battery-status-function
   (cond ((and (eq system-type 'gnu/linux)
              (file-readable-p "/proc/apm"))
-        'battery-linux-proc-apm)
+        #'battery-linux-proc-apm)
        ((and (eq system-type 'gnu/linux)
              (file-directory-p "/proc/acpi/battery"))
-        'battery-linux-proc-acpi)
+        #'battery-linux-proc-acpi)
        ((and (eq system-type 'gnu/linux)
              (file-directory-p "/sys/class/power_supply/")
              (directory-files "/sys/class/power_supply/" nil
                                battery--linux-sysfs-regexp))
-        'battery-linux-sysfs)
+        #'battery-linux-sysfs)
        ((and (eq system-type 'berkeley-unix)
              (file-executable-p "/usr/sbin/apm"))
-        'battery-bsd-apm)
+        #'battery-bsd-apm)
        ((and (eq system-type 'darwin)
              (condition-case nil
                  (with-temp-buffer
                    (and (eq (call-process "pmset" nil t nil "-g" "ps") 0)
                         (> (buffer-size) 0)))
                (error nil)))
-        'battery-pmset)
+        #'battery-pmset)
        ((fboundp 'w32-battery-status)
-        'w32-battery-status))
+        #'w32-battery-status))
   "Function for getting battery status information.
 The function has to return an alist of conversion definitions.
 Its cons cells are of the form
@@ -77,14 +77,7 @@ introduced by a `%' character in a control string."
   :group 'battery)
 
 (defcustom battery-echo-area-format
-  (cond ((eq battery-status-function 'battery-linux-proc-acpi)
-        "Power %L, battery %B at %r (%p%% load, remaining time %t)")
-       ((eq battery-status-function 'battery-linux-sysfs)
-        "Power %L, battery %B (%p%% load, remaining time %t)")
-       ((eq battery-status-function 'battery-pmset)
-        "%L power, battery %B (%p%% load, remaining time %t)")
-       (battery-status-function
-        "Power %L, battery %B (%p%% load, remaining time %t)"))
+  "Power %L, battery %B (%p%% load, remaining time %t)"
   "Control string formatting the string to display in the echo area.
 Ordinary characters in the control string are printed as-is, while
 conversion specifications introduced by a `%' character in the control
@@ -436,11 +429,15 @@ The following %-sequences are provided:
 %m Remaining time (to charge or discharge) in minutes
 %h Remaining time (to charge or discharge) in hours
 %t Remaining time (to charge or discharge) in the form `h:min'"
-  (let (charging-state rate temperature hours
-       (charge-full 0.0)
-       (charge-now 0.0)
+  (let (charging-state temperature hours
+        ;; Some batteries report charges and current, other energy and power.
+        ;; In order to reliably be able to combine those data, we convert them
+        ;; all to energy/power (since we can't combine different charges if
+        ;; they're not at the same voltage).
        (energy-full 0.0)
-       (energy-now 0.0))
+       (energy-now 0.0)
+       (power-now 0.0)
+       (voltage-now 10.8))    ;Arbitrary default, in case the info is missing.
     ;; SysFS provides information about each battery present in the
     ;; system in a separate subdirectory.  We are going to merge the
     ;; available information together.
@@ -452,6 +449,11 @@ The following %-sequences are provided:
        (erase-buffer)
        (ignore-errors (insert-file-contents
                        (expand-file-name "uevent" dir)))
+       (goto-char (point-min))
+       (when (re-search-forward
+              "POWER_SUPPLY_VOLTAGE_NOW=\\([0-9]*\\)$" nil t)
+         (setq voltage-now (/ (string-to-number (match-string 1)) 1000000.0)))
+       (goto-char (point-min))
        (when (re-search-forward "POWER_SUPPLY_PRESENT=1$" nil t)
          (goto-char (point-min))
          (and (re-search-forward "POWER_SUPPLY_STATUS=\\(.*\\)$" nil t)
@@ -461,7 +463,10 @@ The following %-sequences are provided:
          (when (re-search-forward
                  "POWER_SUPPLY_\\(CURRENT\\|POWER\\)_NOW=\\([0-9]*\\)$"
                  nil t)
-           (setq rate (float (string-to-number (match-string 2)))))
+           (cl-incf power-now
+                    (* (float (string-to-number (match-string 2)))
+                       (if (eq (char-after (match-beginning 1)) ?C)
+                           voltage-now 1.0))))
          (goto-char (point-min))
          (when (re-search-forward "POWER_SUPPLY_TEMP=\\([0-9]*\\)$" nil t)
            (setq temperature (match-string 1)))
@@ -475,10 +480,10 @@ The following %-sequences are provided:
                        (re-search-forward
                         "POWER_SUPPLY_CHARGE_NOW=\\([0-9]*\\)$" nil t)
                        (setq now-string (match-string 1)))
-                  (setq charge-full (+ charge-full
-                                       (string-to-number full-string))
-                        charge-now  (+ charge-now
-                                       (string-to-number now-string))))
+                  (cl-incf energy-full (* (string-to-number full-string)
+                                           voltage-now))
+                  (cl-incf energy-now  (* (string-to-number now-string)
+                                           voltage-now)))
                  ((and (progn (goto-char (point-min)) t)
                        (re-search-forward
                         "POWER_SUPPLY_ENERGY_FULL=\\([0-9]*\\)$" nil t)
@@ -486,27 +491,20 @@ The following %-sequences are provided:
                        (re-search-forward
                         "POWER_SUPPLY_ENERGY_NOW=\\([0-9]*\\)$" nil t)
                        (setq now-string (match-string 1)))
-                  (setq energy-full (+ energy-full
-                                       (string-to-number full-string))
-                        energy-now  (+ energy-now
-                                       (string-to-number now-string))))))
+                  (cl-incf energy-full (string-to-number full-string))
+                  (cl-incf energy-now  (string-to-number now-string)))))
          (goto-char (point-min))
-         (when (and energy-now rate (not (zerop rate))
-                    (re-search-forward
-                      "POWER_SUPPLY_VOLTAGE_NOW=\\([0-9]*\\)$" nil t))
+         (unless (zerop power-now)
            (let ((remaining (if (string= charging-state "Discharging")
                                 energy-now
                               (- energy-full energy-now))))
-             (setq hours (/ (/ (* remaining (string-to-number
-                                              (match-string 1)))
-                                rate)
-                            10000000.0)))))))
-    (list (cons ?c (cond ((or (> charge-full 0) (> charge-now 0))
-                         (number-to-string charge-now))
-                        ((or (> energy-full 0) (> energy-now 0))
-                         (number-to-string energy-now))
+             (setq hours (/ remaining power-now)))))))
+    (list (cons ?c (cond ((or (> energy-full 0) (> energy-now 0))
+                         (number-to-string (/ energy-now voltage-now)))
                         (t "N/A")))
-         (cons ?r (if rate (format "%.1f" (/ rate 1000000.0)) "N/A"))
+         (cons ?r (if (> power-now 0.0)
+                      (format "%.1f" (/ power-now 1000000.0))
+                    "N/A"))
          (cons ?m (if hours (format "%d" (* hours 60)) "N/A"))
          (cons ?h (if hours (format "%d" hours) "N/A"))
          (cons ?t (if hours
@@ -514,21 +512,24 @@ The following %-sequences are provided:
                     "N/A"))
          (cons ?d (or temperature "N/A"))
          (cons ?B (or charging-state "N/A"))
-         (cons ?p (cond ((and (> charge-full 0) (> charge-now 0))
-                         (format "%.1f"
-                                 (/ (* 100 charge-now) charge-full)))
-                        ((> energy-full 0)
+         (cons ?p (cond ((and (> energy-full 0) (> energy-now 0))
                          (format "%.1f"
                                  (/ (* 100 energy-now) energy-full)))
                         (t "N/A")))
-         (cons ?L (if (file-readable-p "/sys/class/power_supply/AC/online")
-                      (if (battery-search-for-one-match-in-files
-                           (list "/sys/class/power_supply/AC/online"
-                                 "/sys/class/power_supply/ACAD/online")
-                           "1" 0)
-                          "AC"
-                        "BAT")
-                    "N/A")))))
+         (cons ?L (cond
+                    ((battery-search-for-one-match-in-files
+                      (list "/sys/class/power_supply/AC/online"
+                            "/sys/class/power_supply/ACAD/online"
+                            "/sys/class/power_supply/ADP1/online")
+                      "1" 0)
+                     "AC")
+                    ((battery-search-for-one-match-in-files
+                      (list "/sys/class/power_supply/AC/online"
+                            "/sys/class/power_supply/ACAD/online"
+                            "/sys/class/power_supply/ADP1/online")
+                      "0" 0)
+                     "BAT")
+                    (t "N/A"))))))
 
 
 ;;; `apm' interface for BSD.
diff --git a/lisp/desktop.el b/lisp/desktop.el
index b85d8b2..3eca5a6 100644
--- a/lisp/desktop.el
+++ b/lisp/desktop.el
@@ -756,6 +756,24 @@ is nil, ask the user where to save the desktop."
 
 ;; ----------------------------------------------------------------------------
 (defun desktop-buffer-info (buffer)
+  "Return information describing BUFFER.
+This function is not pure, as BUFFER is made current with
+`set-buffer'.
+
+Returns a list of all the necessary information to recreate the
+buffer, which is (in order):
+
+    `uniquify-buffer-base-name';
+    `buffer-file-name';
+    `buffer-name';
+    `major-mode';
+    list of minor-modes,;
+    `point';
+    `mark';
+    `buffer-read-only';
+    auxiliary information given by `desktop-save-buffer';
+    local variables;
+    auxiliary information given by `desktop-var-serdes-funs'."
   (set-buffer buffer)
   (list
    ;; base name of the buffer; replaces the buffer name if managed by uniquify
@@ -766,16 +784,13 @@ is nil, ask the user where to save the desktop."
    major-mode
    ;; minor modes
    (let (ret)
-     (mapc
-      #'(lambda (minor-mode)
-         (and (boundp minor-mode)
-              (symbol-value minor-mode)
-              (let* ((special (assq minor-mode desktop-minor-mode-table))
-                     (value (cond (special (cadr special))
-                                  ((functionp minor-mode) minor-mode))))
-                (when value (add-to-list 'ret value)))))
-      (mapcar #'car minor-mode-alist))
-     ret)
+     (dolist (minor-mode (mapcar #'car minor-mode-alist) ret)
+       (and (boundp minor-mode)
+            (symbol-value minor-mode)
+            (let* ((special (assq minor-mode desktop-minor-mode-table))
+                   (value (cond (special (cadr special))
+                                ((functionp minor-mode) minor-mode))))
+              (when value (cl-pushnew value ret))))))
    ;; point and mark, and read-only status
    (point)
    (list (mark t) mark-active)
diff --git a/lisp/dired.el b/lisp/dired.el
index 2b3e783..cc16c8c 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -2850,11 +2850,16 @@ Any other value means to ask for each directory."
 ;; to e.g. recursive-delete-file and put it somewhere else.
 (defun dired-delete-file (file &optional recursive trash) "\
 Delete FILE or directory (possibly recursively if optional RECURSIVE is true.)
-RECURSIVE determines what to do with a non-empty directory.  If RECURSIVE is:
-nil, do not delete.
-`always', delete recursively without asking.
-`top', ask for each directory at top level.
-Anything else, ask for each sub-directory."
+RECURSIVE determines what to do with a non-empty directory.  The effect of
+its possible values is:
+
+  nil           -- do not delete.
+  `always'      -- delete recursively without asking.
+  `top'         -- ask for each directory at top level.
+  Anything else -- ask for each sub-directory.
+
+TRASH non-nil means to trash the file instead of deleting, provided
+`delete-by-moving-to-trash' (which see) is non-nil."
   ;; This test is equivalent to
   ;; (and (file-directory-p fn) (not (file-symlink-p fn)))
   ;; but more efficient
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el
index 149c472..06a1106 100644
--- a/lisp/emacs-lisp/byte-opt.el
+++ b/lisp/emacs-lisp/byte-opt.el
@@ -302,65 +302,65 @@
   ;; doesn't matter here, because function's behavior is underspecified so it
   ;; can safely be turned into a `let', even though the reverse is not true.
   (or name (setq name "anonymous lambda"))
-  (let ((lambda (car form))
-       (values (cdr form)))
-    (let ((arglist (nth 1 lambda))
-         (body (cdr (cdr lambda)))
-         optionalp restp
-         bindings)
-      (if (and (stringp (car body)) (cdr body))
-         (setq body (cdr body)))
-      (if (and (consp (car body)) (eq 'interactive (car (car body))))
-         (setq body (cdr body)))
-      ;; FIXME: The checks below do not belong in an optimization phase.
-      (while arglist
-       (cond ((eq (car arglist) '&optional)
-              ;; ok, I'll let this slide because funcall_lambda() does...
-              ;; (if optionalp (error "multiple &optional keywords in %s" 
name))
-              (if restp (error "&optional found after &rest in %s" name))
-              (if (null (cdr arglist))
-                  (error "nothing after &optional in %s" name))
-              (setq optionalp t))
-             ((eq (car arglist) '&rest)
-              ;; ...but it is by no stretch of the imagination a reasonable
-              ;; thing that funcall_lambda() allows (&rest x y) and
-              ;; (&rest x &optional y) in arglists.
-              (if (null (cdr arglist))
-                  (error "nothing after &rest in %s" name))
-              (if (cdr (cdr arglist))
-                  (error "multiple vars after &rest in %s" name))
-              (setq restp t))
-             (restp
-              (setq bindings (cons (list (car arglist)
-                                         (and values (cons 'list values)))
-                                   bindings)
-                    values nil))
-             ((and (not optionalp) (null values))
-              (byte-compile-warn "attempt to open-code `%s' with too few 
arguments" name)
-              (setq arglist nil values 'too-few))
-             (t
-              (setq bindings (cons (list (car arglist) (car values))
-                                   bindings)
-                    values (cdr values))))
-       (setq arglist (cdr arglist)))
-      (if values
-         (progn
-           (or (eq values 'too-few)
-               (byte-compile-warn
-                "attempt to open-code `%s' with too many arguments" name))
-           form)
-
-       ;; The following leads to infinite recursion when loading a
-       ;; file containing `(defsubst f () (f))', and then trying to
-       ;; byte-compile that file.
-       ;(setq body (mapcar 'byte-optimize-form body)))
-
-       (let ((newform
-              (if bindings
-                  (cons 'let (cons (nreverse bindings) body))
-                (cons 'progn body))))
-         (byte-compile-log "  %s\t==>\t%s" form newform)
-         newform)))))
+  (let* ((lambda (car form))
+         (values (cdr form))
+         (arglist (nth 1 lambda))
+         (body (cdr (cdr lambda)))
+         optionalp restp
+         bindings)
+    (if (and (stringp (car body)) (cdr body))
+        (setq body (cdr body)))
+    (if (and (consp (car body)) (eq 'interactive (car (car body))))
+        (setq body (cdr body)))
+    ;; FIXME: The checks below do not belong in an optimization phase.
+    (while arglist
+      (cond ((eq (car arglist) '&optional)
+             ;; ok, I'll let this slide because funcall_lambda() does...
+             ;; (if optionalp (error "multiple &optional keywords in %s" name))
+             (if restp (error "&optional found after &rest in %s" name))
+             (if (null (cdr arglist))
+                 (error "nothing after &optional in %s" name))
+             (setq optionalp t))
+            ((eq (car arglist) '&rest)
+             ;; ...but it is by no stretch of the imagination a reasonable
+             ;; thing that funcall_lambda() allows (&rest x y) and
+             ;; (&rest x &optional y) in arglists.
+             (if (null (cdr arglist))
+                 (error "nothing after &rest in %s" name))
+             (if (cdr (cdr arglist))
+                 (error "multiple vars after &rest in %s" name))
+             (setq restp t))
+            (restp
+             (setq bindings (cons (list (car arglist)
+                                        (and values (cons 'list values)))
+                                  bindings)
+                   values nil))
+            ((and (not optionalp) (null values))
+             (byte-compile-warn "attempt to open-code `%s' with too few 
arguments" name)
+             (setq arglist nil values 'too-few))
+            (t
+             (setq bindings (cons (list (car arglist) (car values))
+                                  bindings)
+                   values (cdr values))))
+      (setq arglist (cdr arglist)))
+    (if values
+        (progn
+          (or (eq values 'too-few)
+              (byte-compile-warn
+               "attempt to open-code `%s' with too many arguments" name))
+          form)
+
+                                       ;; The following leads to infinite 
recursion when loading a
+                                       ;; file containing `(defsubst f () 
(f))', and then trying to
+                                       ;; byte-compile that file.
+                       ;(setq body (mapcar 'byte-optimize-form body)))
+
+      (let ((newform
+             (if bindings
+                 (cons 'let (cons (nreverse bindings) body))
+               (cons 'progn body))))
+        (byte-compile-log "  %s\t==>\t%s" form newform)
+        newform))))
 
 
 ;;; implementing source-level optimizers
@@ -390,12 +390,13 @@
           (and (nth 1 form)
                (not for-effect)
                form))
-         ((eq 'lambda (car-safe fn))
+         ((eq (car-safe fn) 'lambda)
           (let ((newform (byte-compile-unfold-lambda form)))
             (if (eq newform form)
                 ;; Some error occurred, avoid infinite recursion
                 form
               (byte-optimize-form-code-walker newform for-effect))))
+         ((eq (car-safe fn) 'closure) form)
          ((memq fn '(let let*))
           ;; recursively enter the optimizer for the bindings and body
           ;; of a let or let*.  This for depth-firstness: forms that
diff --git a/lisp/emacs-lisp/cl-generic.el b/lisp/emacs-lisp/cl-generic.el
index 99924ba..a8483ea 100644
--- a/lisp/emacs-lisp/cl-generic.el
+++ b/lisp/emacs-lisp/cl-generic.el
@@ -31,37 +31,51 @@
 ;;   from a significant problem: the method-combination code returns a sexp
 ;;   that needs to be `eval'uated or compiled.  IOW it requires run-time
 ;;   code generation.  Given how rarely method-combinations are used,
-;;   I just provided a cl-generic-method-combination-function, which
-;;   people can use if they are really desperate for such functionality.
+;;   I just provided a cl-generic-combine-methods generic function, to which
+;;   people can add methods if they are really desperate for such 
functionality.
 ;; - In defgeneric we don't support the options:
-;;   declare, :method-combination, :generic-function-class, :method-class,
-;;   :method.
+;;   declare, :method-combination, :generic-function-class, :method-class.
 ;; Added elements:
 ;; - We support aliases to generic functions.
-;; - The kind of thing on which to dispatch can be extended.
-;;   There is support in this file for dispatch on:
+;; - cl-generic-generalizers.  This generic function lets you extend the kind
+;;   of thing on which to dispatch.  There is support in this file for
+;;   dispatch on:
 ;;   - (eql <val>)
+;;   - (head <val>) which checks that the arg is a cons with <val> as its head.
 ;;   - plain old types
 ;;   - type of CL structs
 ;;   eieio-core adds dispatch on:
 ;;   - class of eieio objects
 ;;   - actual class argument, using the syntax (subclass <class>).
-;; - cl-generic-method-combination-function (i.s.o define-method-combination).
+;; - cl-generic-combine-methods (i.s.o define-method-combination and
+;;   compute-effective-method).
 ;; - cl-generic-call-method (which replaces make-method and call-method).
+;; - The standard method combination supports ":extra STRING" qualifiers
+;;   which simply allows adding more methods for the same
+;;   specializers&qualifiers.
 
 ;; Efficiency considerations: overall, I've made an effort to make this fairly
 ;; efficient for the expected case (e.g. no constant redefinition of methods).
 ;; - Generic functions which do not dispatch on any argument are implemented
 ;;   optimally (just as efficient as plain old functions).
 ;; - Generic functions which only dispatch on one argument are fairly efficient
-;;   (not a lot of room for improvement, I think).
+;;   (not a lot of room for improvement without changes to the byte-compiler,
+;;   I think).
 ;; - Multiple dispatch is implemented rather naively.  There's an extra `apply'
 ;;   function call for every dispatch; we don't optimize each dispatch
 ;;   based on the set of candidate methods remaining; we don't optimize the
-;;   order in which we performs the dispatches either;  If/when this
-;;   becomes a problem, we can try and optimize it.
+;;   order in which we performs the dispatches either;
+;;   If/when this becomes a problem, we can try and optimize it.
 ;; - call-next-method could be made more efficient, but isn't too terrible.
 
+;; TODO:
+;;
+;; - A generic "filter" generalizer (e.g. could be used to cleanly adds methods
+;;   to cl-generic-combine-methods with a specializer that says it applies only
+;;   when some particular qualifier is used).
+;; - A way to dispatch on the context (e.g. the major-mode, some global
+;;   variable, you name it).
+
 ;;; Code:
 
 ;; Note: For generic functions that dispatch on several arguments (i.e. those
@@ -70,40 +84,24 @@
 ;; often suboptimal since after one dispatch, the remaining dispatches can
 ;; usually be simplified, or even completely skipped.
 
-;; TODO/FIXME:
-;; - WIBNI we could use something like
-;;   (add-function :before (cl-method-function (cl-find-method ...)) ...)
-
 (eval-when-compile (require 'cl-lib))
 (eval-when-compile (require 'pcase))
 
-(defvar cl-generic-tagcode-function
-  (lambda (type _name)
-    (if (eq type t) '(0 . 'cl--generic-type)
-      (error "Unknown specializer %S" type)))
-  "Function to get the Elisp code to extract the tag on which we dispatch.
-Takes a \"parameter-specializer-name\" and a variable name, and returns
-a pair (PRIORITY . CODE) where CODE is an Elisp expression that should be
-used to extract the \"tag\" (from the object held in the named variable)
-that should uniquely determine if we have a match
-\(i.e. the \"tag\" is the value that will be used to dispatch to the proper
-method(s)).
-Such \"tagcodes\" will be or'd together.
-PRIORITY is an integer from 0 to 100 which is used to sort the tagcodes
-in the `or'.  The higher the priority, the more specific the tag should be.
-More specifically, if PRIORITY is N and we have two objects X and Y
-whose tag (according to TAGCODE) is `eql', then it should be the case
-that for all other (PRIORITY . TAGCODE) where PRIORITY ≤ N, then
-\(eval TAGCODE) for X is `eql' to (eval TAGCODE) for Y.")
-
-(defvar cl-generic-tag-types-function
-  (lambda (tag) (if (eq tag 'cl--generic-type) '(t)))
-  "Function to get the list of types that a given \"tag\" matches.
-They should be sorted from most specific to least specific.")
+(cl-defstruct (cl--generic-generalizer
+               (:constructor nil)
+               (:constructor cl-generic-make-generalizer
+                (priority tagcode-function specializers-function)))
+  (priority nil :type integer)
+  tagcode-function
+  specializers-function)
+
+(defconst cl--generic-t-generalizer
+  (cl-generic-make-generalizer
+   0 (lambda (_name) nil) (lambda (_tag) '(t))))
 
 (cl-defstruct (cl--generic-method
                (:constructor nil)
-               (:constructor cl--generic-method-make
+               (:constructor cl--generic-make-method
                 (specializers qualifiers uses-cnm function))
                (:predicate nil))
   (specializers nil :read-only t :type list)
@@ -115,8 +113,7 @@ They should be sorted from most specific to least 
specific.")
 
 (cl-defstruct (cl--generic
                (:constructor nil)
-               (:constructor cl--generic-make
-                (name &optional dispatches method-table))
+               (:constructor cl--generic-make (name))
                (:predicate nil))
   (name nil :type symbol :read-only t)  ;Pointer back to the symbol.
   ;; `dispatches' holds a list of (ARGNUM . TAGCODES) where ARGNUM is the index
@@ -125,8 +122,13 @@ They should be sorted from most specific to least 
specific.")
   ;; on which to dispatch and PRIORITY is the priority of each expression to
   ;; decide in which order to sort them.
   ;; The most important dispatch is last in the list (and the least is first).
-  (dispatches nil :type (list-of (cons natnum (list-of tagcode))))
-  (method-table nil :type (list-of cl--generic-method)))
+  (dispatches nil :type (list-of (cons natnum (list-of generalizers))))
+  (method-table nil :type (list-of cl--generic-method))
+  (options nil :type list))
+
+(defun cl-generic-function-options (generic)
+  "Return the options of the generic function GENERIC."
+  (cl--generic-options generic))
 
 (defmacro cl--generic (name)
   `(get ,name 'cl--generic))
@@ -170,20 +172,34 @@ is appropriate to use.  Specific methods are defined with 
`cl-defmethod'.
 With this implementation the ARGS are currently ignored.
 OPTIONS-AND-METHODS currently understands:
 - (:documentation DOCSTRING)
-- (declare DECLARATIONS)"
+- (declare DECLARATIONS)
+- (:argument-precedence-order &rest ARGS)
+- (:method [QUALIFIERS...] ARGS &rest BODY)
+BODY, if present, is used as the body of a default method.
+
+\(fn NAME ARGS [DOC-STRING] [OPTIONS-AND-METHODS...] &rest BODY)"
   (declare (indent 2) (doc-string 3))
-  (let* ((docprop (assq :documentation options-and-methods))
-         (doc (cond ((stringp (car-safe options-and-methods))
-                     (pop options-and-methods))
-                    (docprop
-                     (prog1
-                         (cadr docprop)
-                       (setq options-and-methods
-                             (delq docprop options-and-methods))))))
-         (declarations (assq 'declare options-and-methods)))
-    (when declarations
-      (setq options-and-methods
-            (delq declarations options-and-methods)))
+  (let* ((doc (if (stringp (car-safe options-and-methods))
+                  (pop options-and-methods)))
+         (declarations nil)
+         (methods ())
+         (options ())
+         next-head)
+    (while (progn (setq next-head (car-safe (car options-and-methods)))
+                  (or (keywordp next-head)
+                      (eq next-head 'declare)))
+      (pcase next-head
+        (`:documentation
+         (when doc (error "Multiple doc strings for %S" name))
+         (setq doc (cadr (pop options-and-methods))))
+        (`declare
+         (when declarations (error "Multiple `declare' for %S" name))
+         (setq declarations (pop options-and-methods)))
+        (`:method (push (cdr (pop options-and-methods)) methods))
+        (_ (push (pop options-and-methods) options))))
+    (when options-and-methods
+      ;; Anything remaining is assumed to be a default method body.
+      (push `(,args ,@options-and-methods) methods))
     `(progn
        ,(when (eq 'setf (car-safe name))
           (pcase-let ((`(,setter . ,code) (cl--generic-setf-rewrite
@@ -200,8 +216,10 @@ OPTIONS-AND-METHODS currently understands:
                          nil))))
                  (cdr declarations))
        (defalias ',name
-         (cl-generic-define ',name ',args ',options-and-methods)
-         ,(help-add-fundoc-usage doc args)))))
+         (cl-generic-define ',name ',args ',(nreverse options))
+         ,(help-add-fundoc-usage doc args))
+       ,@(mapcar (lambda (method) `(cl-defmethod ,name ,@method))
+                 (nreverse methods)))))
 
 (defun cl--generic-mandatory-args (args)
   (let ((res ()))
@@ -210,10 +228,10 @@ OPTIONS-AND-METHODS currently understands:
     (nreverse res)))
 
 ;;;###autoload
-(defun cl-generic-define (name args options-and-methods)
+(defun cl-generic-define (name args options)
   (let ((generic (cl-generic-ensure-function name))
         (mandatory (cl--generic-mandatory-args args))
-        (apo (assq :argument-precedence-order options-and-methods)))
+        (apo (assq :argument-precedence-order options)))
     (setf (cl--generic-dispatches generic) nil)
     (when apo
       (dolist (arg (cdr apo))
@@ -222,6 +240,7 @@ OPTIONS-AND-METHODS currently understands:
           (push (list (- (length mandatory) (length pos)))
                 (cl--generic-dispatches generic)))))
     (setf (cl--generic-method-table generic) nil)
+    (setf (cl--generic-options generic) options)
     (cl--generic-make-function generic)))
 
 (defmacro cl-generic-current-method-specializers ()
@@ -341,7 +360,7 @@ which case this method will be invoked when the argument is 
`eql' to VAL.
          ;; But in practice, it's common to use `cl-defmethod'
          ;; without a previous `cl-defgeneric'.
          (declare-function ,name "")
-         (cl-generic-define-method ',name ',qualifiers ',args
+         (cl-generic-define-method ',name ',(nreverse qualifiers) ',args
                                    ,uses-cnm ,fun)))))
 
 (defun cl--generic-member-method (specializers qualifiers methods)
@@ -359,28 +378,33 @@ which case this method will be invoked when the argument 
is `eql' to VAL.
          (mandatory (cl--generic-mandatory-args args))
          (specializers
           (mapcar (lambda (arg) (if (consp arg) (cadr arg) t)) mandatory))
-         (method (cl--generic-method-make
+         (method (cl--generic-make-method
                   specializers qualifiers uses-cnm function))
          (mt (cl--generic-method-table generic))
          (me (cl--generic-member-method specializers qualifiers mt))
          (dispatches (cl--generic-dispatches generic))
          (i 0))
     (dolist (specializer specializers)
-      (let* ((tagcode (funcall cl-generic-tagcode-function specializer 'arg))
+      (let* ((generalizers (cl-generic-generalizers specializer))
              (x (assq i dispatches)))
         (unless x
-          (setq x (list i (funcall cl-generic-tagcode-function t 'arg)))
+          (setq x (cons i (cl-generic-generalizers t)))
           (setf (cl--generic-dispatches generic)
                 (setq dispatches (cons x dispatches))))
-        (unless (member tagcode (cdr x))
-          (setf (cdr x)
-                (nreverse (sort (cons tagcode (cdr x))
-                                #'car-less-than-car))))
+        (dolist (generalizer generalizers)
+          (unless (member generalizer (cdr x))
+            (setf (cdr x)
+                  (sort (cons generalizer (cdr x))
+                        (lambda (x y)
+                          (> (cl--generic-generalizer-priority x)
+                             (cl--generic-generalizer-priority y)))))))
         (setq i (1+ i))))
     (if me (setcar me method)
       (setf (cl--generic-method-table generic) (cons method mt)))
     (cl-pushnew `(cl-defmethod . (,(cl--generic-name generic) . ,specializers))
                 current-load-list :test #'equal)
+    ;; FIXME: Try to avoid re-constructing a new function if the old one
+    ;; is still valid (e.g. still empty method cache)?
     (let ((gfun (cl--generic-make-function generic))
           ;; Prevent `defalias' from recording this as the definition site of
           ;; the generic function.
@@ -399,62 +423,73 @@ which case this method will be invoked when the argument 
is `eql' to VAL.
 
 (defvar cl--generic-dispatchers (make-hash-table :test #'equal))
 
-(defun cl--generic-get-dispatcher (tagcodes dispatch-arg)
+(defun cl--generic-get-dispatcher (dispatch)
   (cl--generic-with-memoization
-      (gethash (cons dispatch-arg tagcodes) cl--generic-dispatchers)
-    (let ((lexical-binding t)
-          (tag-exp `(or ,@(mapcar #'cdr
-                                 ;; Minor optimization: since this tag-exp is
-                                 ;; only used to lookup the method-cache, it
-                                 ;; doesn't matter if the default value is some
-                                 ;; constant or nil.
-                                 (if (macroexp-const-p (car (last tagcodes)))
-                                     (butlast tagcodes)
-                                   tagcodes))))
-          (extraargs ()))
+      (gethash dispatch cl--generic-dispatchers)
+    (let* ((dispatch-arg (car dispatch))
+           (generalizers (cdr dispatch))
+           (lexical-binding t)
+           (tagcodes
+            (mapcar (lambda (generalizer)
+                      (funcall (cl--generic-generalizer-tagcode-function
+                                generalizer)
+                               'arg))
+                    generalizers))
+           (typescodes
+            (mapcar (lambda (generalizer)
+                      `(funcall 
',(cl--generic-generalizer-specializers-function
+                                   generalizer)
+                                ,(funcall 
(cl--generic-generalizer-tagcode-function
+                                           generalizer)
+                                          'arg)))
+                    generalizers))
+           (tag-exp
+            ;; Minor optimization: since this tag-exp is
+            ;; only used to lookup the method-cache, it
+            ;; doesn't matter if the default value is some
+            ;; constant or nil.
+            `(or ,@(if (macroexp-const-p (car (last tagcodes)))
+                       (butlast tagcodes)
+                     tagcodes)))
+           (extraargs ()))
       (dotimes (_ dispatch-arg)
         (push (make-symbol "arg") extraargs))
+      ;; FIXME: For generic functions with a single method (or with 2 methods,
+      ;; one of which always matches), using a tagcode + hash-table is
+      ;; overkill: better just use a `cl-typep' test.
       (byte-compile
-       `(lambda (generic dispatches-left)
+       `(lambda (generic dispatches-left methods)
           (let ((method-cache (make-hash-table :test #'eql)))
             (lambda (,@extraargs arg &rest args)
               (apply (cl--generic-with-memoization
                          (gethash ,tag-exp method-cache)
                        (cl--generic-cache-miss
-                        generic ',dispatch-arg dispatches-left
-                        (list ,@(mapcar #'cdr tagcodes))))
+                        generic ',dispatch-arg dispatches-left methods
+                        ,(if (cdr typescodes)
+                             `(append ,@typescodes) (car typescodes))))
                      ,@extraargs arg args))))))))
 
 (defun cl--generic-make-function (generic)
-  (let* ((dispatches (cl--generic-dispatches generic))
-         (dispatch
+  (cl--generic-make-next-function generic
+                                  (cl--generic-dispatches generic)
+                                  (cl--generic-method-table generic)))
+
+(defun cl--generic-make-next-function (generic dispatches methods)
+  (let* ((dispatch
           (progn
             (while (and dispatches
-                        (member (cdar dispatches)
-                                '(nil ((0 . 'cl--generic-type)))))
+                        (let ((x (nth 1 (car dispatches))))
+                          ;; No need to dispatch for `t' specializers.
+                          (or (null x) (equal x cl--generic-t-generalizer))))
               (setq dispatches (cdr dispatches)))
             (pop dispatches))))
-    (if (null dispatch)
-        (cl--generic-build-combined-method
-         (cl--generic-name generic)
-        (cl--generic-method-table generic))
-      (let ((dispatcher (cl--generic-get-dispatcher
-                         (cdr dispatch) (car dispatch))))
-        (funcall dispatcher generic dispatches)))))
-
-(defvar cl-generic-method-combination-function
-  #'cl--generic-standard-method-combination
-  "Function to build the effective method.
-Called with 2 arguments: NAME and METHOD-ALIST.
-It should return an effective method, i.e. a function that expects the same
-arguments as the methods, and calls those methods in some appropriate order.
-NAME is the name (a symbol) of the corresponding generic function.
-METHOD-ALIST is a list of elements (QUALIFIERS . METHODS) where
-QUALIFIERS is a list of qualifiers, and METHODS is a list of the selected
-methods for that qualifier list.
-The METHODS lists are sorted from most generic first to most specific last.
-The function can use `cl-generic-call-method' to create functions that call 
those
-methods.")
+    (if (not (and dispatch
+                  ;; If there's no method left, there's no point checking
+                  ;; further arguments.
+                  methods))
+        (cl--generic-build-combined-method generic methods)
+      (let ((dispatcher (cl--generic-get-dispatcher dispatch)))
+        (funcall dispatcher generic dispatches methods)))))
 
 (defvar cl--generic-combined-method-memoization
   (make-hash-table :test #'equal :weakness 'value)
@@ -463,27 +498,37 @@ This is particularly useful when many different tags 
select the same set
 of methods, since this table then allows us to share a single combined-method
 for all those different tags in the method-cache.")
 
-(defun cl--generic-build-combined-method (generic-name methods)
-  (cl--generic-with-memoization
-      (gethash (cons generic-name methods)
-               cl--generic-combined-method-memoization)
-    (let ((mets-by-qual ()))
-      (dolist (method methods)
-        (let* ((qualifiers (cl--generic-method-qualifiers method))
-               (x (assoc qualifiers mets-by-qual)))
-          ;; FIXME: sadly, alist-get only uses `assq' and we need `assoc'.
-          ;;(push (cdr qm) (alist-get qualifiers mets-by-qual)))
-          (if x
-              (push method (cdr x))
-            (push (list qualifiers method) mets-by-qual))))
-      (funcall cl-generic-method-combination-function
-               generic-name mets-by-qual))))
+(define-error 'cl--generic-cyclic-definition "Cyclic definition: %S")
+
+(defun cl--generic-build-combined-method (generic methods)
+  (if (null methods)
+      ;; Special case needed to fix a circularity during bootstrap.
+      (cl--generic-standard-method-combination generic methods)
+    (let ((f
+           (cl--generic-with-memoization
+               ;; FIXME: Since the fields of `generic' are modified, this
+               ;; hash-table won't work right, because the hashes will change!
+               ;; It's not terribly serious, but reduces the effectiveness of
+               ;; the table.
+               (gethash (cons generic methods)
+                        cl--generic-combined-method-memoization)
+             (puthash (cons generic methods) :cl--generic--under-construction
+                      cl--generic-combined-method-memoization)
+             (condition-case nil
+                 (cl-generic-combine-methods generic methods)
+               ;; Special case needed to fix a circularity during bootstrap.
+               (cl--generic-cyclic-definition
+                (cl--generic-standard-method-combination generic methods))))))
+      (if (eq f :cl--generic--under-construction)
+          (signal 'cl--generic-cyclic-definition
+                  (list (cl--generic-name generic)))
+        f))))
 
 (defun cl--generic-no-next-method-function (generic method)
   (lambda (&rest args)
     (apply #'cl-no-next-method generic method args)))
 
-(defun cl-generic-call-method (generic-name method &optional fun)
+(defun cl-generic-call-method (generic method &optional fun)
   "Return a function that calls METHOD.
 FUN is the function that should be called when METHOD calls
 `call-next-method'."
@@ -491,7 +536,7 @@ FUN is the function that should be called when METHOD calls
       (cl--generic-method-function method)
     (let ((met-fun (cl--generic-method-function method))
           (next (or fun (cl--generic-no-next-method-function
-                         generic-name method))))
+                         generic method))))
       (lambda (&rest args)
         (apply met-fun
                ;; FIXME: This sucks: passing just `next' would
@@ -503,42 +548,122 @@ FUN is the function that should be called when METHOD 
calls
                  (apply next (or cnm-args args)))
                args)))))
 
-(defun cl--generic-standard-method-combination (generic-name mets-by-qual)
-  (dolist (x mets-by-qual)
-    (unless (member (car x) '(() (:after) (:before) (:around)))
-      (error "Unsupported qualifiers in function %S: %S" generic-name (car 
x))))
-  (cond
-   ((null mets-by-qual)
-    (lambda (&rest args)
-      (apply #'cl-no-applicable-method generic-name args)))
-   ((null (alist-get nil mets-by-qual))
-    (lambda (&rest args)
-      (apply #'cl-no-primary-method generic-name args)))
-   (t
-    (let* ((fun nil)
-           (ab-call (lambda (m) (cl-generic-call-method generic-name m)))
-           (before
-            (mapcar ab-call (reverse (cdr (assoc '(:before) mets-by-qual)))))
-           (after (mapcar ab-call (cdr (assoc '(:after) mets-by-qual)))))
-      (dolist (method (cdr (assoc nil mets-by-qual)))
-        (setq fun (cl-generic-call-method generic-name method fun)))
-      (when (or after before)
-        (let ((next fun))
-          (setq fun (lambda (&rest args)
-                      (dolist (bf before)
-                        (apply bf args))
-                      (prog1
-                          (apply next args)
-                        (dolist (af after)
-                          (apply af args)))))))
-      (dolist (method (cdr (assoc '(:around) mets-by-qual)))
-        (setq fun (cl-generic-call-method generic-name method fun)))
-      fun))))
+;; Standard CLOS name.
+(defalias 'cl-method-qualifiers #'cl--generic-method-qualifiers)
+
+(defun cl--generic-standard-method-combination (generic methods)
+  (let ((mets-by-qual ()))
+    (dolist (method methods)
+      (let ((qualifiers (cl-method-qualifiers method)))
+        (if (eq (car qualifiers) :extra) (setq qualifiers (cddr qualifiers)))
+        (unless (member qualifiers '(() (:after) (:before) (:around)))
+          (error "Unsupported qualifiers in function %S: %S"
+                 (cl--generic-name generic) qualifiers))
+        (push method (alist-get (car qualifiers) mets-by-qual))))
+    (cond
+     ((null mets-by-qual)
+      (lambda (&rest args)
+        (apply #'cl-no-applicable-method generic args)))
+     ((null (alist-get nil mets-by-qual))
+      (lambda (&rest args)
+        (apply #'cl-no-primary-method generic args)))
+     (t
+      (let* ((fun nil)
+             (ab-call (lambda (m) (cl-generic-call-method generic m)))
+             (before
+              (mapcar ab-call (reverse (cdr (assoc :before mets-by-qual)))))
+             (after (mapcar ab-call (cdr (assoc :after mets-by-qual)))))
+        (dolist (method (cdr (assoc nil mets-by-qual)))
+          (setq fun (cl-generic-call-method generic method fun)))
+        (when (or after before)
+          (let ((next fun))
+            (setq fun (lambda (&rest args)
+                        (dolist (bf before)
+                          (apply bf args))
+                        (prog1
+                            (apply next args)
+                          (dolist (af after)
+                            (apply af args)))))))
+        (dolist (method (cdr (assoc :around mets-by-qual)))
+          (setq fun (cl-generic-call-method generic method fun)))
+        fun)))))
+
+(defun cl--generic-cache-miss (generic
+                               dispatch-arg dispatches-left methods-left types)
+  (let ((methods '()))
+    (dolist (method methods-left)
+      (let* ((specializer (or (nth dispatch-arg
+                                   (cl--generic-method-specializers method))
+                              t))
+             (m (member specializer types)))
+        (when m
+          (push (cons (length m) method) methods))))
+    ;; Sort the methods, most specific first.
+    ;; It would be tempting to sort them once and for all in the method-table
+    ;; rather than here, but the order might depend on the actual argument
+    ;; (e.g. for multiple inheritance with defclass).
+    (setq methods (nreverse (mapcar #'cdr (sort methods #'car-less-than-car))))
+    (cl--generic-make-next-function generic dispatches-left methods)))
+
+(cl-defgeneric cl-generic-generalizers (specializer)
+  "Return a list of generalizers for a given SPECIALIZER.
+To each kind of `specializer', corresponds a `generalizer' which describes
+how to extract a \"tag\" from an object which will then let us check if this
+object matches the specializer.  A typical example of a \"tag\" would be the
+type of an object.  It's called a `generalizer' because it
+takes a specific object and returns a more general approximation,
+denoting a set of objects to which it belongs.
+A generalizer gives us the chunk of code which the
+dispatch function needs to use to extract the \"tag\" of an object, as well
+as a function which turns this tag into an ordered list of
+`specializers' that this object matches.
+The code which extracts the tag should be as fast as possible.
+The tags should be chosen according to the following rules:
+- The tags should not be too specific: similar objects which match the
+  same list of specializers should ideally use the same (`eql') tag.
+  This insures that the cached computation of the applicable
+  methods for one object can be reused for other objects.
+- Corollary: objects which don't match any of the relevant specializers
+  should ideally all use the same tag (typically nil).
+  This insures that this cache does not grow unnecessarily large.
+- Two different generalizers G1 and G2 should not use the same tag
+  unless they use it for the same set of objects.  IOW, if G1.tag(X1) =
+  G2.tag(X2) then G1.tag(X1) = G2.tag(X1) = G1.tag(X2) = G2.tag(X2).
+- If G1.priority > G2.priority and G1.tag(X1) = G1.tag(X2) and this tag is
+  non-nil, then you have to make sure that the G2.tag(X1) = G2.tag(X2).
+  This is because the method-cache is only indexed with the first non-nil
+  tag (by order of decreasing priority).")
+
+
+(cl-defgeneric cl-generic-combine-methods (generic methods)
+  "Build the effective method made of METHODS.
+It should return a function that expects the same arguments as the methods, and
+ calls those methods in some appropriate order.
+GENERIC is the generic function (mostly used for its name).
+METHODS is the list of the selected methods.
+The METHODS list is sorted from most specific first to most generic last.
+The function can use `cl-generic-call-method' to create functions that call 
those
+methods.")
+
+;; Temporary definition to let the next defmethod succeed.
+(fset 'cl-generic-generalizers
+      (lambda (_specializer) (list cl--generic-t-generalizer)))
+(fset 'cl-generic-combine-methods
+      #'cl--generic-standard-method-combination)
+
+(cl-defmethod cl-generic-generalizers (specializer)
+  "Support for the catch-all `t' specializer."
+  (if (eq specializer t) (list cl--generic-t-generalizer)
+    (error "Unknown specializer %S" specializer)))
+
+(cl-defmethod cl-generic-combine-methods (generic methods)
+  "Standard support for :after, :before, :around, and `:extra NAME' 
qualifiers."
+  (cl--generic-standard-method-combination generic methods))
 
 (defconst cl--generic-nnm-sample (cl--generic-no-next-method-function t t))
 (defconst cl--generic-cnm-sample
   (funcall (cl--generic-build-combined-method
-            nil (list (cl--generic-method-make () () t #'identity)))))
+            nil (list (cl--generic-make-method () () t #'identity)))))
 
 (defun cl--generic-isnot-nnm-p (cnm)
   "Return non-nil if CNM is the function that calls `cl-no-next-method'."
@@ -566,24 +691,6 @@ FUN is the function that should be called when METHOD calls
           (setq cnm-env (cdr cnm-env)))))
     (error "Haven't found no-next-method-sample in cnm-sample")))
 
-(defun cl--generic-cache-miss (generic dispatch-arg dispatches-left tags)
-  (let ((types (apply #'append (mapcar cl-generic-tag-types-function tags)))
-        (methods '()))
-    (dolist (method (cl--generic-method-table generic))
-      (let* ((specializer (or (nth dispatch-arg
-                                   (cl--generic-method-specializers method))
-                              t))
-             (m (member specializer types)))
-        (when m
-          (push (cons (length m) method) methods))))
-    ;; Sort the methods, most specific first.
-    ;; It would be tempting to sort them once and for all in the method-table
-    ;; rather than here, but the order might depend on the actual argument
-    ;; (e.g. for multiple inheritance with defclass).
-    (setq methods (nreverse (mapcar #'cdr (sort methods #'car-less-than-car))))
-    (cl--generic-make-function (cl--generic-make (cl--generic-name generic)
-                                                 dispatches-left methods))))
-
 ;;; Define some pre-defined generic functions, used internally.
 
 (define-error 'cl-no-method "No method for %S")
@@ -593,19 +700,16 @@ FUN is the function that should be called when METHOD 
calls
   'cl-no-method)
 
 (cl-defgeneric cl-no-next-method (generic method &rest args)
-  "Function called when `cl-call-next-method' finds no next method.")
-(cl-defmethod cl-no-next-method (generic method &rest args)
-  (signal 'cl-no-next-method `(,generic ,method ,@args)))
+  "Function called when `cl-call-next-method' finds no next method."
+  (signal 'cl-no-next-method `(,(cl--generic-name generic) ,method ,@args)))
 
 (cl-defgeneric cl-no-applicable-method (generic &rest args)
-  "Function called when a method call finds no applicable method.")
-(cl-defmethod cl-no-applicable-method (generic &rest args)
-  (signal 'cl-no-applicable-method `(,generic ,@args)))
+  "Function called when a method call finds no applicable method."
+  (signal 'cl-no-applicable-method `(,(cl--generic-name generic) ,@args)))
 
 (cl-defgeneric cl-no-primary-method (generic &rest args)
-  "Function called when a method call finds no primary method.")
-(cl-defmethod cl-no-primary-method (generic &rest args)
-  (signal 'cl-no-primary-method `(,generic ,@args)))
+  "Function called when a method call finds no primary method."
+  (signal 'cl-no-primary-method `(,(cl--generic-name generic) ,@args)))
 
 (defun cl-call-next-method (&rest _args)
   "Function to call the next applicable method.
@@ -700,27 +804,57 @@ Can only be used from within the lexical body of a 
primary or around method."
                 (insert "'.\n")))
             (insert "\n" (or (nth 2 info) "Undocumented") "\n\n")))))))
 
+;;; Support for (head <val>) specializers.
+
+;; For both the `eql' and the `head' specializers, the dispatch
+;; is unsatisfactory.  Basically, in the "common&fast case", we end up doing
+;;
+;;    (let ((tag (gethash value <tagcode-hashtable>)))
+;;      (funcall (gethash tag <method-cache>)))
+;;
+;; whereas we'd like to just do
+;;
+;;      (funcall (gethash value <method-cache>)))
+;;
+;; but the problem is that the method-cache is normally "open ended", so
+;; a nil means "not computed yet" and if we bump into it, we dutifully fill the
+;; corresponding entry, whereas we'd want to just fallback on some default
+;; effective method (so as not to fill the cache with lots of redundant
+;; entries).
+
+(defvar cl--generic-head-used (make-hash-table :test #'eql))
+
+(defconst cl--generic-head-generalizer
+  (cl-generic-make-generalizer
+   80 (lambda (name) `(gethash (car-safe ,name) cl--generic-head-used))
+   (lambda (tag) (if (eq (car-safe tag) 'head) (list tag)))))
+
+(cl-defmethod cl-generic-generalizers :extra "head" (specializer)
+  "Support for the `(head VAL)' specializers."
+  ;; We have to implement `head' here using the :extra qualifier,
+  ;; since we can't use the `head' specializer to implement itself.
+  (if (not (eq (car-safe specializer) 'head))
+      (cl-call-next-method)
+    (cl--generic-with-memoization
+        (gethash (cadr specializer) cl--generic-head-used) specializer)
+    (list cl--generic-head-generalizer)))
+
 ;;; Support for (eql <val>) specializers.
 
 (defvar cl--generic-eql-used (make-hash-table :test #'eql))
 
-(add-function :before-until cl-generic-tagcode-function
-              #'cl--generic-eql-tagcode)
-(defun cl--generic-eql-tagcode (type name)
-  (when (eq (car-safe type) 'eql)
-    (puthash (cadr type) type cl--generic-eql-used)
-    `(100 . (gethash ,name cl--generic-eql-used))))
+(defconst cl--generic-eql-generalizer
+  (cl-generic-make-generalizer
+   100 (lambda (name) `(gethash ,name cl--generic-eql-used))
+   (lambda (tag) (if (eq (car-safe tag) 'eql) (list tag)))))
 
-(add-function :before-until cl-generic-tag-types-function
-              #'cl--generic-eql-tag-types)
-(defun cl--generic-eql-tag-types (tag)
-  (if (eq (car-safe tag) 'eql) (list tag)))
+(cl-defmethod cl-generic-generalizers ((specializer (head eql)))
+  "Support for the `(eql VAL)' specializers."
+  (puthash (cadr specializer) specializer cl--generic-eql-used)
+  (list cl--generic-eql-generalizer))
 
 ;;; Support for cl-defstructs specializers.
 
-(add-function :before-until cl-generic-tagcode-function
-              #'cl--generic-struct-tagcode)
-
 (defun cl--generic-struct-tag (name)
   `(and (vectorp ,name)
         (> (length ,name) 0)
@@ -728,41 +862,46 @@ Can only be used from within the lexical body of a 
primary or around method."
           (if (eq (symbol-function tag) :quick-object-witness-check)
               tag))))
 
-(defun cl--generic-struct-tagcode (type name)
-  (and (symbolp type)
-       (get type 'cl-struct-type)
-       (or (null (car (get type 'cl-struct-type)))
-           (error "Can't dispatch on cl-struct %S: type is %S"
-                  type (car (get type 'cl-struct-type))))
-       (or (equal '(cl-tag-slot) (car (get type 'cl-struct-slots)))
-           (error "Can't dispatch on cl-struct %S: no tag in slot 0"
-                  type))
-       ;; It's tempting to use (and (vectorp ,name) (aref ,name 0))
-       ;; but that would suffer from some problems:
-       ;; - the vector may have size 0.
-       ;; - when called on an actual vector (rather than an object), we'd
-       ;;   end up returning an arbitrary value, possibly colliding with
-       ;;   other tagcode's values.
-       ;; - it can also result in returning all kinds of irrelevant
-       ;;   values which would end up filling up the method-cache with
-       ;;   lots of irrelevant/redundant entries.
-       ;; FIXME: We could speed this up by introducing a dedicated
-       ;; vector type at the C level, so we could do something like
-       ;; (and (vector-objectp ,name) (aref ,name 0))
-       `(50 . ,(cl--generic-struct-tag name))))
-
-(add-function :before-until cl-generic-tag-types-function
-              #'cl--generic-struct-tag-types)
-(defun cl--generic-struct-tag-types (tag)
-  ;; FIXME: cl-defstruct doesn't make it easy for us.
+(defun cl--generic-struct-specializers (tag)
   (and (symbolp tag)
        ;; A method call shouldn't itself mess with the match-data.
        (string-match-p "\\`cl-struct-\\(.*\\)" (symbol-name tag))
        (let ((types (list (intern (substring (symbol-name tag) 10)))))
-         (while (get (car types) 'cl-struct-include)
-           (push (get (car types) 'cl-struct-include) types))
-         (push 'cl-structure-object types) ;The "parent type" of all 
cl-structs.
-         (nreverse types))))
+        (while (get (car types) 'cl-struct-include)
+          (push (get (car types) 'cl-struct-include) types))
+        (push 'cl-structure-object types) ;The "parent type" of all cl-structs.
+        (nreverse types))))
+
+(defconst cl--generic-struct-generalizer
+  (cl-generic-make-generalizer
+   50 #'cl--generic-struct-tag
+   #'cl--generic-struct-specializers))
+
+(cl-defmethod cl-generic-generalizers :extra "cl-struct" (type)
+  "Support for dispatch on cl-struct types."
+  (or
+   (and (symbolp type)
+        (get type 'cl-struct-type)
+        (or (null (car (get type 'cl-struct-type)))
+            (error "Can't dispatch on cl-struct %S: type is %S"
+                   type (car (get type 'cl-struct-type))))
+        (or (equal '(cl-tag-slot) (car (get type 'cl-struct-slots)))
+            (error "Can't dispatch on cl-struct %S: no tag in slot 0"
+                   type))
+        ;; It's tempting to use (and (vectorp ,name) (aref ,name 0))
+        ;; but that would suffer from some problems:
+        ;; - the vector may have size 0.
+        ;; - when called on an actual vector (rather than an object), we'd
+        ;;   end up returning an arbitrary value, possibly colliding with
+        ;;   other tagcode's values.
+        ;; - it can also result in returning all kinds of irrelevant
+        ;;   values which would end up filling up the method-cache with
+        ;;   lots of irrelevant/redundant entries.
+        ;; FIXME: We could speed this up by introducing a dedicated
+        ;; vector type at the C level, so we could do something like
+        ;; (and (vector-objectp ,name) (aref ,name 0))
+        (list cl--generic-struct-generalizer))
+   (cl-call-next-method)))
 
 ;;; Dispatch on "system types".
 
@@ -784,23 +923,23 @@ Can only be used from within the lexical body of a 
primary or around method."
     (sequence)
     (number)))
 
-(add-function :before-until cl-generic-tagcode-function
-              #'cl--generic-typeof-tagcode)
-(defun cl--generic-typeof-tagcode (type name)
+(defconst cl--generic-typeof-generalizer
+  (cl-generic-make-generalizer
+   ;; FIXME: We could also change `type-of' to return `null' for nil.
+   10 (lambda (name) `(if ,name (type-of ,name) 'null))
+   (lambda (tag) (and (symbolp tag) (assq tag cl--generic-typeof-types)))))
+
+(cl-defmethod cl-generic-generalizers :extra "typeof" (type)
+  "Support for dispatch on builtin types."
   ;; FIXME: Add support for other types accepted by `cl-typep' such
   ;; as `character', `atom', `face', `function', ...
-  (and (assq type cl--generic-typeof-types)
-       (progn
-         (if (memq type '(vector array sequence))
-             (message "`%S' also matches CL structs and EIEIO classes" type))
-         ;; FIXME: We could also change `type-of' to return `null' for nil.
-         `(10 . (if ,name (type-of ,name) 'null)))))
-
-(add-function :before-until cl-generic-tag-types-function
-              #'cl--generic-typeof-types)
-(defun cl--generic-typeof-types (tag)
-  (and (symbolp tag)
-       (assq tag cl--generic-typeof-types)))
+  (or
+   (and (assq type cl--generic-typeof-types)
+        (progn
+          (if (memq type '(vector array sequence))
+              (message "`%S' also matches CL structs and EIEIO classes" type))
+          (list cl--generic-typeof-generalizer)))
+   (cl-call-next-method)))
 
 ;;; Just for kicks: dispatch on major-mode
 ;;
@@ -814,7 +953,7 @@ Can only be used from within the lexical body of a primary 
or around method."
 
 ;; (defvar cl--generic-major-modes (make-hash-table :test #'eq))
 ;;
-;; (add-function :before-until cl-generic-tagcode-function
+;; (add-function :before-until cl-generic-generalizer-function
 ;;               #'cl--generic-major-mode-tagcode)
 ;; (defun cl--generic-major-mode-tagcode (type name)
 ;;   (if (eq 'major-mode (car-safe type))
diff --git a/lisp/emacs-lisp/eieio-compat.el b/lisp/emacs-lisp/eieio-compat.el
index 7468c04..ee8e731 100644
--- a/lisp/emacs-lisp/eieio-compat.el
+++ b/lisp/emacs-lisp/eieio-compat.el
@@ -124,30 +124,38 @@ Summary:
        (defgeneric ,method ,args)
        (eieio--defmethod ',method ',key ',class #',code))))
 
-(add-function :before-until cl-generic-tagcode-function
-              #'eieio--generic-static-tagcode)
-(defun eieio--generic-static-tagcode (type name)
-  (and (eq 'eieio--static (car-safe type))
-       `(40 . (cond
-               ((symbolp ,name) (eieio--class-v ,name))
-               ((vectorp ,name) (aref ,name 0))))))
-
-(add-function :around cl-generic-tag-types-function
-              #'eieio--generic-static-tag-types)
-(defun eieio--generic-static-tag-types (orig-fun tag)
-  (cond
-   ((or (eieio--class-p tag)
-        (and (symbolp tag) (boundp tag) (eieio--class-p (symbol-value tag))))
-    (let ((superclasses (funcall orig-fun tag))
-          (types ()))
-      ;; Interleave: (subclass <foo>) (eieio--static <foo>) <subclass <bar>) ..
-      (dolist (superclass superclasses)
-        (push superclass types)
-        (push `(eieio--static
-                ,(if (consp superclass) (cadr superclass) superclass))
-              types))
-      (nreverse types)))
-   (t (funcall orig-fun tag))))
+(defconst eieio--generic-static-symbol-generalizer
+  (cl-generic-make-generalizer
+   ;; Give it a slightly higher priority than `subclass' so that the
+   ;; interleaved list comes before subclass's non-interleaved list.
+   61 (lambda (name) `(and (symbolp ,name) (eieio--class-v ,name)))
+   (lambda (tag)
+     (when (eieio--class-p tag)
+       (let ((superclasses (eieio--generic-subclass-specializers tag))
+             (specializers ()))
+         (dolist (superclass superclasses)
+           (push superclass specializers)
+           (push `(eieio--static ,(cadr superclass)) specializers))
+         (nreverse specializers))))))
+(defconst eieio--generic-static-object-generalizer
+  (cl-generic-make-generalizer
+   ;; Give it a slightly higher priority than `class' so that the
+   ;; interleaved list comes before the class's non-interleaved list.
+   51 #'cl--generic-struct-tag
+   (lambda (tag)
+     (and (symbolp tag) (boundp tag) (setq tag (symbol-value tag))
+          (eieio--class-p tag)
+          (let ((superclasses (eieio--class-precedence-list tag))
+                (specializers ()))
+            (dolist (superclass superclasses)
+              (setq superclass (eieio--class-symbol superclass))
+              (push superclass specializers)
+              (push `(eieio--static ,superclass) specializers))
+            (nreverse specializers))))))
+
+(cl-defmethod cl-generic-generalizers ((_specializer (head eieio--static)))
+  (list eieio--generic-static-symbol-generalizer
+        eieio--generic-static-object-generalizer))
 
 ;;;###autoload
 (defun eieio--defgeneric-init-form (method doc-string)
diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el
index 408922a..1e226c1 100644
--- a/lisp/emacs-lisp/eieio-core.el
+++ b/lisp/emacs-lisp/eieio-core.el
@@ -1203,25 +1203,26 @@ method invocation orders of the involved classes."
 
 ;;;; General support to dispatch based on the type of the argument.
 
-(add-function :before-until cl-generic-tagcode-function
-              #'eieio--generic-tagcode)
-(defun eieio--generic-tagcode (type name)
+(defconst eieio--generic-generalizer
+  (cl-generic-make-generalizer
+   ;; Use the exact same tagcode as for cl-struct, so that methods
+   ;; that dispatch on both kinds of objects get to share this
+   ;; part of the dispatch code.
+   50 #'cl--generic-struct-tag
+   (lambda (tag)
+        (and (symbolp tag) (boundp tag) (eieio--class-p (symbol-value tag))
+             (mapcar #'eieio--class-symbol
+                     (eieio--class-precedence-list (symbol-value tag)))))))
+
+(cl-defmethod cl-generic-generalizers :extra "class" (specializer)
   ;; CLHS says:
   ;;    A class must be defined before it can be used as a parameter
   ;;    specializer in a defmethod form.
   ;; So we can ignore types that are not known to denote classes.
-  (and (eieio--class-p (eieio--class-object type))
-       ;; Use the exact same code as for cl-struct, so that methods
-       ;; that dispatch on both kinds of objects get to share this
-       ;; part of the dispatch code.
-       `(50 . ,(cl--generic-struct-tag name))))
-
-(add-function :before-until cl-generic-tag-types-function
-              #'eieio--generic-tag-types)
-(defun eieio--generic-tag-types (tag)
-  (and (symbolp tag) (boundp tag) (eieio--class-p (symbol-value tag))
-       (mapcar #'eieio--class-symbol
-               (eieio--class-precedence-list (symbol-value tag)))))
+  (or
+   (and (eieio--class-p (eieio--class-object specializer))
+        (list eieio--generic-generalizer))
+   (cl-call-next-method)))
 
 ;;;; Dispatch for arguments which are classes.
 
@@ -1231,23 +1232,22 @@ method invocation orders of the involved classes."
 ;; would not make much sense (e.g. to which argument should it apply?).
 ;; Instead, we add a new "subclass" specializer.
 
-(add-function :before-until cl-generic-tagcode-function
-              #'eieio--generic-subclass-tagcode)
-(defun eieio--generic-subclass-tagcode (type name)
-  (when (eq 'subclass (car-safe type))
-    `(60 . (and (symbolp ,name) (eieio--class-v ,name)))))
-
-(add-function :before-until cl-generic-tag-types-function
-              #'eieio--generic-subclass-tag-types)
-(defun eieio--generic-subclass-tag-types (tag)
+(defun eieio--generic-subclass-specializers (tag)
   (when (eieio--class-p tag)
     (mapcar (lambda (class)
-              `(subclass
-                ,(if (symbolp class) class (eieio--class-symbol class))))
+              `(subclass ,(eieio--class-symbol class)))
             (eieio--class-precedence-list tag))))
 
+(defconst eieio--generic-subclass-generalizer
+  (cl-generic-make-generalizer
+   60 (lambda (name) `(and (symbolp ,name) (eieio--class-v ,name)))
+   #'eieio--generic-subclass-specializers))
+
+(cl-defmethod cl-generic-generalizers ((_specializer (head subclass)))
+  (list eieio--generic-subclass-generalizer))
+
 
-;;;### (autoloads nil "eieio-compat" "eieio-compat.el" 
"5b04c9a8fff2bd3f3d3ac54aba0f65b7")
+;;;### (autoloads nil "eieio-compat" "eieio-compat.el" 
"25a66814a400e7dea16bf0f3bfe245ed")
 ;;; Generated autoloads from eieio-compat.el
 
 (autoload 'eieio--defalias "eieio-compat" "\
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
index 885fb00..0d001bf 100644
--- a/lisp/emacs-lisp/package.el
+++ b/lisp/emacs-lisp/package.el
@@ -1695,9 +1695,10 @@ similar to an entry in `package-alist'.  Save the cached 
copy to
 
 ;;;###autoload
 (defun package-refresh-contents ()
-  "Download the ELPA archive description if needed.
-This informs Emacs about the latest versions of all packages, and
-makes them available for download."
+  "Download descriptions of all configured ELPA packages.
+For each archive configured in the variable `package-archives',
+inform Emacs about the latest versions of all packages it offers,
+and make them available for download."
   (interactive)
   ;; FIXME: Do it asynchronously.
   (unless (file-exists-p package-user-dir)
diff --git a/lisp/emacs-lisp/seq.el b/lisp/emacs-lisp/seq.el
index ad4c353..59b9140 100644
--- a/lisp/emacs-lisp/seq.el
+++ b/lisp/emacs-lisp/seq.el
@@ -4,7 +4,8 @@
 
 ;; Author: Nicolas Petton <address@hidden>
 ;; Keywords: sequences
-;; Version: 1.2
+;; Version: 1.3
+;; Package: seq
 
 ;; Maintainer: address@hidden
 
@@ -171,7 +172,7 @@ The result is a sequence of the same type as SEQ."
   (if (listp seq)
       (sort (seq-copy seq) pred)
     (let ((result (seq-sort pred (append seq nil))))
-      (seq--into result (type-of seq)))))
+      (seq-into result (type-of seq)))))
 
 (defun seq-contains-p (seq elt &optional testfn)
   "Return the first element in SEQ that equals to ELT.
@@ -265,10 +266,11 @@ See also the function `nreverse', which is used more 
often."
                  seq)
         (if (listp seq)
             result
-          (seq--into result (type-of seq)))))))
+          (seq-into result (type-of seq)))))))
 
-(defun seq--into (seq type)
-  "Convert the sequence SEQ into a sequence of type TYPE."
+(defun seq-into (seq type)
+  "Convert the sequence SEQ into a sequence of type TYPE.
+TYPE can be one of the following symbols: vector, string or list."
   (pcase type
     (`vector (vconcat seq))
     (`string (concat seq))
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index af49782..763267c 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,24 @@
+2015-03-08  Rasmus Pank Roulund  <address@hidden>
+
+       * gnus-notifications.el (gnus-notifications-action): Raise window
+       frame.
+       (gnus-notifications-action): Allow mark as read.
+       (gnus-notifications-notify): Show uption to mark as read.
+
+2015-03-08  Adam Sjøgren  <address@hidden>
+
+       * message.el (message-insert-formatted-citation-line): Change %F to
+       fall back to email address if no first name could be determined.
+
+2015-03-07  Stefan Monnier  <address@hidden>
+
+       * registry.el (registry-lookup-breaks-before-lexbind, registry-lookup)
+       (registry-search, registry-delete, registry-size, registry-insert)
+       (registry-reindex, registry-collect-prune-candidates):
+       * gnus-registry.el (gnus-registry-fixup-registry)
+       (gnus-registry-remove-extra-data): Use slot names rather than initarg
+       names in `oref' and `oset'.
+
 2015-02-26  Katsumi Yamaoka  <address@hidden>
 
        * gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part):
diff --git a/lisp/gnus/gnus-notifications.el b/lisp/gnus/gnus-notifications.el
index 2941cc4..f73aac1 100644
--- a/lisp/gnus/gnus-notifications.el
+++ b/lisp/gnus/gnus-notifications.el
@@ -75,12 +75,19 @@ not get notifications."
   "Map notifications ids to messages.")
 
 (defun gnus-notifications-action (id key)
-  (when (string= key "read")
-    (let ((group-article (assoc id gnus-notifications-id-to-msg)))
-      (when group-article
-        (let ((group (cadr group-article))
-              (article (nth 2 group-article)))
-          (gnus-fetch-group group (list article)))))))
+  (let ((group-article (assoc id gnus-notifications-id-to-msg)))
+    (when group-article
+      (let ((group (cadr group-article))
+            (article (nth 2 group-article)))
+        (cond ((string= key "read")
+               (gnus-fetch-group group (list article))
+               (gnus-select-frame-set-input-focus (selected-frame)))
+              ((string= key "mark-read")
+               (gnus-update-read-articles
+                group
+                (delq article (gnus-list-of-unread-articles group)))
+               ;; gnus-group-refresh-group
+               (gnus-group-update-group group)))))))
 
 (defun gnus-notifications-notify (from subject photo-file)
   "Send a notification about a new mail.
@@ -90,7 +97,7 @@ Return a notification id if any, or t on success."
        'notifications-notify
        :title from
        :body subject
-       :actions '("read" "Read")
+       :actions '("read" "Read" "mark-read" "Mark As Read")
        :on-action 'gnus-notifications-action
        :app-icon (gnus-funcall-no-warning
                   'image-search-load-path "gnus/gnus.png")
diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el
index 2017ea2..ac903a2 100644
--- a/lisp/gnus/gnus-registry.el
+++ b/lisp/gnus/gnus-registry.el
@@ -276,20 +276,20 @@ This can slow pruning down.  Set to nil to perform no 
sorting."
 
 (defun gnus-registry-fixup-registry (db)
   (when db
-    (let ((old (oref db :tracked)))
-      (oset db :precious
+    (let ((old (oref db tracked)))
+      (oset db precious
             (append gnus-registry-extra-entries-precious
                     '()))
-      (oset db :max-size
+      (oset db max-size
             (or gnus-registry-max-entries
                 most-positive-fixnum))
-      (oset db :prune-factor
+      (oset db prune-factor
             (or gnus-registry-prune-factor
                0.1))
-      (oset db :tracked
+      (oset db tracked
             (append gnus-registry-track-extra
                     '(mark group keyword)))
-      (when (not (equal old (oref db :tracked)))
+      (when (not (equal old (oref db tracked)))
         (gnus-message 9 "Reindexing the Gnus registry (tracked change)")
         (registry-reindex db))))
   db)
@@ -1242,7 +1242,7 @@ from your existing entries."
   (when extra
     (let ((db gnus-registry-db))
       (registry-reindex db)
-      (loop for k being the hash-keys of (oref db :data)
+      (loop for k being the hash-keys of (oref db data)
            using (hash-value v)
            do (let ((newv (delq nil (mapcar #'(lambda (entry)
                                                 (unless (member (car entry) 
extra)
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index a06de2a..112f0ba 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -989,7 +989,8 @@ are replaced:
   %n   The mail address, e.g. \"address@hidden".
   %N   The real name if present, e.g.: \"John Doe\", else fall
        back to the mail address.
-  %F   The first name if present, e.g.: \"John\".
+  %F   The first name if present, e.g.: \"John\", else fall
+       back to the mail address.
   %L   The last name if present, e.g.: \"Doe\".
   %Z, %z   The time zone in the numeric form, e.g.:\"+0000\".
 
@@ -4039,7 +4040,7 @@ See `message-citation-line-format'."
                       (setq fname lname lname newlname)))))
              ;; The following letters are not used in `format-time-string':
              (push ?E lst) (push "<E>" lst)
-             (push ?F lst) (push fname lst)
+             (push ?F lst) (push (or fname name-or-net) lst)
              ;; We might want to use "" instead of "<X>" later.
              (push ?J lst) (push "<J>" lst)
              (push ?K lst) (push "<K>" lst)
diff --git a/lisp/gnus/registry.el b/lisp/gnus/registry.el
index 55b83a8..881eb9f 100644
--- a/lisp/gnus/registry.el
+++ b/lisp/gnus/registry.el
@@ -155,7 +155,7 @@
 (defmethod registry-lookup ((db registry-db) keys)
   "Search for KEYS in the registry-db THIS.
 Returns an alist of the key followed by the entry in a list, not a cons cell."
-  (let ((data (oref db :data)))
+  (let ((data (oref db data)))
     (delq nil
          (mapcar
           (lambda (k)
@@ -166,7 +166,7 @@ Returns an alist of the key followed by the entry in a 
list, not a cons cell."
 (defmethod registry-lookup-breaks-before-lexbind ((db registry-db) keys)
   "Search for KEYS in the registry-db THIS.
 Returns an alist of the key followed by the entry in a list, not a cons cell."
-  (let ((data (oref db :data)))
+  (let ((data (oref db data)))
     (delq nil
          (loop for key in keys
                when (gethash key data)
@@ -227,7 +227,7 @@ The test order is to check :all first, then :member, then 
:regex."
     (let ((all (plist-get spec :all))
          (member (plist-get spec :member))
          (regex (plist-get spec :regex)))
-      (loop for k being the hash-keys of (oref db :data)
+      (loop for k being the hash-keys of (oref db data)
            using (hash-values v)
            when (or
                  ;; :all non-nil returns all
@@ -243,10 +243,10 @@ The test order is to check :all first, then :member, then 
:regex."
 If KEYS is nil, use SPEC to do a search.
 Updates the secondary ('tracked') indices as well.
 With assert non-nil, errors out if the key does not exist already."
-  (let* ((data (oref db :data))
+  (let* ((data (oref db data))
         (keys (or keys
                   (apply 'registry-search db spec)))
-        (tracked (oref db :tracked)))
+        (tracked (oref db tracked)))
 
     (dolist (key keys)
       (let ((entry (gethash key data)))
@@ -273,8 +273,8 @@ With assert non-nil, errors out if the key does not exist 
already."
 
 (defmethod registry-size ((db registry-db))
   "Returns the size of the registry-db object THIS.
-This is the key count of the :data slot."
-  (hash-table-count (oref db :data)))
+This is the key count of the `data' slot."
+  (hash-table-count (oref db data)))
 
 (defmethod registry-full ((db registry-db))
   "Checks if registry-db THIS is full."
@@ -286,7 +286,7 @@ This is the key count of the :data slot."
 Updates the secondary ('tracked') indices as well.
 Errors out if the key exists already."
 
-  (assert (not (gethash key (oref db :data))) nil
+  (assert (not (gethash key (oref db data))) nil
          "Key already exists in database")
 
   (assert (not (registry-full db))
@@ -294,10 +294,10 @@ Errors out if the key exists already."
          "registry max-size limit reached")
 
   ;; store the entry
-  (puthash key entry (oref db :data))
+  (puthash key entry (oref db data))
 
   ;; store the secondary indices
-  (dolist (tr (oref db :tracked))
+  (dolist (tr (oref db tracked))
     ;; for every value in the entry under that key...
     (dolist (val (cdr-safe (assq tr entry)))
       (let* ((value-keys (registry-lookup-secondary-value db tr val)))
@@ -308,8 +308,8 @@ Errors out if the key exists already."
 (defmethod registry-reindex ((db registry-db))
   "Rebuild the secondary indices of registry-db THIS."
   (let ((count 0)
-       (expected (* (length (oref db :tracked)) (registry-size db))))
-    (dolist (tr (oref db :tracked))
+       (expected (* (length (oref db tracked)) (registry-size db))))
+    (dolist (tr (oref db tracked))
       (let (values)
        (maphash
         (lambda (key v)
@@ -322,7 +322,7 @@ Errors out if the key exists already."
             (let* ((value-keys (registry-lookup-secondary-value db tr val)))
               (push key value-keys)
               (registry-lookup-secondary-value db tr val value-keys))))
-        (oref db :data))))))
+        (oref db data))))))
 
 (defmethod registry-prune ((db registry-db) &optional sortfunc)
   "Prunes the registry-db object DB.
@@ -359,7 +359,7 @@ entries first and return candidates from beginning of list."
   (let* ((precious (oref db :precious))
         (precious-p (lambda (entry-key)
                       (cdr (memq (car entry-key) precious))))
-        (data (oref db :data))
+        (data (oref db data))
         (candidates (cl-loop for k being the hash-keys of data
                              using (hash-values v)
                              when (notany precious-p v)
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 1b8dd06..7d50ece 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -4713,7 +4713,7 @@ With prefix argument N moves forward N messages with 
these labels.
 
 ;;;***
 
-;;;### (autoloads nil "rmailmm" "rmailmm.el" 
"43e0b9f680c4d2581640b286bd4b3107")
+;;;### (autoloads nil "rmailmm" "rmailmm.el" 
"a17df5ef8968113c8f6a78cf85c82da4")
 ;;; Generated autoloads from rmailmm.el
 
 (autoload 'rmail-mime "rmailmm" "\
diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el
index 4c8ebf0..5e61c09 100644
--- a/lisp/net/browse-url.el
+++ b/lisp/net/browse-url.el
@@ -1117,11 +1117,7 @@ whenever a document would otherwise be loaded in a new 
window, it
 is loaded in a new tab in an existing window instead.
 
 Non-interactively, this uses the optional second argument NEW-WINDOW
-instead of `browse-url-new-window-flag'.
-
-On MS Windows, this ignores `browse-url-new-window-flag' and
-`browse-url-firefox-new-window-is-tab', as well as the NEW-WINDOW argument.
-It always uses a new window."
+instead of `browse-url-new-window-flag'."
   (interactive (browse-url-interactive-arg "URL: "))
   (setq url (browse-url-encode-url url))
   (let* ((process-environment (browse-url-process-environment)))
@@ -1130,13 +1126,10 @@ It always uses a new window."
            browse-url-firefox-program
            (append
             browse-url-firefox-arguments
-            ;; FIXME someone should check if this limitation
-            ;; still applies.
-            (unless (memq system-type '(windows-nt ms-dos))
-              (if (browse-url-maybe-new-window new-window)
-                  (if browse-url-firefox-new-window-is-tab
-                      '("-new-tab")
-                    '("-new-window"))))
+            (if (browse-url-maybe-new-window new-window)
+               (if browse-url-firefox-new-window-is-tab
+                   '("-new-tab")
+                 '("-new-window")))
             (list url)))))
 
 ;;;###autoload
diff --git a/lisp/net/eudcb-bbdb.el b/lisp/net/eudcb-bbdb.el
index 5be2bec..bd5d453 100644
--- a/lisp/net/eudcb-bbdb.el
+++ b/lisp/net/eudcb-bbdb.el
@@ -42,6 +42,24 @@
 (defvar eudc-bbdb-current-query nil)
 (defvar eudc-bbdb-current-return-attributes nil)
 
+(defvar bbdb-version)
+
+(defun eudc-bbdb-field (field-symbol)
+  "Convert FIELD-SYMBOL so that it is recognized by the current BBDB version.
+BBDB < 3 used `net'; BBDB >= 3 uses `mail'."
+  ;; This just-in-time translation permits upgrading from BBDB 2 to
+  ;; BBDB 3 without restarting Emacs.
+  (if (and (eq field-symbol 'net)
+          (or
+           ;; MELPA versions of BBDB may have a bad package version,
+           ;; but they're all version 3 or later.
+           (equal bbdb-version "@PACKAGE_VERSION@")
+           ;; Development versions of BBDB can have the format "X.YZ
+           ;; devo".  Split the string just in case.
+           (version<= "3" (car (split-string bbdb-version)))))
+      'mail
+    field-symbol))
+
 (defvar eudc-bbdb-attributes-translation-alist
   '((name . lastname)
     (email . net)
@@ -85,7 +103,9 @@
                    (progn
                      (setq bbdb-val
                            (eval (list (intern (concat "bbdb-record-"
-                                                       (symbol-name attr)))
+                                                       (symbol-name
+                                                        (eudc-bbdb-field
+                                                         attr))))
                                        'record)))
                      (if (listp bbdb-val)
                          (if eudc-bbdb-enable-substring-matches
@@ -168,7 +188,7 @@ The record is filtered according to 
`eudc-bbdb-current-return-attributes'"
        (setq val (eval
                   (list (intern
                          (concat "bbdb-record-"
-                                 (symbol-name attr)))
+                                 (symbol-name (eudc-bbdb-field attr))))
                         'record))))
        (t
        (error "Unknown BBDB attribute")))
diff --git a/lisp/net/eudcb-ldap.el b/lisp/net/eudcb-ldap.el
index 1d426a7..d22dff6 100644
--- a/lisp/net/eudcb-ldap.el
+++ b/lisp/net/eudcb-ldap.el
@@ -74,13 +74,10 @@
 
 (defun eudc-ldap-cleanup-record-simple (record)
   "Do some cleanup in a RECORD to make it suitable for EUDC."
+  (declare (obsolete eudc-ldap-cleanup-record-filtering-addresses "25.1"))
   (mapcar
    (function
     (lambda (field)
-      ;; Some servers return case-sensitive names (e.g. givenName
-      ;; instead of givenname); downcase the field's name so that it
-      ;; can be matched against
-      ;; eudc-ldap-attributes-translation-alist.
       (cons (intern (downcase (car field)))
            (if (cdr (cdr field))
                (cdr field)
@@ -90,22 +87,36 @@
 (defun eudc-filter-$ (string)
   (mapconcat 'identity (split-string string "\\$") "\n"))
 
-;; Cleanup a LDAP record to make it suitable for EUDC:
-;;   Make the record a cons-cell instead of a list if it is single-valued
-;;   Filter the $ character in addresses into \n if not done by the LDAP lib
 (defun eudc-ldap-cleanup-record-filtering-addresses (record)
-  (mapcar
-   (function
-    (lambda (field)
+  "Clean up RECORD to make it suitable for EUDC.
+Make the record a cons-cell instead of a list if it is
+single-valued.  Change the `$' character in postal addresses to a
+newline.  Combine separate mail fields into one mail field with
+multiple addresses."
+  (let ((clean-up-addresses (or (not (boundp 'ldap-ignore-attribute-codings))
+                               (not ldap-ignore-attribute-codings)))
+       result mail-addresses)
+    (dolist (field record)
+      ;; Some servers return case-sensitive names (e.g. givenName
+      ;; instead of givenname); downcase the field's name so that it
+      ;; can be matched against
+      ;; eudc-ldap-attributes-translation-alist.
       (let ((name (intern (downcase (car field))))
            (value (cdr field)))
-       (if (memq name '(postaladdress registeredaddress))
-           (setq value (mapcar 'eudc-filter-$ value)))
-       (cons name
-             (if (cdr value)
-                 value
-               (car value))))))
-   record))
+       (when (and clean-up-addresses
+                  (memq name '(postaladdress registeredaddress)))
+         (setq value (mapcar 'eudc-filter-$ value)))
+       (if (eq name 'mail)
+           (setq mail-addresses (append mail-addresses value))
+         (push (cons name (if (cdr value)
+                              value
+                            (car value)))
+               result))))
+    (push (cons 'mail (if (cdr mail-addresses)
+                         mail-addresses
+                       (car mail-addresses)))
+          result)
+    (nreverse result)))
 
 (defun eudc-ldap-simple-query-internal (query &optional return-attrs)
   "Query the LDAP server with QUERY.
@@ -118,11 +129,7 @@ RETURN-ATTRS is a list of attributes to return, defaulting 
to
                             (if (listp return-attrs)
                                 (mapcar 'symbol-name return-attrs))))
        final-result)
-    (if (or (not (boundp 'ldap-ignore-attribute-codings))
-           ldap-ignore-attribute-codings)
-       (setq result
-             (mapcar 'eudc-ldap-cleanup-record-filtering-addresses result))
-      (setq result (mapcar 'eudc-ldap-cleanup-record-simple result)))
+    (setq result (mapcar 'eudc-ldap-cleanup-record-filtering-addresses result))
 
     (if (and eudc-strict-return-matches
             return-attrs
@@ -148,7 +155,7 @@ attribute names are returned. Default to `person'"
   (let ((ldap-host-parameters-alist
         (list (cons eudc-server
                     '(scope subtree sizelimit 1)))))
-    (mapcar 'eudc-ldap-cleanup-record-simple
+    (mapcar 'eudc-ldap-cleanup-record-filtering-addresses
            (ldap-search
             (eudc-ldap-format-query-as-rfc1558
              (list (cons "objectclass"
diff --git a/lisp/net/eww.el b/lisp/net/eww.el
index b7ee065..a128ffb 100644
--- a/lisp/net/eww.el
+++ b/lisp/net/eww.el
@@ -49,7 +49,7 @@
   :type 'string)
 
 (defcustom eww-search-prefix "https://duckduckgo.com/html/?q=";
-  "Prefix URL to search engine"
+  "Prefix URL to search engine."
   :version "24.4"
   :group 'eww
   :type 'string)
@@ -254,7 +254,7 @@ word(s) will be searched for via `eww-search-prefix'."
   (cond ((string-match-p "\\`file:/" url))
        ;; Don't mangle file: URLs at all.
         ((string-match-p "\\`ftp://"; url)
-         (user-error "FTP is not supported."))
+         (user-error "FTP is not supported"))
         (t
         ;; Anything that starts with something that vaguely looks
         ;; like a protocol designator is interpreted as a full URL.
@@ -292,7 +292,7 @@ word(s) will be searched for via `eww-search-prefix'."
 
 ;;;###autoload
 (defun eww-open-file (file)
-  "Render a file using EWW."
+  "Render FILE using EWW."
   (interactive "fFile: ")
   (eww (concat "file://"
               (and (memq system-type '(windows-nt ms-dos))
@@ -301,11 +301,17 @@ word(s) will be searched for via `eww-search-prefix'."
 
 ;;;###autoload
 (defun eww-search-words (&optional beg end)
-  "Search the web for the text between the point and marker.
+  "Search the web for the text between BEG and END.
 See the `eww-search-prefix' variable for the search engine used."
   (interactive "r")
   (eww (buffer-substring beg end)))
 
+(defun eww-html-p (content-type)
+  "Return non-nil if CONTENT-TYPE designates an HTML content type.
+Currently this means either text/html or application/xhtml+xml."
+  (member content-type '("text/html"
+                        "application/xhtml+xml")))
+
 (defun eww-render (status url &optional point buffer encode)
   (let ((redirect (plist-get status :redirect)))
     (when redirect
@@ -318,8 +324,7 @@ See the `eww-search-prefix' variable for the search engine 
used."
         (charset (intern
                   (downcase
                    (or (cdr (assq 'charset (cdr content-type)))
-                       (eww-detect-charset (equal (car content-type)
-                                                  "text/html"))
+                       (eww-detect-charset (eww-html-p (car content-type)))
                        "utf-8"))))
         (data-buffer (current-buffer)))
     ;; Save the https peer status.
@@ -332,7 +337,7 @@ See the `eww-search-prefix' variable for the search engine 
used."
                  (string-match-p eww-use-external-browser-for-content-type
                                  (car content-type)))
             (eww-browse-with-external-browser url))
-          ((equal (car content-type) "text/html")
+          ((eww-html-p (car content-type))
            (eww-display-html charset url nil point buffer encode))
           ((equal (car content-type) "application/pdf")
            (eww-display-pdf))
@@ -1363,7 +1368,7 @@ If EXTERNAL is double prefix, browse in new buffer."
       (eww-browse-url url external)))))
 
 (defun eww-same-page-p (url1 url2)
-  "Return non-nil if both URLs represent the same page.
+  "Return non-nil if URL1 and URL2 represent the same page.
 Differences in #targets are ignored."
   (let ((obj1 (url-generic-parse-url url1))
        (obj2 (url-generic-parse-url url2)))
@@ -1413,7 +1418,8 @@ Differences in #targets are ignored."
       (expand-file-name file directory)))
 
 (defun eww-set-character-encoding (charset)
-  "Set character encoding."
+  "Set character encoding to CHARSET.
+If CHARSET is nil then use UTF-8."
   (interactive "zUse character set (default utf-8): ")
   (if (null charset)
       (eww-reload nil 'utf-8)
diff --git a/lisp/net/ldap.el b/lisp/net/ldap.el
index 1df975a..1c604e3 100644
--- a/lisp/net/ldap.el
+++ b/lisp/net/ldap.el
@@ -376,9 +376,19 @@ RFC2252 section 4.3.2")
     (houseidentifier . 15)
     (supportedalgorithms . 49)
     (deltarevocationlist . 9)
-    (dmdname . 15))
+    (dmdname . 15)
+    (carlicense . 15)
+    (departmentnumber . 15)
+    (displayname . 15)
+    (employeenumber . 15)
+    (employeetype . 15)
+    (jpegphoto . 28)
+    (preferredlanguage . 15)
+    (usersmimecertificate . 5)
+    (userpkcs12 . 5))
   "A map of LDAP attribute names to their type object id minor number.
-This table is built from RFC2252 Section 5 and RFC2256 Section 5")
+This table is built from RFC2252 Section 5, RFC2256 Section 5 and
+RFC2798 Section 9.1.1")
 
 
 ;; Coding/decoding functions
diff --git a/lisp/net/tramp-adb.el b/lisp/net/tramp-adb.el
index f5e2019..6696dcf 100644
--- a/lisp/net/tramp-adb.el
+++ b/lisp/net/tramp-adb.el
@@ -44,6 +44,13 @@
   :version "24.4"
   :type 'string)
 
+(defcustom tramp-adb-connect-if-not-connected nil
+  "Try to run `adb connect' if provided device is not connected currently.
+It is used for TCP/IP devices."
+  :group 'tramp
+  :version "25.1"
+  :type 'boolean)
+
 ;;;###tramp-autoload
 (defconst tramp-adb-method "adb"
   "*When this method name is used, forward all calls to Android Debug Bridge.")
@@ -65,12 +72,13 @@
    "[[:space:]]+\\([^[:space:]]+\\)"   ; \3 group
    "[[:space:]]+\\([[:digit:]]+\\)"    ; \4 size
    "[[:space:]]+\\([-[:digit:]]+[[:space:]][:[:digit:]]+\\)" ; \5 date
-   "[[:space:]]+\\(.*\\)$"))           ; \6 filename
+   "[[:space:]]\\(.*\\)$"))            ; \6 filename
 
 ;;;###tramp-autoload
 (add-to-list 'tramp-methods
             `(,tramp-adb-method
-              (tramp-tmpdir "/data/local/tmp")))
+              (tramp-tmpdir "/data/local/tmp")
+               (tramp-default-port 5555)))
 
 ;;;###tramp-autoload
 (add-to-list 'tramp-default-host-alist `(,tramp-adb-method nil ""))
@@ -182,14 +190,27 @@ pass to the OPERATION."
       ;; That's why we use `start-process'.
       (let ((p (start-process
                tramp-adb-program (current-buffer) tramp-adb-program "devices"))
+           (v (vector tramp-adb-method tramp-current-user
+                      tramp-current-host nil nil))
            result)
+       (tramp-message v 6 "%s" (mapconcat 'identity (process-command p) " "))
        (tramp-compat-set-process-query-on-exit-flag p nil)
        (while (eq 'run (process-status p))
          (accept-process-output p 0.1))
        (accept-process-output p 0.1)
+       (tramp-message v 6 "\n%s" (buffer-string))
        (goto-char (point-min))
        (while (search-forward-regexp "^\\(\\S-+\\)[[:space:]]+device$" nil t)
          (add-to-list 'result (list nil (match-string 1))))
+
+       ;; Replace ":" by "#".
+       (mapc
+        (lambda (elt)
+          (setcar
+           (cdr elt)
+           (replace-regexp-in-string
+            ":" tramp-prefix-port-format (car (cdr elt)))))
+        result)
        result))))
 
 (defun tramp-adb-handle-expand-file-name (name &optional dir)
@@ -383,8 +404,10 @@ pass to the OPERATION."
            (tramp-adb-send-command
             v (format "%s -d -a -l %s %s"
                       (tramp-adb-get-ls-command v)
-                      (concat (file-name-as-directory localname) ".")
-                      (concat (file-name-as-directory localname) "..")))
+                      (tramp-shell-quote-argument
+                       (concat (file-name-as-directory localname) "."))
+                      (tramp-shell-quote-argument
+                       (concat (file-name-as-directory localname) ".."))))
            (widen))
          (tramp-adb-sh-fix-ls-output)
          (let ((result (tramp-do-parse-file-attributes-with-ls
@@ -989,12 +1012,51 @@ PRESERVE-UID-GID and PRESERVE-EXTENDED-ATTRIBUTES are 
completely ignored."
          (tramp-set-connection-property v "process-name" nil)
          (tramp-set-connection-property v "process-buffer" nil))))))
 
-;; Helper functions.
+(defun tramp-adb-get-device (vec)
+  "Return full host name from VEC to be used in shell execution.
+E.g. a host name \"192.168.1.1#5555\" returns \"192.168.1.1:5555\"
+     a host name \"R38273882DE\" returns \"R38273882DE\"."
+  ;; Sometimes this is called before there is a connection process
+  ;; yet.  In order to work with the connection cache, we flush all
+  ;; unwanted entries first.
+  (tramp-flush-connection-property nil)
+  (with-tramp-connection-property (tramp-get-connection-process vec) "device"
+    (let* ((method (tramp-file-name-method vec))
+          (host (tramp-file-name-host vec))
+          (port (tramp-file-name-port vec))
+          (devices (mapcar 'cadr (tramp-adb-parse-device-names nil))))
+      (replace-regexp-in-string
+       tramp-prefix-port-format ":"
+       (cond ((member host devices) host)
+            ;; This is the case when the host is connected to the default port.
+            ((member (format "%s%s%d" host tramp-prefix-port-format port)
+                     devices)
+             (format "%s:%d" host port))
+            ;; An empty host name shall be mapped as well, when there
+            ;; is exactly one entry in `devices'.
+            ((and (zerop (length host)) (= (length devices) 1))
+             (car devices))
+            ;; Try to connect device.
+            ((and tramp-adb-connect-if-not-connected
+                  (not (zerop (length host)))
+                  (not (tramp-adb-execute-adb-command
+                         vec "connect"
+                         (replace-regexp-in-string
+                          tramp-prefix-port-format ":" host))))
+             ;; When new device connected, running other adb command (e.g.
+             ;; adb shell) immediately will fail.  To get around this
+             ;; problem, add sleep 0.1 second here.
+             (sleep-for 0.1)
+             host)
+            (t (tramp-error
+                vec 'file-error "Could not find device %s" host)))))))
 
 (defun tramp-adb-execute-adb-command (vec &rest args)
   "Returns nil on success error-output on failure."
-  (when (> (length (tramp-file-name-host vec)) 0)
-    (setq args (append (list "-s" (tramp-file-name-host vec)) args)))
+  (when (and (> (length (tramp-file-name-host vec)) 0)
+            ;; The -s switch is only available for ADB device commands.
+            (not (member (car args) (list "connect" "disconnect"))))
+    (setq args (append (list "-s" (tramp-adb-get-device vec)) args)))
   (with-temp-buffer
     (prog1
        (unless
@@ -1097,7 +1159,12 @@ connection if a previous connection has died for some 
reason."
         (p (get-buffer-process buf))
         (host (tramp-file-name-host vec))
         (user (tramp-file-name-user vec))
-        devices)
+         (device (tramp-adb-get-device vec)))
+
+    ;; Set variables for proper tracing in `tramp-adb-parse-device-names'.
+    (setq tramp-current-method (tramp-file-name-method vec)
+         tramp-current-user   (tramp-file-name-user vec)
+         tramp-current-host   (tramp-file-name-host vec))
 
     ;; Maybe we know already that "su" is not supported.  We cannot
     ;; use a connection property, because we have not checked yet
@@ -1109,20 +1176,13 @@ connection if a previous connection has died for some 
reason."
        (and p (processp p) (memq (process-status p) '(run open)))
       (save-match-data
        (when (and p (processp p)) (delete-process p))
-       (setq devices (mapcar 'cadr (tramp-adb-parse-device-names nil)))
-       (if (not devices)
-           (tramp-error vec 'file-error "No device connected"))
-       (if (and (> (length host) 0) (not (member host devices)))
+       (if (zerop (length device))
            (tramp-error vec 'file-error "Device %s not connected" host))
-       (if (and (> (length devices) 1) (zerop (length host)))
-           (tramp-error
-            vec 'file-error
-            "Multiple Devices connected: No Host/Device specified"))
        (with-tramp-progress-reporter vec 3 "Opening adb shell connection"
          (let* ((coding-system-for-read 'utf-8-dos) ;is this correct?
                 (process-connection-type tramp-process-connection-type)
                 (args (if (> (length host) 0)
-                          (list "-s" host "shell")
+                          (list "-s" device "shell")
                         (list "shell")))
                 (p (let ((default-directory
                            (tramp-compat-temporary-file-directory)))
@@ -1187,4 +1247,5 @@ connection if a previous connection has died for some 
reason."
            (unload-feature 'tramp-adb 'force)))
 
 (provide 'tramp-adb)
+
 ;;; tramp-adb.el ends here
diff --git a/lisp/net/tramp-cache.el b/lisp/net/tramp-cache.el
index fb9d5e8..1e24ea5 100644
--- a/lisp/net/tramp-cache.el
+++ b/lisp/net/tramp-cache.el
@@ -362,7 +362,7 @@ KEY identifies the connection, it is either a process or a 
vector."
             (remhash key cache)))
         cache)
        ;; Dump it.
-       (with-temp-buffer
+       (with-temp-file tramp-persistency-file-name
          (insert
           ";; -*- emacs-lisp -*-"
           ;; `time-stamp-string' might not exist in all (X)Emacs flavors.
@@ -376,9 +376,7 @@ KEY identifies the connection, it is either a process or a 
vector."
           ";; Tramp connection history.  Don't change this file.\n"
           ";; You can delete it, forcing Tramp to reapply the checks.\n\n"
           (with-output-to-string
-            (pp (read (format "(%s)" (tramp-cache-print cache))))))
-         (write-region
-          (point-min) (point-max) tramp-persistency-file-name))))))
+            (pp (read (format "(%s)" (tramp-cache-print cache)))))))))))
 
 (unless noninteractive
   (add-hook 'kill-emacs-hook 'tramp-dump-connection-properties))
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index f3fdb63..76d2b01 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -631,6 +631,7 @@ if (address@hidden) {
 if (($stat[2] & 0170000) == 0120000)
 {
     $type = readlink($ARGV[0]);
+    $type =~ s/\"/\\\\\"/g;
     $type = \"\\\"$type\\\"\";
 }
 elsif (($stat[2] & 0170000) == 040000)
@@ -680,6 +681,7 @@ for($i = 0; $i < $n; $i++)
     if (($stat[2] & 0170000) == 0120000)
     {
         $type = readlink($filename);
+        $type =~ s/\"/\\\\\"/g;
         $type = \"\\\"$type\\\"\";
     }
     elsif (($stat[2] & 0170000) == 040000)
@@ -692,6 +694,7 @@ for($i = 0; $i < $n; $i++)
     };
     $uid = ($ARGV[1] eq \"integer\") ? $stat[4] : \"\\\"\" . 
getpwuid($stat[4]) . \"\\\"\";
     $gid = ($ARGV[1] eq \"integer\") ? $stat[5] : \"\\\"\" . 
getgrgid($stat[5]) . \"\\\"\";
+    $filename =~ s/\"/\\\\\"/g;
     printf(
         \"(\\\"%%s\\\" %%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u.0 %%u 
t (%%u . %%u) (%%u . %%u))\\n\",
         $filename,
@@ -1250,7 +1253,7 @@ target of the symlink differ."
    (format
     ;; On Opsware, pdksh (which is the true name of ksh there) doesn't
     ;; parse correctly the sequence "((".  Therefore, we add a space.
-    "( (%s %s || %s -h %s) && %s -c '((\"%%N\") %%h %s %s %%Xe0 %%Ye0 %%Ze0 
%%se0 \"%%A\" t %%ie0 -1)' %s || echo nil)"
+    "( (%s %s || %s -h %s) && %s -c '((\"%%N\") %%h %s %s %%Xe0 %%Ye0 %%Ze0 
%%se0 \"%%A\" t %%ie0 -1)' \"%s\" || echo nil)"
     (tramp-get-file-exists-command vec)
     (tramp-shell-quote-argument localname)
     (tramp-get-test-command vec)
@@ -1626,45 +1629,44 @@ be non-negative integers."
 (defun tramp-sh-handle-directory-files-and-attributes
   (directory &optional full match nosort id-format)
   "Like `directory-files-and-attributes' for Tramp files."
-  (if (with-parsed-tramp-file-name directory nil
-       (not (or (tramp-get-remote-stat v) (tramp-get-remote-perl v))))
-      (tramp-handle-directory-files-and-attributes
-       directory full match nosort id-format)
-
-    ;; Do it directly.
-    (unless id-format (setq id-format 'integer))
-    (when (file-directory-p directory)
-      (setq directory (expand-file-name directory))
-      (let* ((temp
-             (copy-tree
-              (with-parsed-tramp-file-name directory nil
-                (with-tramp-file-property
-                    v localname
-                    (format "directory-files-and-attributes-%s" id-format)
-                  (save-excursion
-                    (mapcar
-                     (lambda (x)
-                       (cons (car x)
-                             (tramp-convert-file-attributes v (cdr x))))
-                     (cond
-                      ((tramp-get-remote-stat v)
-                       (tramp-do-directory-files-and-attributes-with-stat
-                        v localname id-format))
-                      ((tramp-get-remote-perl v)
-                       (tramp-do-directory-files-and-attributes-with-perl
-                        v localname id-format)))))))))
-            result item)
-
-       (while temp
-         (setq item (pop temp))
-         (when (or (null match) (string-match match (car item)))
-           (when full
-             (setcar item (expand-file-name (car item) directory)))
-           (push item result)))
-
-       (if nosort
-           result
-         (sort result (lambda (x y) (string< (car x) (car y)))))))))
+  (unless id-format (setq id-format 'integer))
+  (when (file-directory-p directory)
+    (setq directory (expand-file-name directory))
+    (let* ((temp
+           (copy-tree
+            (with-parsed-tramp-file-name directory nil
+              (with-tramp-file-property
+                  v localname
+                  (format "directory-files-and-attributes-%s" id-format)
+                (save-excursion
+                  (mapcar
+                   (lambda (x)
+                     (cons (car x)
+                           (tramp-convert-file-attributes v (cdr x))))
+                   (or
+                    (cond
+                     ((tramp-get-remote-stat v)
+                      (tramp-do-directory-files-and-attributes-with-stat
+                       v localname id-format))
+                     ((tramp-get-remote-perl v)
+                      (tramp-do-directory-files-and-attributes-with-perl
+                       v localname id-format))
+                     (t nil)))))))))
+          result item)
+
+      (while temp
+       (setq item (pop temp))
+       (when (or (null match) (string-match match (car item)))
+         (when full
+           (setcar item (expand-file-name (car item) directory)))
+         (push item result)))
+
+      (or (if nosort
+             result
+           (sort result (lambda (x y) (string< (car x) (car y)))))
+         ;; The scripts could fail, for example with huge file size.
+         (tramp-handle-directory-files-and-attributes
+          directory full match nosort id-format)))))
 
 (defun tramp-do-directory-files-and-attributes-with-perl
   (vec localname &optional id-format)
@@ -1692,16 +1694,22 @@ be non-negative integers."
      ;; We must care about file names with spaces, or starting with
      ;; "-"; this would confuse xargs.  "ls -aQ" might be a solution,
      ;; but it does not work on all remote systems.  Therefore, we
-     ;; quote the file names via sed.
-     "cd %s; echo \"(\"; (%s -a | sed -e s/\\$/\\\"/g -e s/^/\\\"/g | "
+     ;; use \000 as file separator.
+     ;; Apostrophes in the stat output are masked as \037 characters, in
+     ;; order to make a proper shell escape of them in file names.
+     "cd %s && echo \"(\"; (%s %s -a | "
      "xargs %s -c "
-     "'(\"%%n\" (\"%%N\") %%h %s %s %%Xe0 %%Ye0 %%Ze0 %%se0 \"%%A\" t %%ie0 
-1)'"
-     " 2>/dev/null); echo \")\"")
+     "'(\037%%n\037 (\037%%N\037) %%h %s %s %%Xe0 %%Ye0 %%Ze0 %%se0 
\037%%A\037 t %%ie0 -1)'"
+     " -- 2>/dev/null | sed -e 's/\"/\\\\\"/g' -e 's/\037/\"/g'); echo \")\"")
     (tramp-shell-quote-argument localname)
     (tramp-get-ls-command vec)
+    ;; On systems which have no quoting style, file names with
+    ;; special characters could fail.
+    (if (tramp-get-ls-command-with-quoting-style vec)
+       "--quoting-style=shell" "")
     (tramp-get-remote-stat vec)
-    (if (eq id-format 'integer) "%ue0" "\"%U\"")
-    (if (eq id-format 'integer) "%ge0" "\"%G\""))))
+    (if (eq id-format 'integer) "%ue0" "\037%U\037")
+    (if (eq id-format 'integer) "%ge0" "\037%G\037"))))
 
 ;; This function should return "foo/" for directories and "bar" for
 ;; files.
@@ -1772,7 +1780,7 @@ be non-negative integers."
                              1 0)))
 
               (format (concat
-                       "(\\cd %s 2>&1 && (%s %s -a 2>/dev/null"
+                       "(cd %s 2>&1 && (%s -a %s 2>/dev/null"
                        ;; `ls' with wildcard might fail with `Argument
                        ;; list too long' error in some corner cases; if
                        ;; `ls' fails after `cd' succeeded, chances are
@@ -1796,7 +1804,7 @@ be non-negative integers."
                       ;; sub-directories.
                       (if (zerop (length filename))
                           "."
-                        (concat (tramp-shell-quote-argument filename) "* -d"))
+                        (format "-d %s*" (tramp-shell-quote-argument 
filename)))
                       (tramp-get-ls-command v)
                       (tramp-get-test-command v))))
 
@@ -2078,23 +2086,20 @@ file names."
 First arg OP is either `copy' or `rename' and indicates the operation.
 FILENAME is the source file, NEWNAME the target file.
 KEEP-DATE is non-nil if NEWNAME should have the same timestamp as FILENAME."
-  (with-temp-buffer
-    ;; We must disable multibyte, because binary data shall not be
-    ;; converted.  We remove `tramp-file-name-handler' from
-    ;; `inhibit-file-name-handlers'; otherwise the file name handler
-    ;; for `insert-file-contents' might be deactivated in some corner
-    ;; cases.
-    (set-buffer-multibyte nil)
-    (let ((coding-system-for-read 'binary)
-         (jka-compr-inhibit t)
-         (inhibit-file-name-handlers
-          (remq 'tramp-file-name-handler inhibit-file-name-handlers)))
-      (insert-file-contents-literally filename))
-    ;; We don't want the target file to be compressed, so we let-bind
-    ;; `jka-compr-inhibit' to t.
-    (let ((coding-system-for-write 'binary)
-         (jka-compr-inhibit t))
-      (write-region (point-min) (point-max) newname nil 'no-message)))
+  ;; We must disable multibyte, because binary data shall not be
+  ;; converted.  We don't want the target file to be compressed, so we
+  ;; let-bind `jka-compr-inhibit' to t.
+  ;; We remove `tramp-file-name-handler' from
+  ;; `inhibit-file-name-handlers'; otherwise the file name handler for
+  ;; `insert-file-contents' might be deactivated in some corner cases.
+  (let ((coding-system-for-read 'binary)
+       (coding-system-for-write 'binary)
+       (jka-compr-inhibit t)
+       (inhibit-file-name-handlers
+        (remq 'tramp-file-name-handler inhibit-file-name-handlers)))
+    (with-temp-file newname
+      (set-buffer-multibyte nil)
+      (insert-file-contents-literally filename)))
   ;; KEEP-DATE handling.
   (when keep-date (set-file-times newname (nth 5 (file-attributes filename))))
   ;; Set the mode.
@@ -2541,7 +2546,7 @@ The method used must be an out-of-band method."
     (tramp-flush-file-property v (file-name-directory localname))
     (tramp-flush-directory-property v localname)
     (tramp-barf-unless-okay
-     v (format "%s %s"
+     v (format "cd / && %s %s"
               (if recursive "rm -rf" "rmdir")
               (tramp-shell-quote-argument localname))
      "Couldn't delete %s" directory)))
@@ -2799,7 +2804,7 @@ the result will be a local, non-Tramp, file name."
          (setq uname
                (with-tramp-connection-property v uname
                  (tramp-send-command
-                  v (format "cd %s; pwd" (tramp-shell-quote-argument uname)))
+                  v (format "cd %s && pwd" (tramp-shell-quote-argument uname)))
                  (with-current-buffer (tramp-get-buffer v)
                    (goto-char (point-min))
                    (buffer-substring (point) (point-at-eol)))))
@@ -3037,7 +3042,7 @@ the result will be a local, non-Tramp, file name."
          (unwind-protect
               (setq ret
                    (if (tramp-send-command-and-check
-                        v (format "\\cd %s; %s"
+                        v (format "cd %s && %s"
                                   (tramp-shell-quote-argument localname)
                                   command)
                         t t)
@@ -3116,17 +3121,14 @@ the result will be a local, non-Tramp, file name."
                    ;; If local decoding is a function, we call it.
                    ;; We must disable multibyte, because
                    ;; `uudecode-decode-region' doesn't handle it
-                   ;; correctly.
-                   (with-temp-buffer
-                     (set-buffer-multibyte nil)
-                     (insert-buffer-substring (tramp-get-buffer v))
-                     (funcall loc-dec (point-min) (point-max))
-                     ;; Unset `file-name-handler-alist'.  Otherwise,
-                     ;; epa-file gets confused.
-                     (let (file-name-handler-alist
-                           (coding-system-for-write 'binary))
-                       (write-region
-                        (point-min) (point-max) tmpfile nil 'no-message)))
+                   ;; correctly.  Unset `file-name-handler-alist'.
+                   ;; Otherwise, epa-file gets confused.
+                   (let (file-name-handler-alist
+                         (coding-system-for-write 'binary))
+                     (with-temp-file tmpfile
+                       (set-buffer-multibyte nil)
+                       (insert-buffer-substring (tramp-get-buffer v))
+                       (funcall loc-dec (point-min) (point-max))))
 
                  ;; If tramp-decoding-function is not defined for this
                  ;; method, we invoke tramp-decoding-command instead.
@@ -3708,8 +3710,8 @@ Only send the definition if it has not already been done."
          (tramp-error vec 'file-error "No Perl available on remote host"))
        (tramp-barf-unless-okay
         vec
-        (format "%s () {\n%s\n}" name
-                (format script (tramp-get-remote-perl vec)))
+        (format "%s () {\n%s\n}"
+                name (format script (tramp-get-remote-perl vec)))
         "Script %s sending failed" name)
        (tramp-set-connection-property
         (tramp-get-connection-process vec) "scripts" (cons name scripts))))))
@@ -5157,7 +5159,8 @@ Return ATTR."
       (with-current-buffer (tramp-get-connection-buffer vec)
        (while candidates
          (goto-char (point-min))
-         (if (string-match (concat "^" (car candidates) "$") (buffer-string))
+         (if (string-match (format "^%s\r?$" (regexp-quote (car candidates)))
+                           (buffer-string))
              (setq locale (car candidates)
                    candidates nil)
            (setq candidates (cdr candidates)))))
@@ -5199,6 +5202,17 @@ Return ATTR."
       (tramp-send-command-and-check
        vec (format "%s --dired -al /dev/null" (tramp-get-ls-command vec))))))
 
+(defun tramp-get-ls-command-with-quoting-style (vec)
+  (save-match-data
+    (with-tramp-connection-property vec "ls-quoting-style"
+      (tramp-message vec 5 "Checking, whether `ls --quoting-style=shell' 
works")
+      ;; Some "ls" versions are sensible wrt the order of arguments,
+      ;; they fail when "-al" is after the "--dired" argument (for
+      ;; example on FreeBSD).
+      (tramp-send-command-and-check
+       vec (format "%s --quoting-style=shell -al /dev/null"
+                  (tramp-get-ls-command vec))))))
+
 (defun tramp-get-test-command (vec)
   (with-tramp-connection-property vec "test"
     (tramp-message vec 5 "Finding a suitable `test' command")
@@ -5486,14 +5500,18 @@ function cell is returned to be applied on a buffer."
              `(lambda (beg end)
                 (,coding beg end)
                 (let ((coding-system-for-write 'binary)
-                      (coding-system-for-read 'binary))
+                      (coding-system-for-read 'binary)
+                      (default-directory
+                        (tramp-compat-temporary-file-directory)))
                   (apply
                    'call-process-region (point-min) (point-max)
                    (car (split-string ,compress)) t t nil
                    (cdr (split-string ,compress)))))
            `(lambda (beg end)
               (let ((coding-system-for-write 'binary)
-                    (coding-system-for-read 'binary))
+                    (coding-system-for-read 'binary)
+                    (default-directory
+                      (tramp-compat-temporary-file-directory)))
                 (apply
                  'call-process-region beg end
                  (car (split-string ,compress)) t t nil
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index a03affa..953525f 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -73,6 +73,7 @@
   "Edit remote files with a combination of ssh, scp, etc."
   :group 'files
   :group 'comm
+  :link '(custom-manual "(tramp)Top")
   :version "22.1")
 
 ;; Maybe we need once a real Tramp mode, with key bindings etc.
@@ -557,7 +558,7 @@ if you need to change this."
   :type 'string)
 
 (defcustom tramp-login-prompt-regexp
-  ".*ogin\\( .*\\)?: *"
+  ".*\\(user\\|login\\)\\( .*\\)?: *"
   "Regexp matching login-like prompts.
 The regexp should match at end of buffer.
 
@@ -2263,7 +2264,7 @@ Falls back to normal file name handler if no Tramp file 
name handler exists."
   "Load Tramp file name handler, and perform OPERATION."
   ;; Avoid recursive loading of tramp.el.  `temporary-file-directory'
   ;; does not exist in XEmacs, so we must use something else.
-  (let ((default-directory (or (symbol-value 'temporary-file-directory) "/")))
+  (let ((default-directory "/"))
     (load "tramp" nil t))
   (apply operation args)))
 
@@ -3352,10 +3353,11 @@ User is always nil."
 
 (defun tramp-handle-unhandled-file-name-directory (_filename)
   "Like `unhandled-file-name-directory' for Tramp files."
-  ;; With Emacs 23, we could simply return `nil'.  But we must keep it
-  ;; for backward compatibility.  "~/" cannot be returned, because
-  ;; there might be machines without a HOME directory (like hydra).
-  "/")
+  ;; Starting with Emacs 23, we must simply return `nil'.  But we must
+  ;; keep backward compatibility, also with XEmacs.  "~/" cannot be
+  ;; returned, because there might be machines without a HOME
+  ;; directory (like hydra).
+  (and (< emacs-major-version 23) "/"))
 
 (defun tramp-handle-set-visited-file-modtime (&optional time-list)
   "Like `set-visited-file-modtime' for Tramp files."
diff --git a/lisp/net/trampver.el b/lisp/net/trampver.el
index 70092d2..226ec9f 100644
--- a/lisp/net/trampver.el
+++ b/lisp/net/trampver.el
@@ -31,7 +31,7 @@
 ;; should be changed only there.
 
 ;;;###tramp-autoload
-(defconst tramp-version "2.2.11-24.5"
+(defconst tramp-version "2.2.12-pre"
   "This version of Tramp.")
 
 ;;;###tramp-autoload
@@ -44,7 +44,7 @@
                      (= emacs-major-version 21)
                      (>= emacs-minor-version 4)))
             "ok"
-          (format "Tramp 2.2.11-24.5 is not fit for %s"
+          (format "Tramp 2.2.12-pre is not fit for %s"
                   (when (string-match "^.*$" (emacs-version))
                     (match-string 0 (emacs-version)))))))
   (unless (string-match "\\`ok\\'" x) (error "%s" x)))
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index c25e52c..d7712e4 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -534,6 +534,7 @@ getting timeout messages."
   (let ((table (make-syntax-table)))
     (c-populate-syntax-table table)
     (modify-syntax-entry ?$ "_" table)
+    (modify-syntax-entry ?` "\"" table)
     table)
   "Syntax table for `js-mode'.")
 
diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el
index d1e42ca..060bc84 100644
--- a/lisp/progmodes/ruby-mode.el
+++ b/lisp/progmodes/ruby-mode.el
@@ -1817,7 +1817,7 @@ It will be properly highlighted even when the call omits 
parens.")
   (defvar ruby-syntax-before-regexp-re
     (concat
      ;; Special tokens that can't be followed by a division operator.
-     "\\(^\\|[[=(,~;<>]"
+     "\\(^\\|[[{|=(,~;<>!]"
      ;; Distinguish ternary operator tokens.
      ;; FIXME: They don't really have to be separated with spaces.
      "\\|[?:] "
@@ -2053,8 +2053,9 @@ See `font-lock-syntax-table'.")
           "rescue"
           "retry"
           "return"
-          "then"
+          "self"
           "super"
+          "then"
           "unless"
           "undef"
           "until"
@@ -2149,13 +2150,21 @@ See `font-lock-syntax-table'.")
     "\\_<\\(?:BEGIN\\|END\\)\\_>\\|^__END__$"
     ;; Variables.
     (,(concat ruby-font-lock-keyword-beg-re
-              "\\_<\\(nil\\|self\\|true\\|false\\)\\_>")
-     1 font-lock-variable-name-face)
+              "\\_<\\(nil\\|true\\|false\\)\\_>")
+     1 font-lock-constant-face)
     ;; Keywords that evaluate to certain values.
     ("\\_<__\\(?:LINE\\|ENCODING\\|FILE\\)__\\_>"
      (0 font-lock-builtin-face))
-    ;; Symbols.
-    
("\\(^\\|[^:]\\)\\(:\\(address@hidden|[/%&|^`]\\|\\*\\*?\\|<\\(<\\|=>?\\)?\\|>[>=]?\\|===?\\|=~\\|![~=]?\\|\\[\\]=?\\|@?\\(\\w\\|_\\)+\\([!?=]\\|\\b_*\\)\\|#{[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\)\\)"
+    ;; Symbols with symbol characters.
+    ("\\(^\\|[^:]\\)\\(:@?\\(?:\\w\\|_\\)+\\)\\([!?=]\\)?"
+     (2 font-lock-constant-face)
+     (3 (unless (and (eq (char-before (match-end 3)) ?=)
+                     (eq (char-after (match-end 3)) ?>))
+          ;; bug#18466
+          font-lock-constant-face)
+        nil t))
+    ;; Symbols with special characters.
+    
("\\(^\\|[^:]\\)\\(:\\(address@hidden|[/%&|^`]\\|\\*\\*?\\|<\\(<\\|=>?\\)?\\|>[>=]?\\|===?\\|=~\\|![~=]?\\|\\[\\]=?\\|#{[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\)\\)"
      2 font-lock-constant-face)
     ;; Special globals.
     (,(concat "\\$\\(?:[:\"!@;,/\\._><\\$?~=*&`'+0-9]\\|-[0adFiIlpvw]\\|"
diff --git a/nt/ChangeLog b/nt/ChangeLog
index cc77b18..9d954d5 100644
--- a/nt/ChangeLog
+++ b/nt/ChangeLog
@@ -1,3 +1,8 @@
+2015-03-09  Eli Zaretskii  <address@hidden>
+
+       * INSTALL: Add some more installation instructions for mingw-get
+       users.  (Bug#19989)
+
 2015-03-03  Eli Zaretskii  <address@hidden>
 
        * cmdproxy.c (get_next_token): Don't make backslashes disappear
@@ -7,7 +12,6 @@
        (main): When passing a command line to the shell, use cmd.exe
        rules for quoting command-line tail.
 
-2015-03-03  Oscar Fuentes  <address@hidden>
 2015-02-27  Mark Laws  <address@hidden>
 
        Support daemon mode on MS-Windows (bug#19688)
diff --git a/nt/INSTALL b/nt/INSTALL
index 58fe947..da15040 100644
--- a/nt/INSTALL
+++ b/nt/INSTALL
@@ -108,12 +108,33 @@ build will run on Windows 9X and newer systems).
    . msys-base
    . mingw-developer-toolkit
 
+  When the installation ends, perform the post-installation steps
+  described on this page of the MinGW site:
+
+    http://www.mingw.org/wiki/Getting_Started
+
+  in the "After Installing You Should ..." section.  These steps are
+  important for making your installation complete, and in particular
+  will produce a desktop shortcut for running the MSYS Bash shell,
+  from which you will configure and build Emacs.  Once you've made the
+  shortcut, double-click on it to open the MSYS Bash shell window,
+  where you will proceed with the rest of these instructions.
+
+  In addition, we suggest to modify your system-wide Path variable to
+  include the 'bin' subdirectory of your top-level MinGW installation
+  directory, the one you specified to mingw-get ("C:\MinGW" by
+  default).  This will allow you to invoke the MinGW development
+  tools, like GCC, from the Windows cmd.exe shell windows or from
+  other Windows programs (including Emacs, after you build and install
+  it).
+
   (We recommend that you refrain from installing the MSYS Texinfo
   package, which is part of msys-base, because it might produce mixed
   EOL format when installing Info files.  Instead, install the MinGW
   port of Texinfo, see the ezwinports URL below.  To uninstall the
   MSYS Texinfo, after installing it as part of msys-base, invoke the
-  command "mingw-get remove msys-texinfo".)
+  command "mingw-get remove msys-texinfo", or mark "msys-texinfo" for
+  removal in the mingw-get GUI, then select Installation->Apply Changes.)
 
   At this point, you should be ready to configure and build Emacs in
   its basic configuration.  Skip to the "Generating the configure
diff --git a/src/ChangeLog b/src/ChangeLog
index 8acca6c..fc77618 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,9 +1,38 @@
+2015-03-07  Eli Zaretskii  <address@hidden>
+
+       * w32fns.c <ImmReleaseContext_Proc, ImmSetCompositionWindow_Proc>:
+       Fix typedefs to be consistent with the corresponding w32 API
+       signatures.
+       (w32_wnd_proc) <WM_IME_STARTCOMPOSITION>: Don't invoke
+       DefWindowProc if we successfully handled the message, as doing so
+       causes problems in displaying selection dialogs.  (Bug#11732)
+
+2015-03-05  Paul Eggert  <address@hidden>
+
+       Work around x86 glibc backtrace bug
+       * sysdep.c (emacs_backtrace): Don't dump core on x86.
+       Fixes: bug#19959
+
+2015-03-05  Eli Zaretskii  <address@hidden>
+
+       * keyboard.c (make_lispy_position): When the click is on the
+       right-side vertical scroll bar, pass the rightmost X coordinate to
+       buffer_posn_from_coords, so that the returned text position
+       reflects the closest point to the click.  Fixes region extension
+       when mouse moves outside the Emacs frame that has scroll bars on
+       the right.
+
+2015-03-04  Martin Rudalics  <address@hidden>
+
+       * frame.c (x_set_font): Try to keep frame height and width
+       unchanged if tool bar size changes with new font.
+
 2015-03-03  Eli Zaretskii  <address@hidden>
 
        * search.c (find_newline): Avoid assertion violations in
        CHAR_TO_BYTE when a portion of the buffer was deleted and we look
        for newlines near the end of the buffer.  This happens in Rmail
-       hen JIT font-lock fontifies a newly displayed portion of the
+       when JIT font-lock fontifies a newly displayed portion of the
        buffer.
 
 2015-03-03  Eli Zaretskii  <address@hidden>
@@ -64,6 +93,7 @@
 2015-03-03  Eli Zaretskii  <address@hidden>
 
        * dispextern.h (FACE_FOR_CHAR): Fix the commentary.
+
 2015-03-03  Daniel Colascione  <address@hidden>
 
        * alloc.c (syms_of_alloc): Rename `gc-precise-p' to `gc-precise'.
diff --git a/src/frame.c b/src/frame.c
index bac2b24..aa07219 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -3626,6 +3626,7 @@ x_set_font (struct frame *f, Lisp_Object arg, Lisp_Object 
oldval)
 #endif
   /* Recalculate toolbar height.  */
   f->n_tool_bar_rows = 0;
+  f->tool_bar_redisplayed_once = false;
 
   /* Ensure we redraw it.  */
   clear_current_matrices (f);
diff --git a/src/keyboard.c b/src/keyboard.c
index e169d95..2122984 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -5367,9 +5367,9 @@ make_lispy_position (struct frame *f, Lisp_Object x, 
Lisp_Object y,
          dy = yret = wy;
        }
 
-      /* For clicks in the text area, fringes, or margins, call
-        buffer_posn_from_coords to extract TEXTPOS, the buffer
-        position nearest to the click.  */
+      /* For clicks in the text area, fringes, margins, or vertical
+        scroll bar, call buffer_posn_from_coords to extract TEXTPOS,
+        the buffer position nearest to the click.  */
       if (!textpos)
        {
          Lisp_Object string2, object2 = Qnil;
@@ -5377,11 +5377,14 @@ make_lispy_position (struct frame *f, Lisp_Object x, 
Lisp_Object y,
          int dx2, dy2;
          int width2, height2;
          /* The pixel X coordinate passed to buffer_posn_from_coords
-            is the X coordinate relative to the text area for
-            text-area and right-margin clicks, zero otherwise.  */
+            is the X coordinate relative to the text area for clicks
+            in text-area, right-margin/fringe and right-side vertical
+            scroll bar, zero otherwise.  */
          int x2
            = (part == ON_TEXT) ? xret
-           : (part == ON_RIGHT_FRINGE || part == ON_RIGHT_MARGIN)
+           : (part == ON_RIGHT_FRINGE || part == ON_RIGHT_MARGIN
+              || (part == ON_VERTICAL_SCROLL_BAR
+                  && WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (w)))
            ? (XINT (x) - window_box_left (w, TEXT_AREA))
            : 0;
          int y2 = wy;
diff --git a/src/sysdep.c b/src/sysdep.c
index cb361ec..0a0b0ac 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -2174,6 +2174,14 @@ emacs_backtrace (int backtrace_limit)
   else
     {
       buffer = main_backtrace_buffer;
+
+      /* Work around 'backtrace' bug; see Bug#19959 and glibc bug#18084.  */
+      if (bounded_limit < 0)
+       {
+         backtrace (buffer, 1);
+         return;
+       }
+
       npointers = backtrace (buffer, bounded_limit + 1);
     }
 
diff --git a/src/w32fns.c b/src/w32fns.c
index 64532ae..6abb433 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -157,8 +157,8 @@ typedef BOOL (WINAPI * TrackMouseEvent_Proc)
 typedef LONG (WINAPI * ImmGetCompositionString_Proc)
   (IN HIMC context, IN DWORD index, OUT LPVOID buffer, IN DWORD bufLen);
 typedef HIMC (WINAPI * ImmGetContext_Proc) (IN HWND window);
-typedef HWND (WINAPI * ImmReleaseContext_Proc) (IN HWND wnd, IN HIMC context);
-typedef HWND (WINAPI * ImmSetCompositionWindow_Proc) (IN HIMC context,
+typedef BOOL (WINAPI * ImmReleaseContext_Proc) (IN HWND wnd, IN HIMC context);
+typedef BOOL (WINAPI * ImmSetCompositionWindow_Proc) (IN HIMC context,
                                                      IN COMPOSITIONFORM *form);
 typedef HMONITOR (WINAPI * MonitorFromPoint_Proc) (IN POINT pt, IN DWORD 
flags);
 typedef BOOL (WINAPI * GetMonitorInfo_Proc)
@@ -3324,9 +3324,13 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM 
lParam)
          set_ime_composition_window_fn (context, &form);
          release_ime_context_fn (hwnd, context);
        }
-      /* Pass WM_IME_STARTCOMPOSITION to DefWindowProc, so that the
-        composition window will actually be displayed.  */
-      goto dflt;
+      /* We should "goto dflt" here to pass WM_IME_STARTCOMPOSITION to
+        DefWindowProc, so that the composition window will actually
+        be displayed.  But doing so causes trouble with displaying
+        dialog boxes, such as the file selection dialog or font
+        selection dialog.  So something else is needed to fix the
+        former without breaking the latter.  See bug#11732.  */
+      break;
 
     case WM_IME_ENDCOMPOSITION:
       ignore_ime_char = 0;
diff --git a/test/ChangeLog b/test/ChangeLog
index 4488aab..03cc281 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,56 @@
+2015-03-10  Przemyslaw Wojnowski  <address@hidden>
+
+       * automated/cl-lib-tests.el: Add tests for plusp, second, ...
+       (cl-lib-test-plusp, cl-lib-test-minusp)
+       (cl-lib-test-oddp, cl-lib-test-evenp, cl-lib-test-first)
+       (cl-lib-test-second, cl-lib-test-third, cl-lib-test-fourth)
+       (cl-lib-test-fifth, cl-lib-test-sixth, cl-lib-test-seventh)
+       (cl-lib-test-eighth, cl-lib-test-ninth, cl-lib-test-tenth)
+       (cl-lib-test-endp, cl-lib-test-nth-value)
+       (cl-lib-nth-value-test-multiple-values, cl-test-caaar, cl-test-caadr)
+       (cl-test-ldiff): New tests.
+       (cl-digit-char-p): Tighten the test.
+
+2015-03-09  Dmitry Gutov  <address@hidden>
+
+       * indent/Makefile: Call 'rm' with '-f'.  Default EMACS to
+       '../../src/emacs'.  Remove *.new in 'clean'.  Set 'all' target to
+       run all examples.
+
+2015-03-09  Nicolas Petton <address@hidden>
+
+       * automated/seq-tests.el (test-seq-into): Add a test for seq-into.
+
+2015-03-08  Dmitry Gutov  <address@hidden>
+
+       * indent/ruby.rb: Add an example for bug#20026.
+
+       * indent/js.js: Set `js-indent-level' to 2. Fix indentation in an
+       example.
+
+2015-03-04  Michael Albinus  <address@hidden>
+
+       * automated/tramp-tests.el (top): Declare `tramp-get-remote-stat'
+       and `tramp-get-remote-perl'.
+       (tramp-test06-directory-file-name): Fix docstring and last test.
+       (tramp-test08-file-local-copy): Extend test.
+       (tramp-test13-make-directory): Test also PARENTS arg.
+       (tramp-test17-insert-directory): Do not expect any order in
+       directory listing.
+       (tramp--test-adb-p): New defun.
+       (tramp--test-check-files): Fix doxstring.  Extend tests.
+       (tramp--test-special-characters): New defun.  Use body from
+       `tramp-test30-special-characters'.  Adapt check for tramp-adb.el.
+       (tramp-test30-special-characters): Use it.
+       (tramp--test-utf8): New defun.  Use body from
+       `tramp-test31-utf8'.  Add test string.
+       (tramp-test31-utf8): Use it.
+       (tramp-test30-special-characters-with-stat)
+       (tramp-test30-special-characters-with-perl)
+       (tramp-test30-special-characters-with-ls):
+       (tramp-test31-utf8-with-stat, tramp-test31-utf8-with-perl)
+       (tramp-test31-utf8-with-ls): New tests.
+
 2015-03-03  Daniel Colascione  <address@hidden>
 
        * automated/generator-tests.el (cps-testcase): Use
diff --git a/test/automated/cl-lib-tests.el b/test/automated/cl-lib-tests.el
index c83391b..1c36e7d 100644
--- a/test/automated/cl-lib-tests.el
+++ b/test/automated/cl-lib-tests.el
@@ -223,13 +223,192 @@
     (should (= (cl-the integer (cl-incf side-effect)) 1))
     (should (= side-effect 1))))
 
+(ert-deftest cl-lib-test-plusp ()
+  (should-not (cl-plusp -1.0e+INF))
+  (should-not (cl-plusp -1.5e2))
+  (should-not (cl-plusp -3.14))
+  (should-not (cl-plusp -1))
+  (should-not (cl-plusp -0.0))
+  (should-not (cl-plusp 0))
+  (should-not (cl-plusp 0.0))
+  (should-not (cl-plusp -0.0e+NaN))
+  (should-not (cl-plusp 0.0e+NaN))
+  (should (cl-plusp 1))
+  (should (cl-plusp 3.14))
+  (should (cl-plusp 1.5e2))
+  (should (cl-plusp 1.0e+INF))
+  (should-error (cl-plusp "42") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-minusp ()
+  (should (cl-minusp -1.0e+INF))
+  (should (cl-minusp -1.5e2))
+  (should (cl-minusp -3.14))
+  (should (cl-minusp -1))
+  (should-not (cl-minusp -0.0))
+  (should-not (cl-minusp 0))
+  (should-not (cl-minusp 0.0))
+  (should-not (cl-minusp -0.0e+NaN))
+  (should-not (cl-minusp 0.0e+NaN))
+  (should-not (cl-minusp 1))
+  (should-not (cl-minusp 3.14))
+  (should-not (cl-minusp 1.5e2))
+  (should-not (cl-minusp 1.0e+INF))
+  (should-error (cl-minusp "-42") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-oddp ()
+  (should (cl-oddp -3))
+  (should (cl-oddp 3))
+  (should-not (cl-oddp -2))
+  (should-not (cl-oddp 0))
+  (should-not (cl-oddp 2))
+  (should-error (cl-oddp 3.0e+NaN) :type 'wrong-type-argument)
+  (should-error (cl-oddp 3.0) :type 'wrong-type-argument)
+  (should-error (cl-oddp "3") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-evenp ()
+  (should (cl-evenp -2))
+  (should (cl-evenp 0))
+  (should (cl-evenp 2))
+  (should-not (cl-evenp -3))
+  (should-not (cl-evenp 3))
+  (should-error (cl-evenp 2.0e+NaN) :type 'wrong-type-argument)
+  (should-error (cl-evenp 2.0) :type 'wrong-type-argument)
+  (should-error (cl-evenp "2") :type 'wrong-type-argument))
+
 (ert-deftest cl-digit-char-p ()
-  (should (cl-digit-char-p ?3))
-  (should (cl-digit-char-p ?a 11))
+  (should (eql 3 (cl-digit-char-p ?3)))
+  (should (eql 10 (cl-digit-char-p ?a 11)))
+  (should (eql 10 (cl-digit-char-p ?A 11)))
   (should-not (cl-digit-char-p ?a))
-  (should (cl-digit-char-p ?w 36))
-  (should-error (cl-digit-char-p ?a 37))
-  (should-error (cl-digit-char-p ?a 1)))
+  (should (eql 32 (cl-digit-char-p ?w 36)))
+  (should-error (cl-digit-char-p ?a 37) :type 'args-out-of-range)
+  (should-error (cl-digit-char-p ?a 1) :type 'args-out-of-range))
+
+(ert-deftest cl-lib-test-first ()
+  (should (null (cl-first '())))
+  (should (= 4 (cl-first '(4))))
+  (should (= 4 (cl-first '(4 2))))
+  (should-error (cl-first "42") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-second ()
+  (should (null (cl-second '())))
+  (should (null (cl-second '(4))))
+  (should (= 2 (cl-second '(1 2))))
+  (should (= 2 (cl-second '(1 2 3))))
+  (should-error (cl-second "1 2 3") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-third ()
+  (should (null (cl-third '())))
+  (should (null (cl-third '(1 2))))
+  (should (= 3 (cl-third '(1 2 3))))
+  (should (= 3 (cl-third '(1 2 3 4))))
+  (should-error (cl-third "123") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-fourth ()
+  (should (null (cl-fourth '())))
+  (should (null (cl-fourth '(1 2 3))))
+  (should (= 4 (cl-fourth '(1 2 3 4))))
+  (should (= 4 (cl-fourth '(1 2 3 4 5))))
+  (should-error (cl-fourth "1234") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-fifth ()
+  (should (null (cl-fifth '())))
+  (should (null (cl-fifth '(1 2 3 4))))
+  (should (= 5 (cl-fifth '(1 2 3 4 5))))
+  (should (= 5 (cl-fifth '(1 2 3 4 5 6))))
+  (should-error (cl-fifth "12345") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-fifth ()
+  (should (null (cl-fifth '())))
+  (should (null (cl-fifth '(1 2 3 4))))
+  (should (= 5 (cl-fifth '(1 2 3 4 5))))
+  (should (= 5 (cl-fifth '(1 2 3 4 5 6))))
+  (should-error (cl-fifth "12345") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-sixth ()
+  (should (null (cl-sixth '())))
+  (should (null (cl-sixth '(1 2 3 4 5))))
+  (should (= 6 (cl-sixth '(1 2 3 4 5 6))))
+  (should (= 6 (cl-sixth '(1 2 3 4 5 6 7))))
+  (should-error (cl-sixth "123456") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-seventh ()
+  (should (null (cl-seventh '())))
+  (should (null (cl-seventh '(1 2 3 4 5 6))))
+  (should (= 7 (cl-seventh '(1 2 3 4 5 6 7))))
+  (should (= 7 (cl-seventh '(1 2 3 4 5 6 7 8))))
+  (should-error (cl-seventh "1234567") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-eighth ()
+  (should (null (cl-eighth '())))
+  (should (null (cl-eighth '(1 2 3 4 5 6 7))))
+  (should (= 8 (cl-eighth '(1 2 3 4 5 6 7 8))))
+  (should (= 8 (cl-eighth '(1 2 3 4 5 6 7 8 9))))
+  (should-error (cl-eighth "12345678") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-ninth ()
+  (should (null (cl-ninth '())))
+  (should (null (cl-ninth '(1 2 3 4 5 6 7 8))))
+  (should (= 9 (cl-ninth '(1 2 3 4 5 6 7 8 9))))
+  (should (= 9 (cl-ninth '(1 2 3 4 5 6 7 8 9 10))))
+  (should-error (cl-ninth "123456789") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-tenth ()
+  (should (null (cl-tenth '())))
+  (should (null (cl-tenth '(1 2 3 4 5 6 7 8 9))))
+  (should (= 10 (cl-tenth '(1 2 3 4 5 6 7 8 9 10))))
+  (should (= 10 (cl-tenth '(1 2 3 4 5 6 7 8 9 10 11))))
+  (should-error (cl-tenth "1234567890") :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-endp ()
+  (should (cl-endp '()))
+  (should-not (cl-endp '(1)))
+  (should-error (cl-endp 1) :type 'wrong-type-argument)
+  (should-error (cl-endp [1]) :type 'wrong-type-argument))
+
+(ert-deftest cl-lib-test-nth-value ()
+  (let ((vals (cl-values 2 3)))
+    (should (= (cl-nth-value 0 vals) 2))
+    (should (= (cl-nth-value 1 vals) 3))
+    (should (null (cl-nth-value 2 vals)))
+    (should-error (cl-nth-value 0.0 vals) :type 'wrong-type-argument)))
+
+(ert-deftest cl-lib-nth-value-test-multiple-values ()
+  "While CL multiple values are an alias to list, these won't work."
+  :expected-result :failed
+  (should (eq (cl-nth-value 0 '(2 3)) '(2 3)))
+  (should (= (cl-nth-value 0 1) 1))
+  (should (null (cl-nth-value 1 1)))
+  (should-error (cl-nth-value -1 (cl-values 2 3)) :type 'args-out-of-range)
+  (should (string= (cl-nth-value 0 "only lists") "only lists")))
+
+(ert-deftest cl-test-caaar ()
+  (should (null (cl-caaar '())))
+  (should (null (cl-caaar '(() (2)))))
+  (should (null (cl-caaar '((() (2)) (a b)))))
+  (should-error (cl-caaar '(1 2)) :type 'wrong-type-argument)
+  (should-error (cl-caaar '((1 2))) :type 'wrong-type-argument)
+  (should (=  1 (cl-caaar '(((1 2) (3 4))))))
+  (should (null (cl-caaar '((() (3 4)))))))
+
+(ert-deftest cl-test-caadr ()
+  (should (null (cl-caadr '())))
+  (should (null (cl-caadr '(1))))
+  (should-error (cl-caadr '(1 2)) :type 'wrong-type-argument)
+  (should (= 2 (cl-caadr '(1 (2 3)))))
+  (should (equal '((2) (3)) (cl-caadr '((1) (((2) (3))) (4))))))
+
+(ert-deftest cl-test-ldiff ()
+  (let ((l '(1 2 3)))
+    (should (null (cl-ldiff '() '())))
+    (should (null (cl-ldiff '() l)))
+    (should (null (cl-ldiff l l)))
+    (should (equal l (cl-ldiff l '())))
+    ;; must be part of the list
+    (should (equal l (cl-ldiff l '(2 3))))
+    (should (equal '(1) (cl-ldiff l (nthcdr 1 l))))
+    ;; should return a copy
+    (should-not (eq (cl-ldiff l '()) l))))
 
 (ert-deftest cl-parse-integer ()
   (should-error (cl-parse-integer "abc"))
diff --git a/test/automated/seq-tests.el b/test/automated/seq-tests.el
index badb326..d3536b6 100644
--- a/test/automated/seq-tests.el
+++ b/test/automated/seq-tests.el
@@ -228,5 +228,27 @@ Evaluate BODY for each created sequence.
     (should (equal (type-of (seq-reverse seq))
                    (type-of seq)))))
 
+(ert-deftest test-seq-into ()
+  (let* ((vector [1 2 3])
+         (list (seq-into vector 'list)))
+    (should (same-contents-p vector list))
+    (should (listp list)))
+  (let* ((list '(hello world))
+         (vector (seq-into list 'vector)))
+    (should (same-contents-p vector list))
+    (should (vectorp vector)))
+  (let* ((string "hello")
+         (list (seq-into string 'list)))
+    (should (same-contents-p string list))
+    (should (stringp string)))
+  (let* ((string "hello")
+         (vector (seq-into string 'vector)))
+    (should (same-contents-p string vector))
+    (should (stringp string)))
+  (let* ((list nil)
+         (vector (seq-into list 'vector)))
+    (should (same-contents-p list vector))
+    (should (vectorp vector))))
+
 (provide 'seq-tests)
 ;;; seq-tests.el ends here
diff --git a/test/automated/tramp-tests.el b/test/automated/tramp-tests.el
index 3b72da8..020f31f 100644
--- a/test/automated/tramp-tests.el
+++ b/test/automated/tramp-tests.el
@@ -46,6 +46,8 @@
 
 (declare-function tramp-find-executable "tramp-sh")
 (declare-function tramp-get-remote-path "tramp-sh")
+(declare-function tramp-get-remote-stat "tramp-sh")
+(declare-function tramp-get-remote-perl "tramp-sh")
 (defvar tramp-copy-size-limit)
 (defvar tramp-remote-process-environment)
 
@@ -558,8 +560,8 @@ shall not contain a timeout."
 
 (ert-deftest tramp-test06-directory-file-name ()
   "Check `directory-file-name'.
-This checks also `file-name-as-directory', `file-name-directory'
-and `file-name-nondirectory'."
+This checks also `file-name-as-directory', `file-name-directory',
+`file-name-nondirectory' and `unhandled-file-name-directory'."
   (should
    (string-equal
     (directory-file-name "/method:host:/path/to/file")
@@ -589,8 +591,7 @@ and `file-name-nondirectory'."
   (should
    (string-equal (file-name-nondirectory "/method:host:/path/to/file/") ""))
   (should-not
-   (file-remote-p
-    (unhandled-file-name-directory "/method:host:/path/to/file"))))
+   (unhandled-file-name-directory "/method:host:/path/to/file")))
 
 (ert-deftest tramp-test07-file-exists-p ()
   "Check `file-exist-p', `write-region' and `delete-file'."
@@ -615,7 +616,13 @@ and `file-name-nondirectory'."
          (should (setq tmp-name2 (file-local-copy tmp-name1)))
          (with-temp-buffer
            (insert-file-contents tmp-name2)
-           (should (string-equal (buffer-string) "foo"))))
+           (should (string-equal (buffer-string) "foo")))
+         ;; Check also that a file transfer with compression works.
+         (let ((default-directory tramp-test-temporary-file-directory)
+               (tramp-copy-size-limit 4)
+               (tramp-inline-compress-start-size 2))
+           (delete-file tmp-name2)
+           (should (setq tmp-name2 (file-local-copy tmp-name1)))))
       (ignore-errors
        (delete-file tmp-name1)
        (delete-file tmp-name2)))))
@@ -840,7 +847,14 @@ This tests also `file-directory-p' and 
`file-accessible-directory-p'."
        (progn
          (make-directory tmp-name)
          (should (file-directory-p tmp-name))
-         (should (file-accessible-directory-p tmp-name)))
+         (should (file-accessible-directory-p tmp-name))
+         (should-error
+          (make-directory (expand-file-name "foo/bar" tmp-name))
+          :type 'file-error)
+         (make-directory (expand-file-name "foo/bar" tmp-name) 'parents)
+         (should (file-directory-p (expand-file-name "foo/bar" tmp-name)))
+         (should
+          (file-accessible-directory-p (expand-file-name "foo/bar" tmp-name))))
       (ignore-errors (delete-directory tmp-name)))))
 
 (ert-deftest tramp-test14-delete-directory ()
@@ -959,9 +973,8 @@ This tests also `file-directory-p' and 
`file-accessible-directory-p'."
              (concat
               ;; There might be a summary line.
               "\\(total.+[[:digit:]]+\n\\)?"
-              ;; We don't know in which order "." and ".." appear.
-              "\\(.+ \\.?\\.\n\\)\\{2\\}"
-              ".+ foo$")))))
+              ;; We don't know in which order ".", ".." and "foo" appear.
+              "\\(.+ \\(\\.?\\.\\|foo\\)\n\\)\\{3\\}")))))
       (ignore-errors (delete-directory tmp-name1 'recursive)))))
 
 (ert-deftest tramp-test18-file-attributes ()
@@ -1490,38 +1503,68 @@ This tests also `make-symbolic-link', `file-truename' 
and `add-name-to-file'."
 
        (ignore-errors (delete-directory tmp-name1 'recursive)))))
 
+(defun tramp--test-adb-p ()
+  "Check, whether the remote host runs Android.
+This requires restrictions of file name syntax."
+  (eq (tramp-find-foreign-file-name-handler
+       tramp-test-temporary-file-directory)
+      'tramp-adb-file-name-handler))
+
 (defun tramp--test-smb-or-windows-nt-p ()
   "Check, whether the locale or remote host runs MS Windows.
 This requires restrictions of file name syntax."
   (or (eq system-type 'windows-nt)
       (eq (tramp-find-foreign-file-name-handler
           tramp-test-temporary-file-directory)
-       'tramp-smb-file-name-handler)))
+         'tramp-smb-file-name-handler)))
 
 (defun tramp--test-check-files (&rest files)
-  "Runs a simple but comprehensive test over every file in FILES."
+  "Run a simple but comprehensive test over every file in FILES."
   (let ((tmp-name1 (tramp--test-make-temp-name))
-       (tmp-name2 (tramp--test-make-temp-name 'local)))
+       (tmp-name2 (tramp--test-make-temp-name 'local))
+       (files (delq nil files)))
     (unwind-protect
        (progn
          (make-directory tmp-name1)
          (make-directory tmp-name2)
-         (dolist (elt (delq nil files))
-           (let ((file1 (expand-file-name elt tmp-name1))
-                 (file2 (expand-file-name elt tmp-name2)))
+         (dolist (elt files)
+           (let* ((file1 (expand-file-name elt tmp-name1))
+                  (file2 (expand-file-name elt tmp-name2))
+                  (file3 (concat file1 "foo")))
              (write-region elt nil file1)
              (should (file-exists-p file1))
+
              ;; Check file contents.
              (with-temp-buffer
                (insert-file-contents file1)
                (should (string-equal (buffer-string) elt)))
+
              ;; Copy file both directions.
              (copy-file file1 tmp-name2)
              (should (file-exists-p file2))
              (delete-file file1)
              (should-not (file-exists-p file1))
              (copy-file file2 tmp-name1)
-             (should (file-exists-p file1))))
+             (should (file-exists-p file1))
+
+             ;; Method "smb" supports `make-symbolic-link' only if the
+             ;; remote host has CIFS capabilities.  tramp-adb.el and
+             ;; tramp-gvfs.el do not support symbolic links at all.
+             (condition-case err
+                 (progn
+                   (make-symbolic-link file1 file3)
+                   (should (file-symlink-p file3))
+                   (should
+                    (string-equal
+                     (expand-file-name file1) (file-truename file3)))
+                   ;; Check file contents.
+                   (with-temp-buffer
+                     (insert-file-contents file3)
+                     (should (string-equal (buffer-string) elt)))
+                   (delete-file file3))
+               (file-error
+                (should (string-equal (error-message-string err)
+                                      "make-symbolic-link not supported"))))))
 
          ;; Check file names.
          (should (equal (directory-files
@@ -1548,26 +1591,44 @@ This requires restrictions of file name syntax."
          (should (equal (directory-files
                          tmp-name1 nil directory-files-no-dot-files-regexp)
                         (directory-files
-                         tmp-name2 nil directory-files-no-dot-files-regexp))))
+                         tmp-name2 nil directory-files-no-dot-files-regexp)))
+
+         ;; Check directory creation.  We use a subdirectory "foo"
+         ;; in order to avoid conflicts with previous file name tests.
+         (dolist (elt files)
+           (let* ((file1 (expand-file-name (concat "foo/" elt) tmp-name1))
+                  (file2 (expand-file-name elt file1)))
+             (make-directory file1 'parents)
+             (should (file-directory-p file1))
+             (write-region elt nil file2)
+             (should (file-exists-p file2))
+             (should
+              (equal
+               (directory-files file1 nil directory-files-no-dot-files-regexp)
+               `(,elt)))
+             (should
+              (equal
+               (caar (directory-files-and-attributes
+                      file1 nil directory-files-no-dot-files-regexp))
+               elt))
+             (delete-file file2)
+             (should-not (file-exists-p file2))
+             (delete-directory file1)
+             (should-not (file-exists-p file1)))))
 
       (ignore-errors (delete-directory tmp-name1 'recursive))
       (ignore-errors (delete-directory tmp-name2 'recursive)))))
 
-;; This test is inspired by Bug#17238.
-(ert-deftest tramp-test30-special-characters ()
-  "Check special characters in file names."
-  (skip-unless (tramp--test-enabled))
-  (skip-unless
-   (not
-    (memq
-     (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
-     '(tramp-adb-file-name-handler
-       tramp-gvfs-file-name-handler))))
-
+(defun tramp--test-special-characters ()
+  "Perform the test in `tramp-test30-special-characters*'."
   ;; Newlines, slashes and backslashes in file names are not supported.
   ;; So we don't test.
   (tramp--test-check-files
-   (if (tramp--test-smb-or-windows-nt-p) "foo bar baz" " foo\tbar baz\t")
+   (if (tramp--test-smb-or-windows-nt-p)
+       "foo bar baz"
+     (if (tramp--test-adb-p)
+        " foo bar baz "
+       " foo\tbar baz\t"))
    "$foo$bar$$baz$"
    "-foo-bar-baz-"
    "%foo%bar%baz%"
@@ -1583,18 +1644,145 @@ This requires restrictions of file name syntax."
    "[foo]bar[baz]"
    "{foo}bar{baz}"))
 
-(ert-deftest tramp-test31-utf8 ()
-  "Check UTF8 encoding in file names and file contents."
+;; These tests are inspired by Bug#17238.
+(ert-deftest tramp-test30-special-characters ()
+  "Check special characters in file names."
   (skip-unless (tramp--test-enabled))
 
+  (tramp--test-special-characters))
+
+(ert-deftest tramp-test30-special-characters-with-stat ()
+  "Check special characters in file names.
+Use the `stat' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+  (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+    (skip-unless (tramp-get-remote-stat v)))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "perl" nil)
+       (tramp--test-special-characters))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "perl" 'undef))))
+
+(ert-deftest tramp-test30-special-characters-with-perl ()
+  "Check special characters in file names.
+Use the `perl' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+  (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+    (skip-unless (tramp-get-remote-perl v)))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "stat" nil)
+       (tramp--test-special-characters))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "stat" 'undef))))
+
+(ert-deftest tramp-test30-special-characters-with-ls ()
+  "Check special characters in file names.
+Use the `ls' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "stat" nil)
+       (tramp-set-connection-property v "perl" nil)
+       (tramp--test-special-characters))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "stat" 'undef)
+      (tramp-set-connection-property v "perl" 'undef))))
+
+(defun tramp--test-utf8 ()
+  "Perform the test in `tramp-test31-utf8*'."
   (let ((coding-system-for-read 'utf-8)
        (coding-system-for-write 'utf-8)
        (file-name-coding-system 'utf-8))
     (tramp--test-check-files
+     "Γυρίστε το Γαλαξία με Ώτο Στοπ"
      "أصبح بوسعك الآن تنزيل نسخة كاملة من موسوعة ويكيبيديا العربية لتصفحها بلا 
اتصال بالإنترنت"
      "银河系漫游指南系列"
      "Автостопом по гала́ктике")))
 
+(ert-deftest tramp-test31-utf8 ()
+  "Check UTF8 encoding in file names and file contents."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless (not (tramp--test-adb-p)))
+
+  (tramp--test-utf8))
+
+(ert-deftest tramp-test31-utf8-with-stat ()
+  "Check UTF8 encoding in file names and file contents.
+Use the `stat' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+  (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+    (skip-unless (tramp-get-remote-stat v)))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "perl" nil)
+       (tramp--test-utf8))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "perl" 'undef))))
+
+(ert-deftest tramp-test31-utf8-with-perl ()
+  "Check UTF8 encoding in file names and file contents.
+Use the `perl' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+  (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+    (skip-unless (tramp-get-remote-perl v)))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "stat" nil)
+       (tramp--test-utf8))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "stat" 'undef))))
+
+(ert-deftest tramp-test31-utf8-with-ls ()
+  "Check UTF8 encoding in file names and file contents.
+Use the `ls' command."
+  (skip-unless (tramp--test-enabled))
+  (skip-unless
+   (eq
+    (tramp-find-foreign-file-name-handler tramp-test-temporary-file-directory)
+    'tramp-sh-file-name-handler))
+
+  (unwind-protect
+      (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+       (tramp-set-connection-property v "stat" nil)
+       (tramp-set-connection-property v "perl" nil)
+       (tramp--test-utf8))
+    ;; Reset suppressed properties.
+    (with-parsed-tramp-file-name tramp-test-temporary-file-directory nil
+      (tramp-set-connection-property v "stat" 'undef)
+      (tramp-set-connection-property v "perl" 'undef))))
+
 ;; This test is inspired by Bug#16928.
 (ert-deftest tramp-test32-asynchronous-requests ()
   "Check parallel asynchronous requests.
@@ -1758,7 +1946,7 @@ Since it unloads Tramp, it shall be the last test to run."
 ;;   doesn't work well when an interactive password must be provided.
 ;; * Fix `tramp-test27-start-file-process' for `nc' and on MS
 ;;   Windows (`process-send-eof'?).
-;; * Fix `tramp-test30-special-characters' for `adb' and `nc'.
+;; * Fix `tramp-test30-special-characters' for `nc'.
 ;; * Fix `tramp-test31-utf8' for `nc'/`telnet' (when target is a dumb
 ;;   busybox).  Seems to be in `directory-files'.
 ;; * Fix Bug#16928.  Set expected error of 
`tramp-test32-asynchronous-requests'.
diff --git a/test/indent/Makefile b/test/indent/Makefile
index 9e75f3d..8316268 100644
--- a/test/indent/Makefile
+++ b/test/indent/Makefile
@@ -1,14 +1,15 @@
 RM=rm
-EMACS=emacs
+EMACS=../../src/emacs
+
+all: clean $(addsuffix .test,$(wildcard *.*))
 
 clean:
-       -$(RM) *.test
+       -$(RM) -f *.new
 
 # TODO:
 # - mark the places where the indentation is known to be incorrect,
 #   and allow either ignoring those errors or not.
 %.test: %
-       -$(RM) $<.new
        $(EMACS) --batch $< \
            --eval '(indent-region (point-min) (point-max) nil)' \
            --eval '(write-region (point-min) (point-max) "$<.new")'
diff --git a/test/indent/js.js b/test/indent/js.js
index 2d458e1..f41849d 100644
--- a/test/indent/js.js
+++ b/test/indent/js.js
@@ -1,3 +1,5 @@
+// -*- js-indent-level: 2 -*-
+
 var a = 1;
 b = 2;
 
@@ -9,7 +11,7 @@ var e = 100500,
 
 function test ()
 {
-     return /[/]/.test ('/')     // (bug#19397)
+  return /[/]/.test ('/')     // (bug#19397)
 }
 
 var f = bar('/protocols/')
@@ -60,3 +62,6 @@ var evens = [e for each (e in range(0, 21))
 a++
 b +=
   c
+
+baz(`http://foo.bar/${tee}`)
+  .qux();
diff --git a/test/indent/ruby.rb b/test/indent/ruby.rb
index 82cc63f..dec6de9 100644
--- a/test/indent/ruby.rb
+++ b/test/indent/ruby.rb
@@ -40,6 +40,10 @@ x = toto / foo if /do bar/ =~ "dobar"
 
 /foo/xi != %r{bar}mo.tee
 
+foo { /"tee/
+  bar { |qux| /'fee"/ }         # bug#20026
+}
+
 bar(class: XXX) do              # ruby-indent-keyword-label
   foo
 end



reply via email to

[Prev in Thread] Current Thread [Next in Thread]