]> code.delx.au - gnu-emacs/blobdiff - ChangeLog.2
* lisp/startup.el (normal-top-level): Use delay-warning. (Bug#20792)
[gnu-emacs] / ChangeLog.2
index b75a665b11391f4181c03922a032230e5f352c33..ef261f17f19f816f90fff781779c958d1d20f9a6 100644 (file)
+2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Merge from gnulib
+       This incorporates:
+       2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
+       2015-06-05 stdio: Don't redefine gets when using C++
+       2015-06-05 acl-permissions: port to AIX, C89 HP-UX
+       2015-06-02 file-has-acl: fix build on Mac OS X 10
+       2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
+       2015-06-01 pthread_sigmask: discount system version if a simple macro
+       2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
+       * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
+       * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
+       * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
+       * lib/gnulib.mk: Regenerate.
+
+2015-06-06  Juri Linkov  <juri@linkov.net>
+
+       * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
+       before calling grep-compute-defaults because now it affects the
+       command lines computed in grep-compute-defaults. (Bug#20728)
+
+2015-06-06  Glenn Morris  <rgm@gnu.org>
+
+       Address some compilation warnings.
+       * lisp/international/mule-cmds.el (w32-get-console-codepage)
+       (w32-get-console-output-codepage):
+       * lisp/progmodes/elisp-mode.el (xref-collect-references):
+       * lisp/version.el (cairo-version-string): Declare.
+       * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
+
+2015-06-06  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix display when a font claims large values of ascent and descent
+       This fixes bug#20628.
+       * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
+       coordinate of a hollow cursor glyph when the original glyph's
+       ascent is too small.
+       (get_font_ascent_descent, normal_char_ascent_descent)
+       (normal_char_height): New functions.
+       (handle_single_display_spec, append_space_for_newline)
+       (calc_pixel_width_or_height, produce_stretch_glyph)
+       (calc_line_height_property): Use normal_char_ascent_descent and
+       normal_char_height.
+       (x_produce_glyphs): When font-global values of ascent and descent
+       are too large, use per-character glyph metrics instead, if
+       possible.  But don't allow the glyph row's ascent and descent
+       values become smaller than the values from the metrics of the
+       font's "normal" character.
+       * src/xftfont.c (xftfont_draw):
+       * src/w32font.c (w32font_draw): Correct the values of ascent and
+       descent used to draw glyphless characters' hex code in a box.
+       * src/xterm.c (x_draw_glyph_string_background):
+       * src/xdisp.c (x_produce_glyphs):
+       * src/w32term.c (x_draw_glyph_string_background):
+       * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
+       to detect fonts whose global ascent and descent values are too
+       large to be used in layout decision, and redraw the background
+       when that happens.
+       * src/dispextern.h (FONT_TOO_HIGH): New macro.
+       (get_font_ascent_descent): Add prototype.
+       * src/xterm.c (x_new_font):
+       * src/w32term.c (x_new_font):
+       * src/nsterm.m (x_new_font):
+       * src/font.c (font_open_entity):
+       * src/composite.c (composition_gstring_width): Use
+       get_font_ascent_descent to obtain reasonable values for ascent and
+       descent of a font.
+
+2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
+
+       Add assertion in adjust_point_for_property
+       * src/keyboard.c (adjust_point_for_property): Add eassert for
+       current buffer being shown in selected window.
+
+2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Replace uses of in-string-p; make it obsolete
+       * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
+       (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
+
+2015-06-06  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix Dired display of an explicit list of files by ls-lisp.el
+       * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
+       (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
+       correct for when displaying individual files separately, not as
+       part of listing a directory, in which case these values are not
+       recomputed by 'ls-lisp-insert-directory', but used verbatim.
+
+       * lisp/dired.el (dired): Doc fix.  (Bug#20739)
+
+2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
+
+       Do not adjust point in a non-selected window
+       * src/keyboard.c (command_loop_1): Do not adjust point when
+       current buffer is not shown in selected window (Bug#20590).
+
+       * etc/DEBUG: Mention 'maybe_call_debugger'
+
+2015-06-05  Nicolas Petton  <nicolas@petton.fr>
+
+       Fix a unit test for map.el
+       * test/automated/map-tests.el (test-map-let): Fix the test to work
+       with the new syntax of `map-let'.
+
+       * lisp/emacs-lisp/map.el (map-let): Better docstring.
+
+       Better syntax for the map pcase pattern
+       * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
+       bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
+
+       * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
+
+       Fix a byte-compiler error in map-put and map-delete
+       * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
+       called with a symbol.
+
+2015-06-05  Glenn Morris  <rgm@gnu.org>
+
+       * admin/gitmerge.el (gitmerge-commit-message):
+       Revert to including "skipped" messages in ChangeLog once again.
+
+2015-06-05  Tassilo Horn  <tsdh@gnu.org>
+
+       Use string> instead of equiv lambda with string<
+       * lisp/help.el (view-emacs-news): Use string> instead of equivalent
+       lambda with string<.
+
+2015-06-05  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
+       (map--delete-array): Fix typo.
+
+       * test/automated/map-tests.el: Replace "assert" with "should".
+
+       * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
+       (SUBDIRS_REL): Derive from SUBDIRS.
+
+       Tweak some build messages.
+       * lisp/Makefile.in ($(lisp)/loaddefs.el):
+       * lisp/cus-dep.el (custom-make-dependencies):
+       * lisp/finder.el (finder-compile-keywords): Say what we are doing.
+       * lisp/international/titdic-cnv.el (batch-titdic-convert):
+       Don't say how to compile.
+
+2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Omit U+0332 COMBINING LOW LINE in previous change
+       It turns out that it does not work on Ubuntu 15.04.
+
+       Fix transliteration of Bahá'í months
+       * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
+       Improve quality of Latin transliteration of Bahá'í month names.
+
+       Fix curved quotes in a few places
+       * lisp/calc/calc-misc.el (calc-help): Fix quoting.
+       The strings in question are not doc strings, so this partially
+       undoes the recent change that assumed they were doc strings.
+       * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
+       * lisp/info.el (Info-finder-find-node):
+       Use curved quotes.
+       * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
+       Also allow curved quotes in doc strings.
+
+2015-06-04  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/Makefile.in (AM_V_at): Add missing definition.
+
+       * lisp/Makefile.in: Quieten output a bit.
+       ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
+       Don't echo directories, since the commands we invoke print them.
+
+       * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
+       (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
+       (SUBDIRS_SUBDIRS): New variables.
+       (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
+       Remove.
+       ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
+       (update-subdirs, compile-main, compile-clean):
+       Replace "setwins" usage with new "SUBDIRS" variables.
+
+       * lisp/vc/compare-w.el (compare-windows-get-window-function):
+       Fix :version tag.
+
+2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * src/ftfont.c (ftfont_open2): Round divisions by upEM.
+
+       Undo removal of x_clear_area call on expose for GTK3 or cairo.
+       * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
+       exposed area.  (Bug#20677)
+
+2015-06-04  Glenn Morris  <rgm@gnu.org>
+
+       * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
+
+       * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
+
+       * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
+       Rename from quail-lao-update-translation, since lao.el defines that.
+
+2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Handle new-style advice in find-funct
+       * lisp/emacs-lisp/find-func.el (find-function-advised-original):
+       Handle new-style advice.  Return the symbol's function definition.
+       (Bug#20718)
+       (find-function-library): Update accordingly.
+
+2015-06-04  Nicolas Petton  <nicolas@petton.fr>
+
+       Merge branch 'map'
+
+       * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
+
+       Add new function string-greaterp
+       * lisp/subr.el (string-greaterp): New function.  Also aliased to
+       `string>'.
+       * test/automated/subr-tests.el (string-comparison-test): Add unit
+       tests for `string>'and `string<'.
+       * src/fns.c (string-lessp): Better docstring.
+
+2015-06-04  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix timezone-related functions on MS-Windows
+       * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
+       'xputenv', even if no reallocation of tzvalbuf was necessary.
+       This fixes a bug in timezone-related functions on MS-Windows.
+       Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
+
+2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't pass raw directory name to 'error'
+       * lisp/files.el (basic-save-buffer-2): Avoid format error if
+       a directory name contains a string like "%s".
+
+2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Override 'grep --color=always'
+       * lisp/progmodes/xref.el (xref-collect-matches):
+       Override --color=always in grep-find-template.
+
+2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
+
+       Fix error introduced recently in file-notify-tests.el
+       * test/automated/file-notify-tests.el
+       (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
+       (file-notify--deftest-remote): Revert previous patch, not
+       necessary anymore.
+
+2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
+
+       * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
+       Starting from a display string after a newline, point went to the
+       previous line.  Also, fix an inadvertent use of a buffer position
+       with FETCH_BYTE.  (Bug#20701)
+
+2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
+
+       Instrument file-notify-test.el in order to catch hydra error.
+       * test/automated/file-notify-tests.el (file-notify--deftest-remote):
+       Wrap body by `ignore-case', in order to trap non-local errors.
+
+2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       Undo previous changes in non-toolkit scroll bar drawing.
+       * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
+       [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
+
+2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * .gitignore: Also ignore doc/*/*/*.html and .ps.
+
+       Support quotes 'like this' in info files
+       This is possible when 'makeinfo --disable-encoding' is used
+       in Texinfo 5.
+       * lisp/calc/calc-help.el (calc-describe-thing):
+       * lisp/gnus/gnus-art.el (gnus-button-alist):
+       * lisp/info.el (Info-find-index-name):
+       * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
+       Also support quotes 'like this'.
+       * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
+       * lisp/finder.el (finder-font-lock-keywords): Remove var that
+       hasn't been used in years, instead of bothering to fix its quoting.
+
+2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * .gitignore: Remove !test/etags/html-src/*.html.
+       It's no longer needed, since *.html was removed.  Sort.
+
+2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Restore <D> instead of '.' in grep-find-template
+       * lisp/cedet/semantic/symref/grep.el
+       (semantic-symref-grep-use-template): Update a comment.
+       * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
+       instead of '.' in grep-find-template (bug#20719).
+       (rgrep): Pass nil as the directory to rgrep-default-command.
+       * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
+       default value for DIR.
+       * lisp/progmodes/xref.el (xref-collect-matches): Drop the
+       workaround.
+
+2015-06-02  Glenn Morris  <rgm@gnu.org>
+
+       * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
+
+       * configure.ac (emacs_config_features): Add Cairo.
+
+       * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
+
+2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
+
+       Ensure, that autorevert works for remote files in file-notify-tests.el
+       * test/automated/file-notify-tests.el (file-notify--test-desc):
+       New defvar.
+       (file-notify--test-remote-enabled)
+       (file-notify-test00-availability, file-notify-test01-add-watch)
+       (file-notify-test02-events): Use it.
+       (file-notify--test-event-test): Check proper descriptor.
+       (file-notify-test03-autorevert): Ensure, that
+       `visited-file-modtime' has changed.
+       (Bug#20392)
+
+2015-06-02  Nicolas Petton  <nicolas@petton.fr>
+
+       Add a pcase pattern for maps and `map-let' based on it
+       * lisp/emacs-lisp/map.el (map-let): New macro.
+       (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
+       * test/automated/map-tests.el: New test for `map-let'.
+
+2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Reuse rgrep mechanics in xref-find-regexp
+       * lisp/progmodes/grep.el (rgrep-default-command):
+       Extract from `rgrep'.
+       * lisp/progmodes/xref.el (xref-collect-references): Split from
+       `xref-collect-matches'.  Only handle the case of symbol search.
+       (xref-collect-matches): Instead of Semantic Symref, use
+       `rgrep-default-command', to take advantage of its directory and
+       file ignore settings.
+       (xref--collect-match): Remove the last argument, leaving the
+       regexp construction up to the caller.
+       * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
+       Change to take the xref-collect- function to use as an argument.
+       (elisp-xref-find): Update accordingly.
+       * lisp/progmodes/etags.el (etags--xref-find-matches)
+       (etags-xref-find): Same.
+
+       Move xref-elisp-location to elisp-mode.el
+       * lisp/progmodes/xref.el (xref-elisp-location)
+       (xref-make-elisp-location, xref-location-marker): Remove here.
+       (xref--xref): Don't limit the type of the location slot.
+       * lisp/progmodes/elisp-mode.el (xref-elisp-location):
+       Define as a cl-struct here.
+       (xref-location-marker): Move here.
+
+2015-06-02  Eli Zaretskii  <eliz@gnu.org>
+
+       Minor tweaks for .gitignore
+       * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
+       ignore admin/notes/tags that might be ignored as TAGS on
+       case-insensitive filesystems.  (Bug#20710)
+
+2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Generate curved quotes in ert doc
+       * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
+       (ert-results-mode-menu)
+       (ert-results-pop-to-backtrace-for-test-at-point)
+       (ert-results-pop-to-messages-for-test-at-point)
+       (ert-results-pop-to-should-forms-for-test-at-point)
+       (ert-describe-test):
+       Quote ‘like this’, not `like this', when generating doc strings
+       and the like.
+       * test/automated/ert-x-tests.el (ert-test-describe-test):
+       Allow quoting ‘like this’.
+
+2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
+
+       Add test for previous commit
+       * test/automated/replace-tests.el: New file.
+       (query-replace--split-string-tests): Add test for previous commit.
+
+       Avoid confusion in query-replace history when replacing NUL chars
+       * lisp/replace.el (query-replace--split-string): New function.
+       (query-replace-read-from): Rely on the 'separator' property
+       instead of searching for the NUL character (Bug#20690).
+
+2015-06-02  Glenn Morris  <rgm@gnu.org>
+
+       Merge from origin/emacs-24
+       8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
+
+       * admin/gitmerge.el (gitmerge-commit-message):
+       Exclude "skipped" messages from ChangeLog.
+
+2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
+
+       Sync with Tramp repository
+       * lisp/net/tramp.el (tramp-message): Dump connection buffer error
+       messages.
+       (tramp-handle-make-auto-save-file-name): When calling
+       `make-auto-save-file-name' internally, make sure it uses Unix-like
+       behavior, not Windows-like behavior.
+       * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
+       the local case, because "chown" might fail on w32.
+       * lisp/net/trampver.el (tramp-repository-get-version): Don't run
+       for XEmacs.
+
+2015-06-01  Eli Zaretskii  <eliz@gnu.org>
+
+       MS-Windows followup for batch stdout/stderr output changes
+       * lisp/international/mule-cmds.el (set-locale-environment): In
+       batch mode, use console codepages for keyboard and terminal
+       encoding.  (Bug#20545)
+
+       Update .gitattributes for DOS EOL files
+       * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
+       CRLF end-of-line format.
+
+       NS equivalents of xterm.c and w32term.c changes
+       * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
+       glyph string background also when the font in use claims
+       preposterously large global height value.  Helps to remove
+       artifacts left from previous displays when glyphless characters
+       are displayed as hex code in a box.
+       (x_new_font): Call get_font_ascent_descent to obtain a reasonable
+       value for FRAME_LINE_HEIGHT, even when a font claims very large
+       value for its height.
+
+2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Avoid grave accent quoting in stderr diagnostics
+       A few Emacs diagnostics go directly to stderr, and so can't easily
+       contain curved quotes (as non-UTF-8 locales might mishandle them).
+       Instead of bothering to add support for this rarity, reword the
+       diagnostics so that they don't use grave accent to quote.
+       * src/alloc.c (mark_memory): Fix comment.
+       * src/buffer.c (init_buffer):
+       * src/dispnew.c (init_display):
+       * src/emacs.c (main, sort_args):
+       * src/lread.c (dir_warning):
+       * src/term.c (init_tty):
+       * src/unexmacosx.c (unexec):
+       * src/xfns.c (select_visual):
+       * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
+       Reword stderr diagnostics to avoid quoting `like this'.
+       * src/unexmacosx.c: Include errno.h.
+       * src/xfns.c (select_visual): Encode value for locale.
+
+2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Treat batch stdout/stderr like standard display
+       Calls like (print FOO) could generate improperly encoded or
+       hard-to-read output if FOO contains characters outside the system
+       locale.  Fix this by treating batch stdout and stderr like
+       interactive standard display, when it comes to transliterating and
+       encoding characters (Bug#20545).
+       * doc/emacs/mule.texi (Communication Coding):
+       * doc/lispref/display.texi (Active Display Table):
+       * doc/lispref/nonascii.texi (Locales):
+       * etc/NEWS:
+       * src/coding.c (syms_of_coding):
+       * src/dispnew.c (syms_of_display):
+       Document this.
+       * src/print.c: Include disptab.h.
+       (printchar_to_stream): New function, with much of the guts of the
+       old Fexternal_debugging_output, except this one also uses the
+       standard display table.
+       (printchar, strout, Fexternal_debugging_output): Use it.
+
+2015-05-31  Glenn Morris  <rgm@gnu.org>
+
+       * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
+
+2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Remove unused DEFSYMs
+       Remove DEFSYMs that aren't used at the C level.  Also:
+       * src/decompress.c (Qzlib_dll):
+       * src/font.c (Qunicode_sip):
+       * src/frame.c (Qtip_frame):
+       * src/ftfont.c (Qserif):
+       * src/gnutls.c (Qgnutls_dll):
+       * src/xml.c (Qlibxml2_dll):
+       Move from here ...
+       * src/w32fns.c (syms_of_w32fns): ... to here,
+       as these are used only on MS-Windows.
+
+2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
+
+       Use another default value for tramp-histfile-override
+       * lisp/net/tramp-sh.el (tramp-histfile-override):
+       Use ".tramp_history" as default.
+       Fixes: debbugs:#20446
+
+2015-05-29  Nicolas Petton  <nicolas@petton.fr>
+
+       * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
+
+2015-05-16  Nicolas Petton  <nicolas@petton.fr>
+
+       * etc/NEWS: Add an entry about map.el
+
+       Improve the docstring of functions in map.el
+       Since a map is not a data structure but a concept, adding information
+       about the possible types of maps can be useful information.
+       * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
+       each public function.
+
+2015-04-29  Nicolas Petton  <nicolas@petton.fr>
+
+       Faster implementation of map-empty-p
+       * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
+       specific tests depending on the type of the map.
+
+       * lisp/emacs-lisp/map.el: Better docstrings.
+
+2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
+
+2015-04-25  Nicolas Petton  <nicolas@petton.fr>
+
+       * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
+
+       * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
+
+       Fix a false negative in `map-elt' with alists and values being nil
+       * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
+       found but its associated value is nil, do not return the default
+       value.
+       * test/automated/map-tests.el: Add a regression test.
+
+2015-04-24  Nicolas Petton  <nicolas@petton.fr>
+
+       * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
+
+       Do not signal an error when trying to delete a key from an array
+       * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
+       the key is present to avoid signaling an error.
+       * test/automated/map-tests.el: Add a test for deleting non-existing
+       keys from maps.
+
+       * lisp/emacs-lisp/map.el: Better docstring.
+
+       Minor improvement in map-elt.
+       * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
+       doing a lookup in arrays, but check the boundaries of the array
+       instead.
+       * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
+       and a negative integer as key.
+
+2015-04-21  Nicolas Petton  <nicolas@petton.fr>
+
+       * test/automated/map-tests.el: Refactoring of test methods.
+
+       * test/automated/map-tests.el: Renamed from map-test.el.
+
+2015-04-18  Nicolas Petton  <nicolas@petton.fr>
+
+       * lisp/emacs-lisp/map.el (map-into): Better error message.
+
+       * lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
+
+       Throw an error when converting a map into an unknown map type
+       * lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
+       * test/automated/map-test.el: Add a regression test.
+
+       New library map.el similar to seq.el but for mapping data structures.
+       * test/automated/map-test.el: New file.
+       * lisp/emacs-lisp/map.el: New file.
+
+2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Make sure there's no explicit tag name
+       * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
+       there's no explicit tag name (bug#20629).
+
+2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Remove format2
+       * src/editfns.c, src/lisp.h (format2): Remove.
+       It is more trouble than it's worth, now that we have CALLN.
+       This is just a minor refactoring.
+       * src/buffer.c (Fkill_buffer):
+       * src/dbusbind.c (XD_OBJECT_TO_STRING):
+       * src/fileio.c (barf_or_query_if_file_exists):
+       Adjust to format2 going away.
+
+       Don't misencode C-generated messages
+       Also, be more consistent about calls to 'Fmessage' vs 'message'.
+       * src/alloc.c (Fgc_status):
+       Prefer AUTO_STRING to build_string for Fmessage call.
+       * src/data.c (Fmake_variable_buffer_local)
+       (Fmake_local_variable, Fmake_variable_frame_local):
+       * src/doc.c (store_function_docstring):
+       Use Fmessage, not message, since the argument can contain
+       non-ASCII characters, and this can cause the resulting message
+       to be incorrectly encoded for the current environment.
+       * src/fns.c (maybe_resize_hash_table):
+       * src/xselect.c (x_clipboard_manager_save_all):
+       Use message, not Fmessage, since Fmessage's power isn't needed here.
+       * src/process.c (Fmake_network_process): Reword message to avoid %s.
+       * src/xdisp.c (vmessage): Document restrictions on message contents.
+       (message_nolog) [false]: Remove unused code.
+
+       Use \r rather than ^M in string literals
+       This is less likely to cause problems on platforms that
+       use CRLF (or CR!) termination for lines.
+
+       Update .gitattributes to match current sources
+       http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
+       * .gitattributes: Accommodate tests that insist on DOS format.
+       Remove test/automated/data/decompress/foo-gzipped.
+       Add etc/e/eterm-color.
+
+2015-05-30  Eli Zaretskii  <eliz@gnu.org>
+
+       Document 'face-ignored-fonts'
+       * doc/emacs/mule.texi (Modifying Fontsets): Document
+       face-ignored-fonts.  (Bug#20628)
+
+       Add etags test for the new -Q option
+       * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
+       * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
+       * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
+       test-case changes below.
+       * test/etags/ETAGS.good_6: New file.
+       * test/etags/cp-src/x.cc: New file.
+       * test/etags/Makefile (CPSRC): Add x.cc.
+       (check): Add one more test, for -Q.
+
+2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Use list for the tags completion table, not obarray
+       * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
+       list instead of an obarray
+       (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
+       (tags-completion-table): Combine those lists.
+       (tags-completion-table): Update the docstring.
+
+2015-05-30  Eli Zaretskii  <eliz@gnu.org>
+
+       Restore EOL format testing in etags
+       * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
+       * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
+       * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
+       test-case changes below.
+       * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
+       * test/etags/cp-src/c.C (B): Add back stray CR character.
+       * test/etags/c-src/dostorture.c: Add back.
+       * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
+
+2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
+
+       Declare Emacs on MS-Windows to be DPI-aware
+       * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
+       * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
+       This avoids Windows entering compatibility mode for Emacs,
+       which causes fonts to look less nice.
+
+2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
+
+       Improve Tramp traces.
+       * lisp/net/trampver.el (tramp-repository-get-version): New defun.
+       * lisp/net/tramp.el (tramp-debug-message): Use it.
+
+2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       backup-buffer minor reworking of internals
+       * lisp/files.el (backup-buffer): Rework to avoid a couple of
+       unused locals inadvertently introduced in the previous change.
+
+       backup-buffer now reports .emacs.d/%backup% ills
+       * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
+       fails due to disk space exhaustion or whatever, do not pretend
+       that it succeeded.  More generally, do a better job of checking
+       for I/O failures, and limit the scope of the condition-case to
+       just the operations where file errors should be caught and ignored
+       (Bug#20595).  Also, don't bother trying to delete later backups if
+       an earlier deletion fails, as this is a sign of trouble and it's
+       better to stop when there's trouble.
+
+       copy-file now truncates output after writing
+       * src/fileio.c (Fcopy_file): Truncate output after writing rather
+       than before.  This is more likely to work than truncation before
+       writing, if the file system is out of space or the user is over
+       disk quota (Bug#20595).  Also, check for read errors.
+
+2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el: Don't load from parent dir
+       (package-load-all-descriptors): Don't load descriptors from
+       directories above the package directories.
+
+2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Merge from gnulib
+       This incorporates the following (Bug#20681):
+       2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
+       2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
+       * lib/set-permissions.c: Copy from gnulib.
+
+2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
+
+       Improve Tramp traces.
+       * lisp/net/tramp.el (tramp-call-process-region): New defun.
+       * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
+
+2015-05-29  Glenn Morris  <rgm@gnu.org>
+
+       * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
+
+2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
+
+       * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
+       The signature was changed in the cairo branch, merged on 2015-05-23.
+       This oversight broke compiling only the non-toolkit X version.
+
+2015-05-29  Samer Masterson  <samer@samertm.com>
+
+       * doc/lispref/os.texi: Update initial-buffer-choice docs.
+
+2015-05-29  Glenn Morris  <rgm@gnu.org>
+
+       * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
+       Mark as an expected failure.
+
+2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Change package test to look for curved quotes
+       * test/automated/package-test.el (package-test-describe-package)
+       (package-test-signed): Search for curved single quotes as well as
+       for grave accent and apostrophe.
+
+2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       gnus-art.el: Re-revert last change
+       * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
+       cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
+
+2015-05-28  Samer Masterson  <samer@samertm.com>
+
+       Show files when `initial-buffer-choice' is non-nil
+       * startup.el (command-line-1): When Emacs is given a file as an
+       argument and `initial-buffer-choice' is non-nil, display both the file
+       and `initial-buffer-choice'.  For more than one file, show
+       `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
+       commands out of the command line arg parser.
+       (initial-buffer-choice): Clarify docstring.
+
+2015-05-28  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix last commit
+       * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
+       (gnulib module qcopy-acl): Add back, as it is harmless.  This
+       minimizes differences wrt lib/gnulib.mk.
+
+       Fix the MS-Windows build as followup to gnulib update
+       * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
+       set-permissions.c, as they don't compile on MinGW.
+       (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
+
+2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Revert my change to gnus-art.el
+       * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
+       It wasn't that important, and it caused a Gnus build to fail.  See:
+       http://www.randomsample.de:4456/builders/emacs-devel/builds/734
+
+       New minor mode Electric Quote
+       This lets you easily insert quotes ‘like this’ by typing
+       quotes `like this', and similarly you can easily insert
+       quotes “like this” by typing quotes ``like this'' (Bug#20545).
+       * doc/emacs/basic.texi (Inserting Text):
+       * doc/emacs/modes.texi (Minor Modes):
+       * etc/NEWS: Document it.
+       * doc/emacs/text.texi (Quotation Marks): New section.
+       * lisp/electric.el (electric-quote-comment)
+       (electric-quote-string, electric-quote-paragraph):
+       New custom vars.
+       (electric--insertable-p)
+       (electric-quote-post-self-insert-function): New functions.
+       (electric-quote-mode, electric-quote-local-mode): New minor modes.
+       * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
+       Add curved single quotes to electric-pair-text-pairs.
+       Set electric-quote-string in this buffer.
+
+       A few more doc string fixes (Bug#20385)
+
+       Accept curved quotes in doc strings
+       * lisp/info-look.el (info-lookup-guess-custom-symbol):
+       (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
+
+       Generate curved quotes in pseudo-info nodes
+       * lisp/info.el (Info-virtual-index-find-node)
+       (Info-virtual-index, Info-apropos-find-node, info-apropos):
+       Quote ‘like this’, not `like this', when generating pseudo-info nodes.
+
+       Fix minor quoting problems in doc strings
+       Most of these fixes involve escaping grave accents that are
+       actually intended to be grave accents, not left quotes.
+       (Bug#20385)
+
+       Support curved quotes in doc strings
+       Emacs's traditional doc string style has been to quote symbols
+       `like this'.  This worked well on now-obsolete terminals where
+       ` and ' were symmetric quotes, but nowadays curved quotes
+       ‘like this’ look better.  Support quoting the new way too.
+       (Bug#20385)
+       * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
+       ‘like-this’ as well as `like-this'.
+       * etc/NEWS: Mention this.
+       * lisp/cedet/mode-local.el (overload-docstring-extension)
+       (mode-local-print-binding, mode-local-describe-bindings-2):
+       * lisp/cus-theme.el (describe-theme-1):
+       * lisp/descr-text.el (describe-text-properties-1, describe-char):
+       * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
+       * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
+       * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
+       (eieio-help-constructor):
+       * lisp/emacs-lisp/package.el (describe-package-1):
+       * lisp/faces.el (describe-face):
+       * lisp/help-fns.el (help-fns--key-bindings)
+       (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
+       (help-fns--interactive-only, describe-function-1):
+       (describe-variable):
+       * lisp/help.el (describe-mode):
+       * lisp/international/mule-cmds.el (describe-input-method)
+       (describe-language-environment):
+       * lisp/international/mule-diag.el (describe-character-set)
+       (print-coding-system-briefly, list-input-methods)
+       (list-input-methods-1):
+       Insert curved quotes rather than grave accent and apostrophe.
+       * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
+       * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
+       (checkdoc-proper-noun-region-engine):
+       * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
+       (lisp-cl-font-lock-keywords-2):
+       * lisp/finder.el (finder-font-lock-keywords):
+       * lisp/gnus/gnus-art.el (gnus-button-alist):
+       * lisp/help-fns.el (help-do-arg-highlight)
+       (describe-function-1, describe-variable):
+       * lisp/help-mode.el (help-xref-symbol-regexp)
+       (help-xref-info-regexp, help-xref-url-regexp):
+       * lisp/help.el (describe-mode):
+       * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
+       * lisp/wid-edit.el (widget-documentation-link-regexp):
+       Parse symbols quoted ‘like-this’ as well as `like-this'.
+       * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
+       Add "‘" and "’" to electric-pair-text-pairs.
+       (elisp--form-quoted-p): Also allow "‘" as a quoting char.
+       (elisp-completion-at-point, elisp--preceding-sexp):
+       Also treat "‘" and "’" as quoting chars.
+
+       substitute-command-keys now curves quotes
+       So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
+       * doc/lispref/help.texi (Keys in Documentation):
+       * etc/NEWS: Document this.
+       * src/doc.c (Fsubstitute_command_keys): Implement it.
+
+2015-05-28  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
+       (rmail-summary-by-topic, rmail-summary-by-senders):
+       No longer strip leading/trailing whitespace.
+
+       * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
+       (f90-no-block-limit): Add "enum".  (Bug#20680)
+       * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
+       New tests.
+
+2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/isearch.el (isearch--current-buffer): Give a default value.
+
+       Un-revert changes mistakenly dropped by f9fabb2b
+
+2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Merge from gnulib
+       This incorporates:
+       2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
+       2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
+       2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
+       2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
+       2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
+       2015-05-26 stdio: fix probe on mingw under gcc 5.1
+       * admin/merge-gnulib (GNULIB_MODULES):
+       Replace qacl with qcopy-acl, since we don't need the rest of qacl.
+       * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
+       * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
+       * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
+       Get latest versions from gnulib.
+       * lib/get-permissions.c, lib/set-permissions.c: New files.
+       * lib/gnulib.mk, m4/gnulib-comp.m4:
+       Regenerate.
+       * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
+
+2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Delete the old process in vc-setup-buffer
+       * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
+       process here.
+       (vc-do-command): Rather than here (bug#20608).
+
+2015-05-27  Ivan Shmakov  <ivan@siamics.net>
+
+       Avoid gratuitous delete-dups in face-at-point.
+       * lisp/faces.el (face-at-point): Do not compute the properly
+       ordered, duplicate-free list if only a single value is
+       requested anyway.  (Bug#20519)
+
+       Show the exact C-x 8 RET invocation in describe-char.
+       * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
+       invocation instead of a template.  (Bug#20522)
+
+2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el: Don't erase tags on refresh
+       (package-menu--post-refresh): Call `tabulated-list-print' with the
+       UPDATE argument.  This only affects the refresh action, the revert
+       action still erases tags.
+       (package-menu-get-status): Change `assq' to `assoc'.
+       (package-menu--mark-upgrades-1): New function.
+       (package-menu--mark-upgrades-pending): New variable.
+       (package-menu-mark-upgrades): Use them to delay marking until
+       after refresh is done.
+       (package-menu--post-refresh): Call mark-upgrades-1 if
+       mark-upgrades-pending is non-nil.
+
+2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
+
+       Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
+
+2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/isearch.el (isearch--current-buffer): New var
+       (isearch-update): Set cursor-sensor-inhibit here.
+       (isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
+
+       Change inhibit-point-motion-hooks to t
+       * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
+       to t and document it as obsolete.
+
+2015-05-27  Eli Zaretskii  <eliz@gnu.org>
+
+       Support ZIP files that use Zip64 extensions
+       * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
+       format of central directory offsets used by Zip64 extensions.
+       (Bug#20665)
+
+2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
+
+       New test tramp-test30-make-auto-save-file-name
+       * tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
+       (tramp-test31-special-characters)
+       (tramp-test31-special-characters-with-stat)
+       (tramp-test31-special-characters-with-perl)
+       (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
+       (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
+       (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
+       (tramp-test34-recursive-load, tramp-test35-unload): Rename.
+
+       Improve tramp-handle-make-auto-save-file-name
+       * tramp.el (tramp-auto-save-directory): Add :tags.
+       (tramp-handle-make-auto-save-file-name): Let native
+       `make-auto-save-file-name' use `auto-save-file-name-transforms',
+       if `tramp-auto-save-directory' is not set.
+
+2015-05-27  Glenn Morris  <rgm@gnu.org>
+
+       No longer set dired-directory in eshell.  (Bug#16477)
+       * lisp/eshell/esh-mode.el (eshell-mode):
+       * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
+
+       * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
+
+       Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
+       * lisp/progmodes/cc-mode.el (c-mode-help-address):
+       Change to submit@debbugs.
+       (c-mode-bug-package): New constant.
+       (mail-position-on-field): Declare.
+       (c-submit-bug-report): Insert X-Debbugs-Package header.
+       * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
+       Mention debbugs.gnu.org.
+
+2015-05-26  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
+       (rmail-summary-by-recipients, rmail-summary-by-topic)
+       (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
+       * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
+
+2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Handle curved quotes in info files
+       * lisp/calc/calc-help.el (calc-describe-thing):
+       * lisp/info.el (Info-find-index-name)
+       (Info-try-follow-nearest-node, Info-fontify-node):
+       * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
+       In info files, process quotes ‘like this’ the same way we process
+       quotes `like this'.  This catches a few places we missed earlier.
+
+2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
+
+       xref-prompt-for-identifier: Use a list value
+       * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
+       value, to be interpreted as a list of commands.
+       (xref--prompt-p): New function.
+       (xref--read-identifier): Use it.
+
+2015-05-26  Eli Zaretskii  <eliz@gnu.org>
+
+       Teach MS-Windows font back-end return per-glyph ascent/descent
+       * src/w32font.h (struct w32_metric_cache): Add ascent and descent
+       values.
+       * src/w32font.c (w32font_text_extents): Compute, cache, and
+       accumulate per-glyph ascent and descent values, instead of copying
+       global values from the font.  If the values are not available from
+       the font data, i.e., non-TTF fonts, fall back on font-global values.
+       (compute_metrics): Compute and return per-glyph ascent and descent
+       values, if returned by GetGlyphOutlineW, falling back on
+       font-global values.  (Bug#20628)
+       * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
+       height of rectangle to be drawn, to be compatible with
+       XDrawRectangle.  Fixes glyphless-char display as hex codes in a
+       box, when per-glyph ascent/descent values are used.
+
+2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
+       (tabulated-list-print): Don't sort if sorter is nil
+
+2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
+
+       Fix Bug#20621
+       * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
+       are major modes which set `auto-save-mode' on their own rules;
+       Tramp shall not overwrite such settings.
+       (Bug#20621)
+
+2015-05-26  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
+       (desktop-load-file): Guess that "foobar" defines "foobar-mode".
+       (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
+       Doc updates.
+       (vc-dir-mode): Remove unnecessary autoload.
+
+2015-05-25  Philipp Stephani  <phst@google.com>
+
+       * lisp/term/xterm.el: Add gui-get-selection support via OSC-52
+       (xterm--extra-capabilities-type): Add `getSelection'.
+       (xterm--query): Add `no-async' argument.
+       (xterm--init-activate-get-selection): New function.
+       (terminal-init-xterm): Use it.
+       (xterm--init-modify-other-keys): Rename from
+       terminal-init-xterm-modify-other-keys.
+       (xterm--init-bracketed-paste-mode): Rename from
+       terminal-init-xterm-bracketed-paste-mode.
+       (xterm--init-activate-set-selection): Rename from
+       terminal-init-xterm-activate-set-selection.
+       (xterm--selection-char): New function.
+       (gui-backend-set-selection): Use it.  Use the &context to only apply
+       this method in terminals where we enabled the feature.
+       (gui-backend-get-selection): New method.
+
+2015-05-25  Daniel Colascione  <dancol@dancol.org>
+
+       Add C-language keyword constants to C++
+       * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
+       keyword constants to C++.
+
+2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Make TAGS files more portable to MS-Windows
+       * etc/NEWS: Document this.
+       * lib-src/etags.c (readline_internal) [DOS_NT]:
+       Don't treat CRs differently from GNUish hosts.
+       * lisp/progmodes/etags.el (etags-goto-tag-location):
+       Adjust STARTPOS to account for the skipped CRs in dos-style files.
+
+2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
+
+       Improve fix of debbugs:20634 in tramp-sh.el
+
+2015-05-25  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix a typo in last commit
+       * lib-src/etags.c (C_entries): Fix a typo.
+       * test/etags/ETAGS.good_1:
+       * test/etags/ETAGS.good_2:
+       * test/etags/ETAGS.good_3:
+       * test/etags/ETAGS.good_4:
+       * test/etags/ETAGS.good_5:
+       * test/etags/CTAGS.good: Update due to the change in etags.c.
+
+       Fix tagging of class members in C-like OO languages
+       * lib-src/etags.c (longopts): Add new option --class-qualify and
+       its shorthand -Q.
+       (print_help): Add help text for --class-qualify.
+       (main): Add handling of -Q.
+       (consider_token, C_entries) <omethodparm>: Append argument types
+       to Objective C methods only if --class-qualify was specified.
+       Qualify C++, Objective C, and Java class members with their class
+       names only if --class-qualify was specified.
+       (C_entries): If --class-qualify was not specified, remove the
+       namespace and class qualifiers from tag names of C++ methods.
+       This allows to use etags.el as xref back-end without the
+       tag-symbol-match-p method, which greatly increases the number of
+       potentially false positives.  (Bug#20629)
+       * doc/man/etags.1: Update to document the new --class-qualify
+       option.
+       * test/etags/ETAGS.good_1:
+       * test/etags/ETAGS.good_2:
+       * test/etags/ETAGS.good_3:
+       * test/etags/ETAGS.good_4:
+       * test/etags/ETAGS.good_5:
+       * test/etags/CTAGS.good: Update due to changes in etags.c.
+
+2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       (cl-generic-define-method): Side effects are evil (bug#20644)
+       * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
+       cons-cells that might be used as keys in an `equal' hash-table.
+
+2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       Make erc timestamps visible again
+       * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
+       timestamps visible again (if requested).
+
+2015-05-25  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix last change in etags.c that broke tagging compresed files
+       * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
+       quoting of decompression shell command for MS-Windows/MS-DOS.
+
+2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
+       (Bug#20639)
+
+2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
+
+       Fix typo in 89035e247591c8d688fce922b7079881aa110f33
+
+2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
+
+       Fix IPv6 addresses in Tramp
+       * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
+       Add sqare brackets around host name.
+
+2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
+
+       Inhibit `epa-file-handler' in Tramp
+       (Bug#20634)
+       * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
+       (tramp-sh-handle-insert-file-contents-literally): Inhibit also
+       `epa-file-handler'.
+
+2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
+       (pcase-let): Document the behavior in case the pattern doesn't match.
+
+2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/tabulated-list.el: New optional print method
+       (tabulated-list-print): New optional argument, UPDATE.  If
+       non-nil, the list is printed by only adding and deleting the
+       changed entries, instead of erasing the whole buffer.  This method
+       is much faster when few or no entries have changed.
+       * doc/lispref/modes.texi (Tabulated List Mode): Document it.
+       * etc/NEWS: Document it.
+
+       * lisp/emacs-lisp/tabulated-list.el: Improve printing
+       (tabulated-list--get-sorter): New function.
+       (tabulated-list-print): Restore window-line when remember-pos is
+       passed and optimize away the `nreverse'.
+
+2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Simpilify etags TEX mode scanning
+       * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
+       Remove static vars.
+       (TeX_commands): Deduce escapes here instead.
+       (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
+       This removes the need for a reset_input call.
+
+       Improve etags I/O error reporting
+       * lib-src/etags.c:
+       Don't include sys/types.h and sys/stat.h; no longer needed.
+       (infilename): New static var.
+       (process_file_name): Don't call 'stat'.  Instead, just open the
+       file for reading and report any errors.  Don't bother making
+       a copy of the file argument; it's not needed.  Be more careful to
+       use the failing errno when reporting an error.
+       Quote the real name better (though no perfectly)
+       when passing it to the shell.
+       (reset_input): New function, which reports I/O errors.
+       All uses of 'rewind' changed to use this function.
+       (perhaps_more_input): New function, which also checks for
+       I/O errors.  All uses of 'feof' changed to use this function.
+       (analyze_regex): Report an error if fclose fails.
+       (readline_internal): Report an error if getc fails.
+       (etags_mktmp): Return an error if close fails.
+
+       etags.c: avoid side effects in 'if'
+       * lib-src/etags.c (process_file_name, Perl_functions)
+       (TEX_decode_env): Hoist side effects into previous statement.
+
+       .gitignore tweaks
+       * .gitignore: Ignore all *.stamp files.  Sort.
+       Ignore [0-9]*.txt (commonly used name for git patches)
+       and /vc-dwim-log-* (vc-dwim temporary).
+
+2015-05-24  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix last change in etags.c, which failed the test suite
+       * lib-src/etags.c (intoken): Add '$' to the set, as it was there
+       before the last change.
+
+2015-05-23  Glenn Morris  <rgm@gnu.org>
+
+       Remove charset map files from repository, generate in first bootstrap
+       * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
+       (all): Create the stamp file.
+       (extraclean): Delete the stamp file.
+       * src/Makefile.in (lispintdir, charsets): New variables.
+       (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
+       New rules.
+       (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
+       * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
+       * etc/charsets/*.map: Remove from repository.
+
+2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Cleanup etags.c to use locale-independent code
+       Although this doesn't alter behavior (as etags doesn't use
+       setlocale), the new version is more clearly locale-independent and
+       the executable is a bit smaller on my platform.
+       * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
+       Include <c-ctype.h> instead of <ctype.h>.
+       (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
+       (begtk, midtk):
+       Remove; no longer needed.
+       (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
+       All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
+       c_islower, c_tolower, respectively.
+       (notinname, begtoken, intoken, endtoken): Rewrite as functions
+       instead of macros, and initialize the tables at compile-time
+       rather than at run-time.
+
+       Put default action first in src/Makefile
+       * src/Makefile.in (all): Put this rule before lisp.mk.
+       That way, plain 'make' works in the src directory again.
+
+2015-05-23  Glenn Morris  <rgm@gnu.org>
+
+       * Makefile.in: Fix extraclean rule.
+       (extraclean_dirs): New.
+       (extraclean): Use it.
+
+2015-05-23  Eli Zaretskii  <eliz@gnu.org>
+
+       Avoid compiler warning in image.c on MS-Windows
+       * src/w32term.h (x_query_color): Add prototype, to avoid compiler
+       warning in image.c.
+
+2015-05-23  Glenn Morris  <rgm@gnu.org>
+
+       Fix --without-toolkit-scroll-bars builds.
+       * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
+       Add new argument to x_clear_area1.
+       (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
+       Update x_clear_area arguments.
+
+       * admin/charsets/glibc/: New directory, imported from glibc 2.21.
+       * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
+       Change to included version.
+       (LOCAL, local, totalclean): Remove.
+       (extraclean): Delete all generated files.
+
+2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
+
+       * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
+
+       tags-completion-at-point-function: Don't trust the find-tag function
+       * lisp/progmodes/etags.el (tags-completion-at-point-function):
+       Don't trust the find-tag function.
+
+2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Pacify --enable-gcc-warnings
+       * src/frame.h (x_query_color): Remove redundant extern decl.
+       * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
+       (ftcrfont_match, ftcrfont_open, ftcrfont_close)
+       (ftcrfont_text_extents, ftcrfont_draw):
+       * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
+       (XTframe_up_to_date, x_clear_area1, x_clear_frame)
+       (x_ins_del_lines, frame_highlight, frame_unhighlight)
+       (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
+       (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
+       (x_update_window_begin, x_connection_closed)
+       (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
+       (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
+       (*x_gc_get_ext_data, x_extension_initialize)
+       (x_cr_accumulate_data):
+       Remove redundant static decl.  Many of these GCC doesn't complain
+       about, but we might as well clean out the duplication while we're
+       in the neighborhood.
+       * src/xterm.c (x_fill_trapezoid_for_relief):
+       Remove decl of nonexistent function.
+
+2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       Replace gui-method macros with cl-generic with &context
+       * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
+       (gui-method-declare, gui-call): Remove.
+       (frame-creation-function): Use cl-defgeneric.
+       (make-frame): Adjust callers.
+       * lisp/menu-bar.el (menu-bar-edit-menu):
+       Use gui-backend-selection-exists-p.
+       * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
+       (gui-backend-get-selection): New cl-generic to replace
+       gui-get-selection method.
+       (gui-backend-set-selection): New cl-generic to replace
+       gui-set-selection method.
+       (gui-selection-owner-p): New cl-generic to replace
+       gui-selection-owner-p method.
+       (gui-backend-selection-exists-p): New cl-generic to replace
+       gui-selection-exists-p method.  Adjust all callers.
+       * lisp/server.el (server-create-window-system-frame): Don't ignore
+       window-system spec even when unsupported.
+       * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
+       * lisp/startup.el (handle-args-function, window-system-initialization):
+       Use cl-defgeneric.
+       (command-line): Adjust calls accordingly.
+       * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
+       a window-system-initialization method.
+       (handle-args-function, frame-creation-function): Use cl-defmethod.
+       (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
+       (gui-get-selection): Use cl-defmethod on the new functions instead.
+       * lisp/term/pc-win.el (w16-get-selection-value): Turn into
+       a gui-backend-get-selection method.
+       (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
+       Use cl-defmethod on the new functions instead.
+       (msdos-window-system-initialization): Turn into
+       a window-system-initialization method.
+       (frame-creation-function, handle-args-function): Use cl-defmethod.
+       * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
+       a window-system-initialization method.
+       (handle-args-function, frame-creation-function): Use cl-defmethod.
+       (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
+       (gui-get-selection): Use cl-defmethod on the new functions instead.
+       * lisp/term/x-win.el (x-window-system-initialization): Turn into
+       a window-system-initialization method.
+       (handle-args-function, frame-creation-function): Use cl-defmethod.
+       (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
+       (gui-get-selection): Use cl-defmethod on the new functions instead.
+       * lisp/term/xterm.el (xterm--set-selection): Turn into
+       a gui-backend-set-selection method.
+       * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
+       (Fns_selection_owner_p): Remove unused arg `terminal'.
+       (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
+
+2015-05-23  Eli Zaretskii  <eliz@gnu.org>
+
+       Revert "Fix etags Bug#20629 that broke C++ support."
+       This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
+
+2015-05-23  Jan D  <jan.h.d@swipnet.se>
+
+       Fix etags Bug#20629 that broke C++ support.
+       * etags.el (etags-xref-find-definitions-tag-order): Revert commit
+       from Sun May 10 (Bug#20629).
+
+       Merge branch 'cairo'.
+       Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
+       Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
+
+       Merge branch 'master' into cairo
+
+       Fixes to compile cairo branch without cairo.
+       * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
+       first argument.
+       * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
+       USE_CAIRO.
+
+2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el: Always update selected-packages
+       (package--update-selected-packages): New function.
+       (package-menu-execute): Use it before starting the transaction,
+       this way the list of selected packages is updated even when the
+       transaction fails.
+       (package-menu--perform-transaction): Don't edit selected-packages.
+
+2015-05-23  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix etags reading of compressed files
+       * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
+       Include fcntl.h, for O_CLOEXEC.
+       (process_file_name): Don't use 'popen', whose streams cannot be
+       rewound.  Instead, uncompress the file to a temporary file,
+       created by 'etags_mktmp', and read from that as usual.
+       (etags_mktmp): New function.
+       * test/etags/ETAGS.good_1:
+       * test/etags/ETAGS.good_2:
+       * test/etags/ETAGS.good_3:
+       * test/etags/ETAGS.good_4:
+       * test/etags/ETAGS.good_5: Update to be consistent with latest
+       changes in etags.c regarding reading compressed files.
+
+       Improve documentation of 'set-fontset-font'
+       * doc/lispref/display.texi (Fontsets): Document the value of nil
+       for the 3rd argument of 'set-fontset-font'.
+
+       Fix documentation of forward-line
+       * src/cmds.c (Fforward_line): Clarify the return value if the line
+       at end of accessible portion of the buffer has no newline.
+       * doc/lispref/positions.texi (Text Lines): Document what happens
+       if the line at end of accessible portion of buffer has no newline.
+       (Bug#20587)
+
+2015-05-22  Glenn Morris  <rgm@gnu.org>
+
+       * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
+
+       * admin/charsets/mapconv (LC_ALL): Set to C.
+
+       * Makefile.in: Add admin/charsets into top-level clean rules.
+       (clean): Add admin/charsets.
+       (maybeclean_dirs): New variable.
+       (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
+
+       * admin/charsets/Makefile.in (LOCAL, local): Fix members.
+
+2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
+
+2015-05-22  Glenn Morris  <rgm@gnu.org>
+
+       Generate admin/charsets Makefile via configure, and make more portable.
+       * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
+       (admin/charsets/Makefile): Generate it.
+       * admin/charsets/Makefile.in: Rename from Makefile.
+       (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
+       New variables, set by configure.
+       (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
+       (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
+       (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
+       (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
+       (TRANS_TABLE, CHARSETS): Add directory prefix to value.
+       (all): Declare PHONY.
+       (local): New PHONY target.
+       (map_template): New template.  Use to define short PHONY aliases.
+       (*.map): Add directory prefixes to targets and prerequisites.
+       Respect make verbosity.
+       (JISC6226.map): Replace non-portable sed append without newline.
+       (install): Remove rule.
+       (clean): Only delete temporary sedscript.
+       (bootstrap-clean, distclean, maintainer-clean, extraclean)
+       (totalclean): New PHONY rules.
+       * admin/charsets/mapconv (BASE): Replace basename with expr.
+       (FILE): Add "mapfiles" subdirectory.
+       (AWK): New variable.  Use throughout in place of "awk".
+       (main): Use "gunzip -c" in place of "zcat".
+       Don't leave whitespace before "p", for older sed.
+       * admin/charsets/mapfiles/PTCP154: Add final newline,
+       to make older sed versions happy.
+
+2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
+       (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
+       (auto-revert-notify-watch-descriptor): Use defvar-local.
+       (find-file-hook, auto-revert-tail-mode, )
+       (auto-revert-notify-add-watch): Use setq-local.
+       (auto-revert-notify-add-watch): Don't call make-local-variable on
+       kill-buffer-hook (bug#20601).
+
+2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       Change defgeneric so it doesn't completely redefine the function
+       * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
+       previously defined methods.
+       (cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
+       (cl--generic-prefill-dispatchers): Only define during compilation.
+       (cl-method-qualifiers): Remove redundant alias.
+       (help-fns-short-filename): Silence byte-compiler.
+       * test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
+
+2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       (package-menu-execute): Remove reference to remove-dups
+
+2015-05-21  kwhite  <kwhite@gnu.org>
+
+       * lisp/erc/erc.el: Hide network/channel messages
+       (erc-network-hide-list, etc-channel-hide-list): New lists to define
+       message types per network/channel.
+       (erc-add-targets): New function to parse list of targets
+       (erc-hide-current-message-p): Modified to check for new targets
+
+2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't quote nil and t in doc strings
+       This is as per "Tips for Documentation Strings" in the elisp manual.
+       For consistency, do the same in diagnostics and comments.
+
+2015-05-21  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix a minor problem with mouse-face on mode line
+       * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
+       mouse face also if the mouse pointer hovers above mode-line glyphs
+       that don't come from any Lisp string.  (Bug#20620)
+
+2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el: Fix selected-package logic
+       (package-menu-execute): Mark as selected all non-upgrade packages
+       being installed.
+       (package-menu--perform-transaction): Don't mark anything.
+
+       * lisp/emacs-lisp/package.el: Mode-line progress report
+       (package-menu--transaction-status): New variable.
+       (package-menu-mode, package-menu--perform-transaction): Use it.
+
+       * lisp/emacs-lisp/package.el: Better transaction messages
+       (package-menu--partition-transaction): New function.
+       (package-menu--prompt-transaction-p, package-menu-execute): Use
+       it.
+       (package-menu--perform-transaction): Don't do any messaging.
+
+       * lisp/emacs-lisp/package.el: Revert async package transactions
+       (package-menu-async): Update doc.
+       (package-install-from-archive, package-download-transaction)
+       (package-install, package-menu--perform-transaction)
+       (package-menu-execute): Remove asynchronous functionality.
+
+2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Revert doc string changes to f90.el
+       Problem reported by Glenn Morris in:
+       http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
+       * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
+       Revert recent changes to doc strings, as it's intended that they
+       use grave accent, not quote.
+
+2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
+
+       Improve parameter name
+
+       Add new inline function `hash-table-empty-p'
+
+2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't require help-fns when not needed
+       * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
+       * lisp/emacs-lisp/elint.el:
+       Don't require help-fns at the top level.
+       * lisp/emacs-lisp/advice.el (ad-arglist):
+       * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
+       Don't require help-fns.  (Bug#17001)
+
+2015-05-20  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix slash collapsing in etags on MS-Windows
+       * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
+       MS-Windows code from the Posix code, and support collapsing both
+       forward- and back-slashes on MS-Windows.  Fixes a regression found
+       by the test suite.
+
+       Improve documentation of glyphless-char-display
+       * doc/lispref/display.texi (Glyphless Chars): Improve
+       documentation of glyphless character display.
+
+       Fix "acronym" display of glyphless characters on w32
+       * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
+       ignore "acronym" substitutes of 1 character for glyphless characters.
+
+2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
+
+       Add an automated test for let-when-compile
+       * test/automated/subr-tests.el (let-when-compile): New test.
+
+       Add let-when-compile macro instead of using pcase-let
+       * lisp/subr.el (let-when-compile): New let-like macro that makes its
+       bindings known to macros like `eval-when-compile' in the body.
+       * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
+         `let-when-compile'. Also comment out the unused lexical var
+         `el-kws-re'.
+       The change greatly improves readability, while providing almost the
+       same (even shorter) byte code: instead of pre-evaluating 10 variables,
+       tossing them into a list, and destructuring that list a full screen
+       page later, the variables are simply bound as they are evaluated,
+       wrapped individually in `eval-when-compile'.
+
+2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
+
+       * lisp/emacs-lisp/package.el: "Delete" button in Help buffer
+       (package-delete-button-action): New function.
+       (describe-package-1): Add Delete button.
+
+       * lisp/emacs-lisp/package.el: Better dependency description
+       (package--used-elsewhere-p): New optional arg, ALL, and return
+       package-desc objects instead of names.
+       (package-delete): Update accordingly.
+       (describe-package-1): Describe which packages require the package.
+
+2015-05-20  Martin Rudalics  <rudalics@gmx.at>
+
+       Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
+       * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
+       Fix doc-string (Bug#20533).
+
+       Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
+       * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
+       (switch-to-buffer): If the selected window is strongly dedicated
+       to its buffer, signal error before prompting for buffer name.  Handle
+       `switch-to-buffer-in-dedicated-window'.  (Bug#20472)
+       * doc/lispref/windows.texi (Switching Buffers): Document
+       `switch-to-buffer-in-dedicated-window'.
+
+2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Prefer "this" to “this” in doc strings
+       This mostly just straightens quotes introduced in my previous patch.
+       Suggested by Dmitry Gutov in:
+       http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
+       * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
+       * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
+       * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
+       * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
+       * lisp/vc/log-edit.el, lisp/xt-mouse.el:
+       Prefer straight double quotes to curved double quotes in doc strings.
+
+       Fix minor quoting problems in doc strings
+       These were glitches regardless of how or whether we tackle the
+       problem of grave accent in doc strings.
+       * lisp/calc/calc-aent.el (math-restore-placeholders):
+       * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
+       * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
+       * lisp/leim/quail/hebrew.el ("hebrew-new")
+       ("hebrew-biblical-sil"):
+       * lisp/leim/quail/thai.el ("thai-kesmanee"):
+       * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
+       Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
+       * lisp/calendar/calendar.el (calendar-month-abbrev-array):
+       * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
+       * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
+       * lisp/cedet/semantic/tag.el (semantic-tag-copy)
+       (semantic-tag-components):
+       * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
+       * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
+       * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
+       * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
+       * lisp/emacs-lisp/generator.el (iter-next):
+       * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
+       (gnus-article-mode-syntax-table):
+       * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
+       * lisp/net/soap-client.el (soap-wsdl-get):
+       * lisp/net/telnet.el (telnet-mode):
+       * lisp/org/org-compat.el (org-number-sequence):
+       * lisp/org/org.el (org-remove-highlights-with-change)
+       (org-structure-template-alist):
+       * lisp/org/ox-html.el (org-html-link-org-files-as-html):
+       * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
+       (handwrite-12pt, handwrite-13pt):
+       * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
+       * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
+       * lisp/progmodes/verilog-mode.el (verilog-tool)
+       (verilog-string-replace-matches, verilog-preprocess)
+       (verilog-auto-insert-lisp, verilog-auto-insert-last):
+       * lisp/textmodes/makeinfo.el (makeinfo-options):
+       * src/font.c (Ffont_spec):
+       Fix minor quoting problems in doc strings, e.g., missing quote,
+       ``x'' where `x' was meant, etc.
+       * lisp/erc/erc-backend.el (erc-process-sentinel-2):
+       Fix minor quoting problem in other string.
+       * lisp/leim/quail/ethiopic.el ("ethiopic"):
+       * lisp/term/tvi970.el (tvi970-set-keypad-mode):
+       Omit unnecessary quotes.
+       * lisp/faces.el (set-face-attribute, set-face-underline)
+       (set-face-inverse-video, x-create-frame-with-faces):
+       * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
+       * lisp/mail/supercite.el (sc-attribs-%@-addresses)
+       (sc-attribs-!-addresses, sc-attribs-<>-addresses):
+       * lisp/net/tramp.el (tramp-methods):
+       * lisp/recentf.el (recentf-show-file-shortcuts-flag):
+       * lisp/textmodes/artist.el (artist-ellipse-right-char)
+       (artist-ellipse-left-char, artist-vaporize-fuzziness)
+       (artist-spray-chars, artist-mode, artist-replace-string)
+       (artist-put-pixel, artist-text-see-thru):
+       * lisp/vc/ediff-util.el (ediff-submit-report):
+       * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
+       Use double-quotes rather than TeX markup in doc strings.
+       * lisp/skeleton.el (skeleton-pair-insert-maybe):
+       Reword to avoid the need for grave accent and apostrophe.
+       * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
+       Don't use grave and acute accents to quote.
+
+2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
+
+2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Try to port new etags tests to MS-Windows
+       * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
+       * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
+       * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
+       Adjust to test-case changes below.
+       * test/etags/Makefile (CSRC): Remove dostorture.c.
+       Whatever it was trying to test, wasn't working portably.
+       (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
+       just a line-ending problem.
+       * test/etags/c-src/dostorture.c: Remove.
+       * test/etags/cp-src/c.C: Remove stray CR.
+       * test/etags/html-src/algrthms.html: Remove trailing CRs.
+       State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
+       but if someone edits it later it should stay UTF-8-compatible.
+
+2015-05-19  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix display of overlapping window-specific overlays
+       * src/keyboard.c (adjust_point_for_property): When adjusting point
+       due to display strings, ignore overlays that are specific to
+       windows other than the currently selected one.
+       * src/xdisp.c (handle_single_display_spec): If the display
+       property comes from an overlay, arrange for buffer iteration to
+       resume only after the end of that overlay.  (Bug#20607)
+
+2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
+
+       New command icomplete-force-complete-and-exit
+       * lisp/icomplete.el (icomplete-force-complete-and-exit):
+       New command
+       (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
+       (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
+       (icomplete-minibuffer-map): Bind C-j to it.
+       (icomplete-forward-completions, icomplete-backward-completions):
+       Mention the new command in the docstring.
+       * lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
+       the previous fix for bug#17545.
+
+2015-05-19  Martin Rudalics  <rudalics@gmx.at>
+
+       Fix last commit
+
+       In Elisp manual explain how to override window manager positioning (Bug#20552)
+       * doc/lispref/frames.texi (Position Parameters): Give example of
+       how to override a window manager positioning decision.
+
+       Clarify concept of "surrogate minibuffer frames" (Bug#20538)
+       * src/frame.c (Fdelete_frame): In doc-string mention that frame
+       can't be deleted if it has a surrogate minibuffer.
+       * doc/lispref/frames.texi (Minibuffers and Frames)
+       (Deleting Frames): Explain "surrogate minibuffer frames".
+
+       In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
+       * emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
+
+2015-05-18  Glenn Morris  <rgm@gnu.org>
+
+       Add option to ignore commit lines matching a pattern in ChangeLog.
+       * build-aux/gitlog-to-changelog: Add --ignore-line option.
+       * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
+
+2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't skip new etags tests on non-UTF-8 hosts
+       Problem reported by Eli Zaretskii for MS-Windows.
+       * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
+       (LC_ALL): Set to C if the current locale isn't UTF-8.
+       (.PHONY): Remove ediff_1 thru ediff_5.
+       (check): Always run.
+
+2015-05-18  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/calculator.el (calculator-funcall):
+       * lisp/textmodes/artist.el (artist-spray-random-points):
+       Use standard degree/radian conversion utilities.
+
+       Further lisp-complete-symbol related cleanup.
+       * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
+       Unadvertise non-functional argument.  Replace obsolete alias.
+
+2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Add a test case for Maven warning ouput
+       * test/automated/compile-tests.el
+       (compile-tests--test-regexps-data): Add a case for Maven warning
+       ouput.
+       (compile--test-error-line): Check the compilation message type, if
+       it's specified in the test data.
+
+2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
+
+       Update Maven compilation-mode entry to distinguish warnings
+       * lisp/progmodes/compile.el
+       (compilation-error-regexp-alist-alist): Update Maven entry to
+       distinguish warnings (bug#20556).
+
+2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
+
+       * test/automated/sgml-mode-tests.el: New file.
+
+2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Improve handling of the first Git revision
+       * lisp/vc/log-view.el (log-view-toggle-entry-display): When
+       there's no next entry, delete until the end of the buffer.
+       (log-view-end-of-defun-1): Stop at eob.
+       * lisp/vc/vc-annotate.el
+       (vc-annotate-show-diff-revision-at-line-internal): Don't give up
+       when previous-revision is nil.
+       * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
+       with `--' to avoid ambiguity.
+       (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
+       returned revision string.
+       (vc-git-annotate-time): Expect `^' before the first revision.
+       * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
+       REV1 is nil, and REV2 is not.
+       * lisp/vc/vc.el: Update the description of the `diff' function.
+
+2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
+
+       Allow checkdoc to be called in batch
+       * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
+         is non-nil, echo the error with `warn'.
+       How it can be used in -batch:
+       (with-current-buffer (find-file "checkdoc.el")
+         (checkdoc-current-buffer t))
+
+2015-05-18  Glenn Morris  <rgm@gnu.org>
+
+       * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
+
+2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * admin/notes/unicode: New section "binary files".
+
+       Change new etags test to use UTF-8 encoding
+       * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
+       * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
+       * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
+       * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
+       * test/etags/html-src/softwarelibero.html:
+       Switch to UTF-8 encoding.
+       * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
+       Remove Makefile, as it's too incestuous to have the test input
+       include the build procedure.
+       (UTF8_LOCALE, UTF_ENCODING): New macros.
+       (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
+       (check): Skip if not UTF-8.
+       (.PHONY): New rule.
+       (FRC): Remove, as superseded by .PHONY.  All uses removed.
+       (regexfile): Prefer printf to echo when outputting oddball chars.
+       (.PRECIOUS): Remove, as these files are not built.
+
+       Rename 'foo-gzipped' to 'foo.gz'
+       * test/automated/data/decompress/foo.gz:
+       Rename from test/automated/data/decompress/foo-gzipped,
+       to make it easier for other tools to tell that it's compressed.
+       * test/automated/zlib-tests.el (zlib--decompress):
+       Adjust to renamed file.
+
+2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
+
+       Set up default-directory
+       * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
+       binding for `v'.
+       (vc-annotate-show-changeset-diff-revision-at-line): Set up an
+       appropriate value for default-directory.
+
+2015-05-17  Samer Masterson  <samer@samertm.com>
+
+       * lisp/eshell/em-term.el (eshell-term-sentinel):
+       No-op by default, only kills term buffer if
+       `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
+       (eshell-destroy-buffer-when-process-dies): New custom to preserve
+       previous behavior.
+
+       eshell: Introduce new buffer syntax
+       The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
+       buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
+       needed (Bug#19319).
+       * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
+       (eshell-get-target): Remove shorthand-specific code.
+       * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
+       '#<buffer-name>'.
+
+2015-05-17  Jan D  <jan.h.d@swipnet.se>
+
+       Merge branch 'master' into cairo
+
+2015-04-26  Jan D  <jan.h.d@swipnet.se>
+
+       Merge branch 'master' into cairo
+
+       Add PBM support for cairo.
+       * src/image.c (xcolor_to_argb32): New function.
+       (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
+       (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
+       XImagePtr if ! USE_CAIRO.
+       (pbm_load): Add cairo support.
+
+2015-04-12  Jan D  <jan.h.d@swipnet.se>
+
+       x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
+       * src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
+       (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
+       (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
+       x_free_cr_resources.
+
+       Handle specified bg in images.  Use generic libpng code for PNG:s.
+       * src/image.c (get_spec_bg_or_alpha_as_argb)
+       (create_cairo_image_surface): New functions when USE_CAIRO.
+       (xpm_load): Call the above functions.  Handle XPM without mask
+       when USE_CAIRO.
+       (png_load_body): Handle USE_CAIRO case.
+       (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
+       instead.
+       (jpeg_load_body): Call create_cairo_image_surface.
+       (gif_load, svg_load_image): Handle specified background, call
+       create_cairo_image_surface.
+       * src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
+
+2015-04-11  Jan D  <jan.h.d@swipnet.se>
+
+       Support GIF and Tiff with cairo.
+       * configure.ac: Allow jpeg with cairo.
+       Allow tiff and gif with cairo.
+       * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
+       (tiff_load): Create cairo image surface if USE_CAIRO.
+       (gif_load): Ditto.
+
+       Support JPEG with USE_CAIRO.
+       * configure.ac: Allow jpeg with cairo.
+       * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
+
+2015-04-05  Jan D  <jan.h.d@swipnet.se>
+
+       Support RSVG and cairo.
+       * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
+       * src/dispextern.h (struct image): add cr_data2 if cairo.
+       * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
+       (x_clear_image): Free cr_data and cr_data2 if set.
+       (xpm_load): Assign data to cr_data2.
+       (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
+
+2015-04-03  Jan D  <jan.h.d@swipnet.se>
+
+       Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
+       * configure.ac (HAVE_RSVG): Move after cairo.
+       (USE_CAIRO): Disable rsvg, don't disable Xpm.
+       * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
+       (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
+       don't return early.
+       (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
+       (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
+       and create a surface.
+
+       Tool tips for menus did not show any text.
+       * src/xterm.c (x_update_begin): Don't create any surface for non-visible
+       tip frames, the geometry may be wrong.
+
+       Merge branch 'master' into cairo, fixes tooltips not shown.
+
+       Merge branch 'master' into cairo
+
+       Add CAIRO_CFLAGS to lwlib/Makefile.in
+       * Makefile.in (CAIRO_CFLAGS): Add.
+
+2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
+
+2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       Draw outermost line using black relief and erase corners also for cairo.
+       * xterm.c [USE_CAIRO]: Include math.h.
+       (enum corners) [USE_CAIRO]: New enum.
+       (x_erase_corners_for_relief) [USE_CAIRO]: New function.
+       (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
+       than 1, draw the outermost line using the black relief.
+
+       * xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
+
+2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       * xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
+
+       * xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
+
+       Use int instead of unsigned int for width and height args.
+       * xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
+       (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
+       width and height args.
+
+       Modernize k&r cairo-related function declarations.
+       * gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
+       (xg_print_frames_dialog): Modernize k&r declarations.
+       * xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
+       (Fx_print_frames_dialog): Modernize k&r declarations.
+       * xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
+       (x_end_cr_clip, x_set_cr_source_with_gc_foreground)
+       (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
+       (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
+       (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
+       (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
+       (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
+       (x_clear_area): Modernize k&r declarations.
+
+       Implement wave-style variant of underlining for cairo.
+       * xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
+       (x_draw_underwave) [USE_CAIRO]: Use it.
+
+       * xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
+
+2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+       Fix fringe bitmap initialization for cairo.
+       * fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
+       cairo image surface.
+       * xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
+
+2015-02-11  Jan D  <jan.h.d@swipnet.se>
+
+       Add cairo drawing.
+       * configure.ac (with-cairo): New option.
+       (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
+       set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
+       Output "Does Emacs use cairo?".
+       * lisp/version.el (emacs-version): Add cairo version.
+       * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
+       (FONT_OBJ): Add comment about ftcrfont.
+       (ALL_CFLAGS): Add CAIRO_CFLAGS.
+       (LIBES): Add CAIRO_LIBS.
+       * src/dispextern.h (struct image): Add cr_data for cairo.
+       (x_cr_init_fringe): Declare.
+       * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
+       * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
+       * src/fringe.c (x_cr_init_fringe): New function name that shares code
+       with w32_init_fringe.
+       * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
+       * src/ftfont.c (ftfont_info_size); New global variable.
+       (ftfont_open2): New extern function almost the same as old ftfont_open,
+       but takes the font_object as argument.
+       (ftfont_open): Build font object and call ftfont_open2.
+       * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
+       * src/gtkutil.c (xg_clear_under_internal_border)
+       (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
+       queue_draw if not cairo.  Change args to x_clear_area.
+       (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
+       (xg_page_setup_dialog, xg_get_page_setup, draw_page)
+       (xg_print_frames_dialog): New functions for printing.
+       * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
+       (xg_print_frames_dialog): Declare.
+       * src/image.c: Add defined (USE_CAIRO) for PNG.
+       Add !defined USE_CAIRO for W32 PNG code.
+       (x_clear_image): If cairo, destroy the surface in cr_data.
+       (png_load): Add new cairo compatible implementation.
+       (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
+       * src/xfns.c: New section Printing.
+       (x-export-frames, x-page-setup-dialog, x-get-page-setup)
+       (x-print-frames-dialog): New printing functions.
+       (Fx_create_frame, x_create_tip_frame): Register ftcrfont if
+       cairo.
+       (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
+       Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
+       (syms_of_xfns): Provide cairo and defvar cairo-version-string.
+       defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
+       * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
+       (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
+       (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
+       (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
+       Declare.
+       (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
+       (max_fringe_bmp, fringe_bmp): New variables.
+       (x_gc_get_ext_data, x_extension_initialize)
+       (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
+       (x_set_cr_source_with_gc_foreground)
+       (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
+       (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
+       (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
+       (x_prepare_for_xlibdraw, x_set_clip_rectangles)
+       (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
+       (x_clear_window, x_fill_trapezoid_for_relief): New functions.
+       (x_update_begin): Create cairo surface if needed.
+       (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
+       (x_update_end): Paint cairo drawing surface to xlib surface.
+       (x_clear_under_internal_border, x_after_update_window_line): Adjust
+       arguments to x_clear_area.
+       (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
+       call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
+       of XSetClipMask.
+       (x_set_glyph_string_clipping)
+       (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
+       instead of XSetClipRectangles.
+       (x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
+       x_fill_rectangle instead of XFillRectangle.
+       (x_draw_glyph_string_foreground)
+       (x_draw_composite_glyph_string_foreground)
+       (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
+       of XDrawRectangle.
+       (x_draw_relief_rect): Add code for USE_CAIRO.
+       Call x_reset_clip_rectangles instead of XSetClipMask.
+       (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
+       x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
+       instead of XSetClipMask.
+       (x_draw_image_foreground, x_draw_image_foreground_1):
+       x_draw_rectangle instead of XDrawRectangle.
+       (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
+       XFillRectangle.
+       (x_draw_image_glyph_string): If img has cr_data, use it as
+       a cairo surface.
+       (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
+       XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
+       (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
+       x_reset_clip_rectangles instead of XSetClipMask.
+       (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
+       (x_clear_area1): New function that calls XClearArea.
+       (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
+       non-cairo.
+       (x_clear_frame): x_clear_window instead of XClearWindow.
+       (x_scroll_run): Set frame garbaged if cairo.
+       (XTmouse_position): Initialize *part to 0.
+       (x_scroll_bar_create): Adjust arguments to x_clear_area.
+       (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
+       x_fill_rectangle instead of XFillRectangle.
+       (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
+       arguments to x_clear_area.
+       (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
+       (handle_one_xevent): Adjust arguments to x_clear_area.
+       Destroy cairo surface for frame if ConfigureNotify.
+       (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
+       (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
+       x_reset_clip_rectangles instead of XSetClipMask.
+       (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
+       x_reset_clip_rectangles instead of XSetClipMask.
+       (x_clear_frame_area): Adjust arguments to x_clear_area.
+       (x_free_frame_resources): Call x_prepare_for_xlibdraw.
+       (x_term_init): Call x_extension_initialize if cairo.
+       (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
+       x_cr_destroy_fringe_bitmap for cairo.
+       (x_initialize): Call x_cr_init_fringe for cairo.
+       * src/xterm.h: Add include of cairo header files.
+       (x_bitmap_record): Add img if cairo.
+       (x_gc_ext_data): New struct for cairo.
+       (x_display_info): Add ext_codes for cairo.
+       (x_output): Add cr_context and cr_surface for cairo.
+       (x_clear_area): Change arguments from Display*/Window to frame pointer.
+       (x_query_color, x_begin_cr_clip, x_end_cr_clip)
+       (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
+       (x_cr_draw_frame, x_cr_export_frames): Declare.
+
 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
 
        Fix integer-valued `mouse-highlight' (Bug#20590)
        (vc-git-resolve-when-done): Update to honor the new variable.
        (Bug#20292)
 
-2015-05-16  Eli Zaretskii  <eliz@gnu.org>
-
-       Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
-
 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
 
        * lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
 
 2015-05-02  K. Handa  <handa@gnu.org>
 
-       Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
-
        * cmds.c (internal_self_insert): When we insert spaces for
        padding, set point before the padding spaces, not after them.
 
        (rcirc-next-active-buffer): when there is no new activity, use
        `rcirc-bury-buffers' to hide all RCIRC buffers
 
-2015-04-29  Michael Albinus  <michael.albinus@gmx.de>
-
-       Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
-
 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
 
        Fix DBUS query result parsing for secrets-search-items
        `intangible' since that property is not used any more.
        (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
 
-2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
-
-       Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
-
 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
 
        Use the VC root in `log-edit-listfun'
 
 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
 
-       Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
-
        Fix nasty scoping bug in tramp-cache.el
        * lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
 
        sh
        git commit -am"[this commit message]"
 
+This file records repository revisions from
+commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
+commit 325bf192ae281046834884b12705d6c522871b24 (inclusive).
 See ChangeLog.1 for earlier changes.
 
 ;; Local Variables: