Update authors.el
[emacs.git] / ChangeLog.3
blobc65cf94a3f45026ca3d4fb15d027311ea7b0ddb4
1 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
3         Merge from origin/emacs-25
5         eeecac7 Fix minor quoting problems in doc strings
7 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
9         Merge from origin/emacs-25
11         35ce3fb Don't assume window-point and point are the same
13 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
15         Merge from origin/emacs-25
17         ba2847f ; * lisp/vc/ediff-util.el (ediff-janitor): Fix last change.  ...
18         8b43f97 * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
19         c20035c ; * doc/emacs/programs.texi (Man Page): Fix last change.
20         93d8346 Improve indexing of 'man'
22 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24         Merge from origin/emacs-25
26         d31298d Fix documentation of `window-combination-resize'
27         2086f4c Typo fixes in elisp manual
29 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
31         Merge from origin/emacs-25
33         3980903 ; Update ChangeLog.2, etc/AUTHORS and ldef-boot.el for Emacs ...
34         5878abf Fix 'expand-file-name' during startup on MS-Windows
36 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
38         Merge from origin/emacs-25
40         9a857b9 * admin/authors.el (authors-renamed-files-alist): Addition.
41         6d27423 Tweak refcard note about documentation location
42         e46a134 Improve treatment of Fortran's "class is"
44 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
46         Merge from origin/emacs-25
48         93c0f51 Handle TeX comments when making new paragraph
49         e0884f1 Restore keystroke echo in 'C-q'
50         a6213ce Improve documentation of 'current-word'
51         0828126 Fix a typo in an Eshell defcustom
52         2e361c7 Minor copyedits of electric-pair-mode
53         7499ee8 ; Minor copyedit in the Emacs manual
54         45b652b Fix documentation of 'invocation-directory'
55         7f43d7c * admin/authors.el (authors-aliases): Add an entry.
56         ba48880 ; Fix pl-refcard.tex
58 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
60         Merge from origin/emacs-25
62         7287e96 ; * src/lread.c (openp): Correct an inaccuracy in commentary.
64 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
66         Merge from origin/emacs-25
68         3d63b48 Update ChangeLog files and authors.el
69         9d30264 Fix menu bindings of Dired 'A' and 'Q' commands
70         a725592 Avoid errors in shr-pixel-column due to dedicated windows
71         3138598 Update format-time-string documentation
73 2016-12-07  Sam Steingold  <sds@gnu.org>
75         delete-trailing-whitespace: handle read-only text in buffer
77         * lisp/simple.el (region-modifiable-p): New function.
78         (delete-trailing-whitespace): Us it to avoid trying to delete read-only text.
80 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
82         Fix minor quoting problems in doc strings
84 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
86         Fix --enable-gcc-warnings --with-ns on Fedora
88         * src/Makefile.in (NON_OBJC_CFLAGS): New macro.
89         (ALL_OBJC_CFLAGS): Use it.
90         (EMACS_CFLAGS): New macro, with most of the old ALL_CFLAGS.
91         (ALL_CFLAGS, ALL_OBJC_FLAGS): Use it.
93 2016-12-07  Michael Albinus  <michael.albinus@gmx.de>
95         Fix problems in quoting Tramp file names
97         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Add also hop to result.
98         (tramp-unquote-shell-quote-argument): New defun.
99         (tramp-shell-quote-argument):
100         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
101         (tramp-make-copy-program-file-name):
102         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
103         (tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
104         (tramp-smb-shell-quote-argument): Use it.
106 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
108         ibuffer-map-deletion-lines: Re-included it
110         It was deleted in previous commit, but it's referenced
111         by the macro 'define-ibuffer-op'.
112         * lisp/ibuffer.el (ibuffer-map-deletion-lines): Reinclude it.
114 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
116         ibuffer-unmark-all: simplify code
118         * lisp/ibuffer.el (ibuffer-map-deletion-lines): Delete it.
119         (ibuffer-unmark-all): Simplify code.
121 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
123         define-ibuffer-filter: Discard wrong filters
125         * lisp/ibuf-macs.el (define-ibuffer-filter): Do not store
126         in 'ibuffer-filtering-qualifiers' a wrong filter (Bug#25042).
127         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25042): Add test.
129 2016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
131         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
133         so that it matches the actual implementation.
134         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
136 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
138         ibuffer-decompose-filter-group avoid unwanted side effects
140         * lisp/ibuf-ext.el (ibuffer-delete-alist): Remove it.
141         (ibuffer-remove-alist): New defun; it supersedes 'ibuffer-delete-alist'.
142         All callers changed (Bug#25058).
143         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25058): Add test.
145 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
147         ibuffer-unmark-backward: Unmark the region when is active
149         * lisp/ibuffer.el (ibuffer-unmark-backward):
150         Use 'ibuffer-get-region-and-prefix'; call 'ibuffer-unmark-forward'
151         with the region boundary as the first 2 arguments (Bug#24987).
153 2016-12-07  Nicolas Petton  <nicolas@petton.fr>
155         Docstring improvement for seq-some (bug#25129)
157         * lisp/emacs-lisp/seq.el (seq-some): Make the docstring less confusing
158           regarding the returned value.
160 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
162         dired-unmark-backward: Unmark the region when is active
164         * lisp/dired.el (dired-unmark-backward): Call 'dired-unmark' with
165         a non-nil second argument (Bug#24986).
167 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
169         New test file for ediff
171         Fix previous commit.
172         * test/lisp/vc/ediff-ptch-tests.el: New test.
174 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
176         ediff-context-diff-label-regexp: Detect the end of second file
178         * lisp/vc/ediff-ptch.el (ediff-context-diff-label-regexp): Skip
179         '\n' in file names (Bug#25010).
180         * test/lisp/vc/ediff-ptch-tests.el: New file.
181         (ibuffer-test-bug25010): Add test for Bug#25010.
183 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
185         ibuffer-decompose-filter: Avoid side effects on error
187         * lisp/ibuf-ext.el (ibuffer-decompose-filter):
188         Update 'ibuffer-filtering-qualifiers' only if there is no error (Bug#24997).
189         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997):
190         Update test result as pass.
192 2016-12-07  Tino Calancha  <tino.calancha@gmail.com>
194         ibuffer: compare marks with EQ
196         * lisp/ibuffer.el:
197         (ibuffer-update-title-and-summary)
198         (ibuffer-redisplay-current)
199         (ibuffer-buffer-name-face, ibuffer-unmark-all)
200         (ibuffer-count-deletion-lines, ibuffer-buffer-names-with-mark):
201         Use 'eq' instead of 'char-equal' when comparing mark characters
202         (Bug#25000).
203         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000):
204         Update test result as pass.
206 2016-12-07  Christopher Genovese  <genovese@cmu.edu>
208         ibuffer-saved-filters: Remove extra nesting level
210         Fix Bug#25049.
211         * lisp/ibuf-ext.el (ibuffer-saved-filters): Remove extra
212         nesting level; add transparent setter to adjust old-format values;
213         update doc string.
214         (ibuffer-save-filters): Remove extra level of nesting
215         in ibuffer-saved-filters values when saving new filters.
216         (ibuffer-old-saved-filters-warning): New variable with
217         clickable message with repair options to be displayed
218         as a warning if 'ibuffer-repair-saved-filters' detects
219         a format mismatch.
220         (ibuffer-repair-saved-filters): Add new command to check and
221         repair saved filters format.
222         (ibuffer-included-in-filter-p, ibuffer-decompose-filter):
223         Change access of saved filter data (cadr->cdr) to account
224         for reduced nesting.
225         * test/lisp/ibuffer-tests.el (ibuffer-save-filters):
226         New test; check that filters are saved in the proper format.
228 2016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
230         Clean out some IRIX cruft
232         * etc/MACHINES: Remove obsolete discussion of IRIX.
233         * src/process.c (allocate_pty) [__sgi]: Remove SGI-specific code.
234         (create_process) [HAVE_PTYS]: Don't worry about IRIX.
235         * src/syntax.c (scan_sexps_forward): Remove obsolete comment.
236         * src/unexelf.c [__sgi]: Don't include <syms.h>.
237         (unexec) [__sgi]: Remove SGI-specific code.
239 2016-12-06  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
241         Simplify FUNCTIONP implementation
243         * src/bytecode.c (exec_byte_code):
244         * src/image.c (parse_image_spec):
245         Prefer FUNCTIONP (x) to !NILP (Ffunctionp (x)).
246         * src/eval.c (FUNCTIONP): Move here ...
247         * src/lisp.h: ... from here.  No longer inline, as that
248         bloats the text and does not help speed (at least on my platform).
249         (functionp): Remove this name, since callers use FUNCTIONP.
251 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
253         Don't assume window-point and point are the same
255         The function `cursor-sensor--detect' calls `bobp' to decide whether to
256         check properties at (1- (window-point)).  However, (window-point) may be
257         at beginning of buffer, even if (point) is not.  In this case an
258         `args-out-of-range' error will be signaled (Bug#25104).
260         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
261         value of (window-point) against (point-min), rather than (bobp) to
262         decide if (1- (window-point)) is accessible.
264 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
266         Give test-completion's PREDICATE the hashtable key
268         For hashtable entries with symbol keys, `test-completion' would convert
269         the key to a string before calling PREDICATE, unlike `try-completion'
270         and `all-completions'.
272         * src/minibuf.c (Ftest_completion): Pass original key from hashtable.
274 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
276         Give test-completion's PREDICATE full alist entry
278         Since 2016-06-26 "Fix test-completion with completion-regexp-list", when
279         calling test-completion with an alist collection, the predicate was
280         recieving the string value instead of the alist entry (Bug#24966).
282         * src/minibuf.c (Ftest_completion): Don't modify the found element, just
283         test STRING against `completion-regexp-list'.
284         * test/src/minibuf-tests.el: New tests for `try-completion',
285         `all-completions', and `test-completion'.
287 2016-12-06  Noam Postavsky  <npostavs@gmail.com>
289         Fix ert-tests when running compiled
291         * test/lisp/emacs-lisp/ert-tests.el (ert-test-deftest): Don't test for
292         specific macroexpansion, just check result of evaluation.
293         (ert-test-record-backtrace): Don't hardcode representation of closure in
294         expected backtrace, this lets the test succeed even when the test code
295         is compiled.
297         * lisp/emacs-lisp/ert.el (ert--expand-should-1): Also pass
298         `byte-compile-macro-environment' to `macroexpand', this allows the
299         `should' macro to properly handle macroexpansion of macros that were
300         defined in the same file when it's being compiled (Bug #17851).
302 2016-12-06  Glenn Morris  <rgm@gnu.org>
304         Make "g" in vc push/pull buffers re-push/pull
306         * lisp/vc/vc-bzr.el (vc-bzr--pushpull):
307         * lisp/vc/vc-git.el (vc-git--pushpull):
308         * lisp/vc/vc-hg.el (vc-hg--pushpull):
309         Set compile-command so that "g" works.  (Bug#11446)
311 2016-12-06  Paul Eggert  <eggert@cs.ucla.edu>
313         Change two _Noreturn functions to return void
315         This is a bit clearer than _Noreturn functions that (do not)
316         return a non-void type.
317         * src/callproc.c (call_process) [MSDOS]:
318         Use 'status' local to record status.
319         (child_setup): Return CHILD_SETUP_TYPE.
320         * src/data.c, src/lisp.h (wrong_type_argument): Return void.
321         All callers changed.
322         * src/lisp.h (CHILD_SETUP_TYPE): New macro.
324 2016-12-05  Paul Eggert  <eggert@cs.ucla.edu>
326         Fix GPG bug introduced by Oct file-missing change
328         Problem with visiting nonexistent .gpg file
329         reported by Herbert J Skuhra.
330         * lisp/epa-file.el (epa-file--find-file-not-found-function):
331         (epa-file-insert-file-contents, epa-file-write-region):
332         Signal file-missing or file-error instead of epa-error.
334 2016-12-05  Glenn Morris  <rgm@gnu.org>
336         Tweak recent flymake change
338         * lisp/progmodes/flymake.el (flymake-report-fatal-status):
339         Avoid double message when flymake-log-level >= 0.
340         * doc/misc/flymake.texi (Customizable variables):
341         No longer mention flymake-gui-warnings-enabled.
343 2016-12-05  Katsumi Yamaoka  <yamaoka@jpl.org>
345         Make TAB and M-TAB run widget-forward and widget-backward (bug#25091)
347         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Avoid `shr-next-link'
348         and `shr-previous-link' so TAB and M-TAB run `widget-forward' and
349         `widget-backward' instead (bug#25091).
351 2016-12-05  Michael Albinus  <michael.albinus@gmx.de>
353         Remove compat code in Tramp
355         * lisp/net/tramp.el (tramp-parse-time-months): Remove.
357         * lisp/net/tramp-compat.el (top): Require parse-time.
359         * lisp/net/tramp-smb.el (tramp-smb-read-file-entry):
360         Use `parse-time-months'.
362 2016-12-05  Martin Rudalics  <rudalics@gmx.at>
364         Don't try to split side windows in ibuffer (Bug#25115)
366         * lisp/ibuffer.el (ibuffer-confirm-operation-on): Don't try to
367         split a side window (Bug#25115).
369 2016-12-04  Paul Eggert  <eggert@cs.ucla.edu>
371         * src/lisp.h: Update comment to kick -Og down the road.
373 2016-12-04  Mark Oteiza  <mvoteiza@udel.edu>
375         More image-dired refactoring
377         * lisp/image-dired.el: Remove TODO comment. This appears to have been
378         implemented in 5d7433a "image-dired: Signal an error before calling a
379         missing executable".
380         (image-dired-cmd-create-standard-thumbnail-command): Use %p specifier.
381         Add :version.
382         (image-dired-display-thumbs, image-dired-create-thumbs): Use dolist and
383         when. Remove superfluous call to image-dired-thumb-name. Move single nil
384         binding and setq into dolist form.
386 2016-12-04  Michael Albinus  <michael.albinus@gmx.de>
388         Implement quoting the local part of a remote file name
390         * doc/emacs/files.texi (Quoted File Names):
391         * etc/NEWS: Mention quoting the local part of a remote file name.
393         * lisp/net/tramp.el (tramp-dissect-file-name): Check with
394         `tramp-tramp-file-p'.
395         (tramp-quoted-name-p, tramp-quote-name, tramp-unquote-name):
396         New defsubst.
397         (tramp-handle-substitute-in-file-name)
398         (tramp-handle-make-auto-save-file-name): Handle quoted files.
399         (tramp-shell-quote-argument): Unquote argument.
401         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename):
402         Handle quoted files.
404         * test/lisp/net/tramp-tests.el (tramp--test-expensive-test): New defvar.
405         (tramp--test-make-temp-name): New argument QUOTED.
406         (tramp-test01-file-name-syntax)
407         (tramp-test02-file-name-dissect)
408         (tramp-test04-substitute-in-file-name)
409         (tramp-test05-expand-file-name, tramp-test07-file-exists-p)
410         (tramp-test08-file-local-copy)
411         (tramp-test09-insert-file-contents)
412         (tramp-test10-write-region, tramp-test11-copy-file)
413         (tramp-test12-rename-file, tramp-test13-make-directory)
414         (tramp-test14-delete-directory, tramp-test15-copy-directory)
415         (tramp-test16-directory-files)
416         (tramp-test17-insert-directory)
417         (tramp-test18-file-attributes)
418         (tramp-test19-directory-files-and-attributes)
419         (tramp-test20-file-modes, tramp-test21-file-links)
420         (tramp-test22-file-times, tramp-test23-visited-file-modtime)
421         (tramp-test24-file-name-completion, tramp-test25-load)
422         (tramp-test26-process-file, tramp-test27-start-file-process)
423         (tramp-test28-shell-command, tramp-test30-vc-registered)
424         (tramp-test31-make-auto-save-file-name)
425         (tramp--test-check-files)
426         (tramp-test35-asynchronous-requests): Test also quoted file names.
427         (tramp--test-shell-command-to-string-asynchronously): Rename.
428         (tramp-test29-environment-variables): Use it.
430 2016-12-04  Tino Calancha  <tino.calancha@gmail.com>
432         Fix typo in dired-omit-case-fold-p
434         * lisp/dired-x.el (dired-omit-case-fold-p):
435         Write 'file-name-case-insensitive-p' instead of
436         'file-name-case-sensitive-p'.
437         Add declaration of 'file-name-case-insensitive-p'.
439 2016-12-04  Simen Heggestøyl  <simenheg@gmail.com>
441         Add HTML5 attributes for the input element
443         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 attributes
444         for the input element.
446 2016-12-03  Glenn Morris  <rgm@gnu.org>
448         Obsolete sc-load-hook in favor of eval-after-load
450         * lisp/mail/supercite.el (sc-load-hook): Make obsolete.
451         * doc/misc/sc.texi (Getting Connected, Filling Cited Text):
452         No longer mention sc-load-hook.
454 2016-12-03  Glenn Morris  <rgm@gnu.org>
456         Obsolete calendar-load-hook in favor of eval-after-load
458         * lisp/calendar/calendar.el (calendar-load-hook): Make obsolete.
459         (calendar): Doc fix - no longer mention calendar-load-hook.
460         * doc/emacs/cal-xtra.texi (Calendar Customizing):
461         No longer mention calendar-load-hook.
462         * doc/lispintro/emacs-lisp-intro.texi (X11 Colors):
463         Replace calendar-load-hook in example with with-eval-after-load.
465 2016-12-03  Glenn Morris  <rgm@gnu.org>
467         Fix markup in read-multiple-choice doc (Bug#25102)
469         * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Doc fix.
471 2016-12-03  Glenn Morris  <rgm@gnu.org>
473         Stop flymake using dialog boxes for errors (Bug#16622)
475         * lisp/progmodes/flymake.el (flymake-gui-warnings-enabled):
476         Mark as obsolete.
477         (flymake-display-warning): Turn into an obsolete alias.
478         (flymake-report-fatal-status): Just use message for a warning that
479         was formerly displayed by default.
481 2016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
483         Clean up keymap and menu code in image-dired
485         A function to populate these maps is not necessary, just define the maps
486         once and for all.
487         * lisp/image-dired.el (image-dired-show-all-from-dir): Make prompt
488         clearer and in the spirit of dired's.
489         (image-dired-define-display-image-mode-keymap):
490         (image-dired-define-thumbnail-mode-keymap): Remove.
491         (image-dired-thumbnail-mode-map):
492         (image-dired-thumbnail-mode-line-up-map):
493         (image-dired-thumbnail-mode-tag-map): Assimilate all define-key and mode
494         menu code from the aforementioned removed functions.  Reorder so that
495         the definitions are inherited properly.
496         (image-dired-display-current-image-sized): Fix erroneous message.
497         (image-dired-thumbnail-mode):
498         (image-dired-display-image-mode): Remove defunct call.
500 2016-12-03  Michael Albinus  <michael.albinus@gmx.de>
502         Mention `file-name-case-insensitive-p' as magic file name
504         * doc/lispref/files.texi (Magic File Names):
505         Mention `file-name-case-insensitive-p'.
507         * doc/lispref/variables.texi (Connection Local Variables):
508         Fix typo.
510 2016-12-03  Mark Oteiza  <mvoteiza@udel.edu>
512         Clean up uses of cl-foo in image-dired
514         Both instances here are just emulating cl-find-if.
515         * lisp/image-dired.el: Use cl-lib at compile time.
516         (image-dired-dired-toggle-marked-thumbs): Don't need let* at the top.
517         Replace the cl-foo instances with equivalent cl-loops.
519 2016-12-03  Eli Zaretskii  <eliz@gnu.org>
521         Avoid compilation warnings in nt/*.c files
523         * nt/cmdproxy.c (fail, vfprintf, fprintf, printf, warn)
524         (console_event_handler): Add prototypes.
525         (canon_filename, skip_space, skip_nonspace, get_next_token)
526         (batch_file_p, search_dir, make_absolute, try_dequote_cmdline)
527         (spawn, get_env_size): Now static.
528         * nt/ddeclient.c (DdeCallback): Provide prototype.
529         * nt/addpm.c (DdeCallback): Provide prototype.
530         (add_registry): Now static.
532 2016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
534         Display window before calculating width
536         * lisp/image-dired.el (image-dired-display-thumbs): Display the buffer
537         before calling image-dired-line-up and friends, which in turn calculate
538         the window width. Otherwise, the thumbnail layout will be wrong in
539         a side-by-side split.
541 2016-12-02  Mark Oteiza  <mvoteiza@udel.edu>
543         Use pop-to-buffer-same-window
545         * lisp/image-dired.el (image-dired-dired-with-window-configuration):
546         (image-dired-dired-edit-comment-and-tags): Instead of switch-to-buffer,
547         use pop-to-buffer-same-window cf. Bug#22244.
548         (image-dired-forward-image, image-dired-backward-image): Ignore unused.
550 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
552         Document watchpoints
554         * doc/lispref/debugging.texi (Variable Debugging):
555         * doc/lispref/variables.texi (Watching Variables): New section.
556         * etc/NEWS: Add entry for watchpoints
558 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
560         Add tests for watchpoints
562         * test/src/data-tests.el (data-tests-variable-watchers):
563         (data-tests-local-variable-watchers): New tests.
565 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
567         Ensure redisplay using variable watcher
569         This replaces looking up the variable name in redisplay--variables when
570         setting it.
572         * lisp/frame.el: Replace redisplay--variables with add-variable-watcher
573         calls.
574         * src/xdisp.c (Fset_buffer_redisplay): Rename from maybe_set_redisplay,
575         set the redisplay flag unconditionally.
576         (Vredisplay__variables): Remove it.
577         * src/data.c (set_internal): Remove maybe_set_redisplay call.
579 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
581         Add function to trigger debugger on variable write
583         * lisp/emacs-lisp/debug.el (debug-on-variable-change):
584         (debug--variable-list):
585         (cancel-debug-on-variable-change): New functions.
586         (debugger-setup-buffer): Add watchpoint clause.
588 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
590         Show watchpoints when describing variables
592         * src/data.c (Fget_variable_watchers): New function.
593         * lisp/help-fns.el (describe-variable): Use it to detect watching
594         functions.
596 2016-12-02  Noam Postavsky  <npostavs@gmail.com>
598         Add lisp watchpoints
600         This allows calling a function whenever a symbol-value is changed.
602         * src/lisp.h (lisp_h_SYMBOL_TRAPPED_WRITE_P):
603         (SYMBOL_TRAPPED_WRITE_P): New function/macro.
604         (lisp_h_SYMBOL_CONSTANT_P): Check for SYMBOL_NOWRITE specifically.
605         (enum symbol_trapped_write): New enumeration.
606         (struct Lisp_Symbol): Rename field constant to trapped_write.
607         (make_symbol_constant): New function.
609         * src/data.c (Fadd_variable_watcher, Fremove_variable_watcher):
610         (set_symbol_trapped_write, restore_symbol_trapped_write):
611         (harmonize_variable_watchers, notify_variable_watchers): New functions.
613         * src/data.c (Fset_default): Call `notify_variable_watchers' for trapped
614         symbols.
615         (set_internal): Change bool argument BIND to 3-value enum and call
616         `notify_variable_watchers' for trapped symbols.
618         * src/data.c (syms_of_data):
619         * src/data.c (syms_of_data):
620         * src/font.c (syms_of_font):
621         * src/lread.c (intern_sym, init_obarray):
622         * src/buffer.c (syms_of_buffer): Use make_symbol_constant.
624         * src/alloc.c (init_symbol):
625         * src/bytecode.c (exec_byte_code): Use SYMBOL_TRAPPED_WRITE_P.
626         * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable):
627         (Fmake_variable_frame_local):
628         * src/eval.c (Fdefvaralias, specbind): Refer to Lisp_Symbol's
629         trapped_write instead of constant.
630         (Ffuncall): Move subr calling code into separate function.
631         (funcall_subr): New function.
633 2016-12-02  Glenn Morris  <rgm@gnu.org>
635         Starting doc of user options with "*" is long obsolete
637         * lisp/battery.el (battery-upower-device): Doc fix.
639 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
641         Fix bug#25087
643         * etc/themes/manoj-dark-theme.el: Fix two typos.
645         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
647 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
649         Fix docstrings to have a complete sentence in first line
651         * lisp/dired-x.el (dired-omit-case-fold, dired-omit-case-fold-p): Fix
652         docstrings.
654 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
656         Remove obsolete comments and commented code from dired-x.el
658         * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its
659         1997 answer about whether dired-mark-sexp is used.
660         * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function
661         commented out since before dired-x.el was added to RCS in 1994.
663 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
665         Remove pre-customize dired-x.el documentation
667         * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to
668         use dired-x from .emacs.  It is now fully customizable.
669         * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of
670         how to set this custom variable in .emacs.  It should be customized.
672 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
674         Allow files to be matched case-sensitively in dired-x
676         * lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which
677         controls case folding for matching the regex (Bug#18716).
678         (dired-omit-case-fold): New variable.  Defaults to `t' on case-sensitive
679         systems, `nil' otherwise.
680         (dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold.
681         * doc/misc/dired-x.texi, etc/NEWS: Document dired-omit-case-fold.
683 2016-12-02  Reuben Thomas  <rrt@sc3d.org>
685         Add support for curly quotation marks to electric-pair-mode
687         * lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs): Add
688         entries for left/right single/double quotation marks, from
689         electric-quote-chars. Note that this is safe for single quotation marks,
690         unlike with the ASCII apostrophe, since, although the right quotation
691         mark can be used as an apostrophe, it is the left quotation mark that is
692         typed to get a pair (Bug#24901).
694 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
696         Fix bug#25087
698         * etc/themes/manoj-dark-theme.el: Fix two typos.
700 2016-12-02  Michael Albinus  <michael.albinus@gmx.de>
702         Handle quoted file names in Tramp
704         * lisp/net/tramp.el (tramp-file-name-handler): Handle also the
705         case the file name is quoted.  This is not trapped by the
706         reassigned `tramp-file-name-regexp' anymore.
708 2016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
710         * lisp/battery.el: Add 'battery-upower' -- very fast battery status.
712 2016-12-02  Evgeny Zajcev  <lg.zevlg@gmail.com>
714         Support for rawrgb images using imagemagick
716         * src/image.c (imagemagick_load_image): Set wand size before loading
717         blob when ':width' and ':height' are provided.
719         * lisp/image.el (image-format-suffixes): Add 'image/x-rgb'.
721 2016-12-02  Nikolay Kudryavtsev  <nikolay.kudryavtsev@gmail.com>
723         Fix 'sql-connect' on first invocation
725         * lisp/progmodes/sql.el (sql-connect): Reorder code which sets
726         param-var.  (Bug#19452)
728 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
730         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
732 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
734         Improve indexing of 'man'
736         * doc/emacs/programs.texi (Man Page): Index 'man', not
737         'manual-entry', as the latter is an alias for the former.
738         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
740 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
742         Port to Sun C 5.14
744         Backport from master.  Sun C 5.14 supports C11 but not GCC
745         extensions, and so refuses to compile Emacs without this patch.
746         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
747         size_t, as in general this macro is restricted to signed types.
749 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
751         Fix type typo on Solaris
753         * src/sysdep.c (system_process_attributes) [SOLARIS2 && HAVE_PROCFS]:
754         Fix type mismatch, caught by --enable-check-lisp-object-type.
756 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
758         Merge from gnulib
760         This incorporates:
761         2016-11-27 md4,md5,sha*: tune for recent glibc _STRING_INLINE_unaligned
762         2016-11-21 snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
763         * build-aux/snippet/c++defs.h:
764         * lib/md5.c, lib/sha1.c, lib/sha256.c, lib/sha512.c:
765         Copy from gnulib.
767 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
769         Make struct font_drivers read-only
771         This simplifies the code a bit, and makes the structs more
772         shareable and less likely to become corrupt.
773         * src/alloc.c (cleanup_vector):
774         * src/font.c (valid_font_driver, font_prepare_cache)
775         (font_finish_cache, font_get_cache, font_clear_cache)
776         (register_font_driver, font_update_drivers):
777         * src/font.h (struct font, struct font_driver_list)
778         (valid_font_driver):
779         struct font_drivers are now const.
780         * src/font.c, src/ftcrfont.c, src/ftfont.c, src/nsfont.m, src/xfont.c:
781         Omit no-longer-necessary decls.
782         * src/ftcrfont.c (syms_of_ftcrfont):
783         * src/ftxfont.c (syms_of_ftxfont):
784         * src/xftfont.c (syms_of_xftfont):
785         Omit no-longer-necessary initialization code.
786         * src/ftcrfont.c (ftcrfont_driver):
787         * src/ftfont.c (ftfont_driver):
788         * src/ftxfont.c (ftxfont_driver):
789         * src/macfont.m (macfont_driver):
790         * src/nsfont.m (nsfont_driver):
791         * src/xfont.c (xfont_driver):
792         * src/xftfont.c (xftfont_driver):
793         Use C99-style initializer for ease of maintenance, and make it const.
794         * src/ftcrfont.c, src/ftxfont.c, src/xftfont.c:
795         Refer to functions like ftfont_text_extents directly.
796         * src/ftfont.c (ftfont_get_cache, ftfont_list, ftfont_list_family)
797         (ftfont_has_char, ftfont_encode_char, ftfont_text_extents)
798         (ftfont_get_bitmap, ftfont_anchor_point, ftfont_otf_capability)
799         (ftfont_variation_glyphs, ftfont_filter_properties)
800         (ftfont_combining_capability):
801         * src/xfont.c (xfont_get_cache):
802         Now extern, so that other modules’ struct font_drivers can use
803         them directly.
804         * src/macfont.m (macfont_descriptor_entity):
805         * src/nsfont.m (nsfont_open):
806         Use constant directly; this is clearer.
808 2016-12-01  Richard Stallman  <rms@gnu.org>
810         Fix mail-combine-fields
812         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
813         avoid losing our place in the search loop.
815         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
817 2016-12-01  Helmut Eller  <eller.helmut@gmail.com>
819         Forth related improvements for etags
821         Generate correct tags names for things like "(foo)".
822         Previously "(foo" created.
824         Fix a bug where a tag for "-bar" was created when encountering things
825         like "create-bar".
827         Recognize more words from the Forth-2012 Standard.
829         * lib-src/etags.c (Forth_words): Check for whitespace after defining
830         words.  Create tag with make_tag instead of get_tag to avoid notiname
831         which isn't appropriate for Forth.
833         * test/manual/etags/forth-src/test-forth.fth: Add some test cases.
834         * test/manual/etags/ETAGS.good_1:
835         * test/manual/etags/ETAGS.good_2:
836         * test/manual/etags/ETAGS.good_3:
837         * test/manual/etags/ETAGS.good_4:
838         * test/manual/etags/ETAGS.good_5:
839         * test/manual/etags/ETAGS.good_6:
840         * test/manual/etags/CTAGS.good: Adapt to the changes in etags.c and
841         new test cases.
843 2016-12-01  Eli Zaretskii  <eliz@gnu.org>
845         Fix bugs with buffer-local tags tables
847         * lisp/progmodes/etags.el (visit-tags-table): After
848         'visit-tags-table-buffer' returns, retrieve the value of
849         'tags-file-name' from the buffer we started in.  Force
850         recomputation of 'tags-completion-table' next time it is used,
851         since the list of tags table has changed.
852         (visit-tags-table-buffer): Accept an additional optional argument
853         CBUF, the buffer in which to start processing, and switch to that
854         buffer if CBUF is non-nil.  All callers changed to supply a
855         non-nil CBUF when they call 'visit-tags-table-buffer' in a loop.
856         Doc fix.
857         (tags-completion-table): Accept an optional argument, the buffer
858         for which to build 'tags-completion-table', and build that
859         buffer's completion table.
860         (tags-lazy-completion-table): Pass the current buffer to
861         'tags-completion-table'.
862         (tags-file-name): Don't say in the doc string that setting this
863         variable directly is enough; say that 'visit-tags-table' should be
864         used for that.  (Bug#158)  (Bug#17326)  (Bug#23164)
866         * doc/emacs/maintaining.texi (Select Tags Table): Delete the
867         advice to set 'tags-file-name' directly.
869         * test/lisp/progmodes/etags-tests.el: New tests.
871 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
873         Fix documentation of `window-combination-resize'
875         * src/window.c (Vwindow_combination_resize): Fix doc-string.
876         * doc/lispref/windows.texi (Recombining Windows): Fix
877         documentation of `window-combination-resize'.
879 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
881         * src/lisp.h (LISP_INITIALLY_ZERO): Remove.
883         All uses replaced by LISPSYM_INITIALLY.
885 2016-12-01  Paul Eggert  <eggert@cs.ucla.edu>
887         Make Cairo safer for --enable-gcc-warnings
889         * src/image.c (xcolor_to_argb32, pbm_load, jpeg_load_body, gif_load):
890         Avoid overflow warnings about ‘0xff << 24’.
891         (xpm_load, gif_load): Avoid unnecessary casts.
892         (gif_load): Fewer ifdefs.
894 2016-11-30  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
896         Fix Condition in kbd_buffer_store_buffered_event (bug#19547).
898         * src/keyboard.c (kbd_buffer_store_buffered_event): Should be NILP and not
899         !NILP.
901 2016-11-29  Noam Postavsky  <npostavs@gmail.com>
903         Fix previous commit
905         * lisp/vc/diff-mode.el (diff-refine-hunk): Make sure to go to beginning
906         of hunk before calling `diff-hunk-style'.
908 2016-11-29  Noam Postavsky  <npostavs@gmail.com>
910         * lisp/vc/diff-mode.el (diff-refine-hunk): Remove redundant variable.
912 2016-11-29  Glenn Morris  <rgm@gnu.org>
914         Use archive-mode for .cbr files
916         * lisp/files.el (auto-mode-alist): Add cbr.  (Bug#24994)
918 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
920         Pacify Sun C 5.14
922         * src/lisp.h (enum Lisp_Save_Type): Put SAVE_UNUSED,
923         SAVED_INTEGER, SAVE_FUNCPOINTER, SAVE_POINTER, and SAVE_OBJECT
924         into this enum rather than into an anonymous enum.  This avoids
925         diagnostics from Sun C 5.14 and is a bit clearer anyway.
927 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
929         Adjust lwlib to recent config.h change
931         * lwlib/lwlib-Xaw.c: Include <stdlib.h> for 'abort' (Bug#24506).
933 2016-11-29  Paul Eggert  <eggert@cs.ucla.edu>
935         * src/eval.c (clobbered_eassert): Check E's syntax.
937 2016-11-29  Michael Albinus  <michael.albinus@gmx.de>
939         Improve user retrieval from auth-source in Tramp
941         * lisp/net/tramp.el (tramp-read-passwd, tramp-clear-passwd):
942         Use user for auth-source request only in case it exists.
944 2016-11-29  Katsumi Yamaoka  <yamaoka@jpl.org>
946         shr.el: Don't render a normal table twice
948         * lisp/net/shr.el (shr-collect-extra-strings-in-table):
949         Don't render a table if it is called for the first time,
950         IOW, recognize it to never be invalid (bug#25051).
952 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
954         Typo fixes in elisp manual
956         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
957         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
958         definitions of 'string-prefix-p' and 'string-suffix-p'.
959         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
961 2016-11-28  Dima Kogan  <Dmitriy.Kogan@jpl.nasa.gov>
963         Improve diff-mode navigation/manipulation
965         This is Bug #17544.
967         Navigation and use of diff buffers had several annoying corner cases
968         that this patch fixes.  These corner cases were largely due to
969         inconsistent treatment of file headers.  Say you have a diff such as
970         this:
972          --- aaa
973          +++ bbb
974          @@ -52,7 +52,7 @@
975          hunk1
976          @@ -74,7 +74,7 @@
977          hunk2
978          --- ccc
979          +++ ddd
980          @@ -608,6 +608,6 @@
981          hunk3
982          @@ -654,7 +654,7 @@
983          hunk4
985         The file headers here are the '---' and '+++' lines.  With the point on
986         such a line, hunk operations would sometimes refer to the next hunk and
987         sometimes to the previous hunk.  Most of the time it would be the
988         previous hunk, which is not what the user would expect.  This patch
989         consistently treats such headers as the next hunk.  So with this patch,
990         if the point is on the '--- ccc' line, the point is seen as referring to
991         hunk3.
993         Specific behaviors this fixes are:
995         1. It should be possible to place the point in the middle of a diff
996         buffer, and press M-k repeatedly to kill hunks in the order they appear
997         in the buffer.  With the point on hunk1, M-k M-k would kill hunk1 then
998         hunk2.  With the point on hunk3, it would kill hunk3 then hunk4; this is
999         fine.  However, with the point on hunk2, it'd kill hunk2 then hunk1.
1000         This is fixed by this patch.
1002         2. Similarly, it should be possible to apply hunks in order.  Previously
1003         with the point at the start, C-c C-a would apply the hunk1, then move
1004         the point to the first @@ header, and thus C-c C-a would try to apply
1005         the same hunk again.
1007         * lisp/vc/diff-mode.el (diff--wrap-navigation): New function to add better
1008         navigation logic to diff-{hunk,file}-{next,prev}.
1009         (diff-hunk-next, diff-hunk-prev):
1010         (diff-file-next, diff-file-prev): Better navigation logic if
1011         skip-hunk-start is true, which happens when called interactively.
1012         (diff-bounds-of-hunk, diff-find-source-location):
1013         (diff-apply-hunk, diff-current-defun, diff-refine-hunk): Small tweaks to
1014         improve hunk navigation.
1016 2016-11-28  Noam Postavsky  <npostavs@gmail.com>
1018         Upcase Path and ComSpec in process-environment
1020         Since 2016-07-18 "Keep w32 environment settings internal only", the
1021         upcasing of environment variables "Path" and "ComSpec" occurred after
1022         initializing process-environment.  This meant that Lisp code trying to
1023         override "PATH" environment had no effect (Bug #24956).
1025         * src/w32.c (init_environment): Upcase the "Path" and "ComSpec" entries
1026         in Vprocess_environment.
1028 2016-11-28  Philipp Stephani  <phst@google.com>
1030         Guard terminal parameter in XTerm mouse mode
1032         It has been observed (in the HTerm terminal emulator) that the
1033         event stored in the 'xterm-mouse-last-down' terminal parameter gets
1034         overwritten during a mouse drag operation, causing Emacs to attempt to
1035         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
1036         the terminal parameter to protect against such modifications.
1038         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
1039         of input event list.
1041 2016-11-28  Paul Eggert  <eggert@cs.ucla.edu>
1043         Fix template for module functions
1045         Reported by Syohei YOSHIDA (Bug#24932).
1046         * modules/modhelp.py (TEMPLATES):
1047         c_func’s 2nd arg is ptrdiff_t, not int.
1049 2016-11-27  Paul Eggert  <eggert@cs.ucla.edu>
1051         Pacify gcc -Wswitch.
1053         * src/keyboard.c (kbd_buffer_store_buffered_event):
1054         Move initialization into default case.
1056 2016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
1058         Reuse already existing lisp symbols for ignore_event (bug#19547).
1060         * lisp/subr.el (while-no-input-ignore-events): Use them instead.
1061         * src/keyboard.c (kbd_buffer_store_buffered_event):
1062         Use help-echo for HELP_EVENT, iconify-frame for ICONIFY_EVENT,
1063         and make-frame-visible for DEICONIFY_EVENT.
1064         (syms_of_keyboard): Remove unneeded symbols.
1066 2016-11-27  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
1068         Allow configuring which event throw-on-input should ignore (bug#19547).
1070         * src/keyboard.c (kbd_buffer_store_buffered_event):
1071         Translate event to corresponding symbol from `while-no-input-ignore-events`
1072         and check them with Fmemq.
1073         (syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
1074         and its symbols.
1076         * lisp/subr.el (while-no-input-ignore-events): Add default values.
1078         * doc/lispref/commands.texi (Event Input Misc):
1079         Document while-no-input-ignore-events.
1080         * etc/NEWS: Same.
1082 2016-11-26  Tino Calancha  <tino.calancha@gmail.com>
1084         ash, lsh avoid code duplication
1086         See discussion in:
1087         https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00469.html
1088         * src/data.c (ash_lsh_impl): New function.
1089         (ash, lsh): Use it.
1091 2016-11-26  Simen Heggestøyl  <simenheg@gmail.com>
1093         Add will change module to CSS property list
1095         * lisp/textmodes/css-mode.el (css-property-alist)
1096         (css-value-class-alist): Add new property and value class from CSS
1097         Will Change Module.
1099 2016-11-26  Paul Eggert  <eggert@cs.ucla.edu>
1101         Don't access pointers to freed storage in regex.c
1103         Remove __BOUNDED_POINTERS__ code, which does not work with
1104         -fcheck-pointer-bound and which has undefined behavior anyway.
1105         Problem found when trying to port to gcc -fcheck-pointer-bounds.
1106         (This code was removed from glibc and gnulib regex.c many years ago.)
1107         * src/regex.c (ELSE_EXTEND_BUFFER_HIGH_BOUND): Remove.
1108         (EXTEND_BUFFER): Use a more-portable approach that avoids
1109         undefined behavior due to inspecting pointers to freed storage.
1111 2016-11-25  Paul Eggert  <eggert@cs.ucla.edu>
1113         Port build to gcc -fcheck-pointer-bounds
1115         This does not let Emacs run, just build.
1116         * lib-src/etags.c (main):
1117         * lib-src/profile.c (main):
1118         Use return, not exit.
1119         * src/bytecode.c (BYTE_CODE_THREADED) [__CHKP__]:
1120         Do not define, as -fcheck-pointer-bounds is incompatible with taking
1121         addresses of labels.
1122         * src/menu.c (Fx_popup_dialog): Use eassume, not eassert,
1123         to pacify gcc -fcheck-pointer-bounds -Wnull-dereference.
1125 2016-11-25  Tino Calancha  <tino.calancha@gmail.com>
1127         * lisp/emacs-lisp/subr-x.el (hash-table-keys, hash-table-values): Use cl-loop.
1129 2016-11-25  Simen Heggestøyl  <simenheg@gmail.com>
1131         * lisp/rot13.el: Use lexical-binding
1133 2016-11-25  Mark Oteiza  <mvoteiza@udel.edu>
1135         Add "using" to cl-loop debug spec (Bug#24750)
1137         * lisp/emacs-lisp/cl-macs.el (cl-loop): Add element to account for
1138         "using" hash table clause.
1140 2016-11-25  Hong Xu  <hong@topbug.net>  (tiny change)
1142         Allow user control of progress messages in cpp.el
1144         * lisp/progmodes/cpp.el (cpp-message-min-time-interval): New defcustom.
1145         (cpp-progress-time): Use 'cpp-message-min-time-interval'.  Improve
1146         the doc string.
1147         (cpp-highlight-buffer): Use 'cpp-progress-message' instead of
1148         'message' to print messages.  (Bug#24861)
1150 2016-11-25  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
1152         New input method 'polish-prefix'
1154         * lisp/leim/quail/latin-pre.el ("polish-prefix"): New input
1155         method.  (Bug#24967)
1157         * etc/NEWS: Mention the new input method.
1159 2016-11-25  Damien Cassou  <damien@cassou.me>
1161         * lisp/isearch.el: Add 'provide'.  (Bug#25026)
1163 2016-11-25  Philippe Vaucher  <philippe.vaucher@gmail.com>
1165         Add missing 'provide's in preloaded packages
1167         * lisp/composite.el:
1168         * lisp/replace.el:
1169         * lisp/textmodes/text-mode.el: Add provide statement.  (Bug#24985)
1171 2016-11-24  Alan Mackenzie  <acm@muc.de>
1173         Handle correctly an (undocumented) bare mode in hack-local-variables.
1175         lisp/files.el (hack-local-variables-prop-line): When a file's first line
1176         contains only a mode specification without the string "mode:", return the mode
1177         symbol only when `handle-mode' is t.
1179 2016-11-23  Dima Kogan  <dima@secretsauce.net>
1181         Clarify ediff-directories prompt
1183         * lisp/vc/ediff-mult.el (ediff-filegroup-action):
1184         * lisp/vc/ediff.el (ediff-directories,ediff-directory-revisions,
1185         ediff-directories3, ediff-merge-directories,
1186         ediff-merge-directories-with-ancestor, ediff-merge-directory-revisions,
1187         ediff-merge-directory-revisions-with-ancestor): Clarify prompt message for
1188         filename filter in interactive ediff. The new message makes it clear what is
1189         being filtered
1191 2016-11-23  Tino Calancha  <tino.calancha@gmail.com>
1193         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug24997): Add test for Bug#24997.
1195 2016-11-23  Ulf Jasper  <ulf.jasper@web.de>
1197         Fix Bug#24199.
1199         * lisp/calendar/icalendar.el (icalendar--do-create-ical-alarm): Quote
1200           bracket in doc string (make checkdoc happy).
1201           (icalendar-import-buffer),
1202           (icalendar-import-buffer),
1203           (icalendar--convert-ical-to-diary),
1204           (icalendar--add-diary-entry): Rename argument diary-file to
1205           diary-filename (make checkdoc happy).
1206           (icalendar--convert-recurring-to-diary): Take care of byday-clause
1207           in monthly recurring events.  Actually fix Bug#24199.
1209         * test/lisp/calendar/icalendar-tests.el (icalendar-import-bug-24199): New.
1211 2016-11-23  Tino Calancha  <tino.calancha@gmail.com>
1213         * test/lisp/ibuffer-tests.el (ibuffer-test-Bug25000): Add test for Bug25000.
1215 2016-11-22  Philipp Stephani  <phst@google.com>
1217         Comint: new user option for C-c M-r and C-c M-s
1219         This option allows the user to specify where to place point after these
1220         commands.
1222         * lisp/comint.el (comint-move-point-for-matching-input): New user option.
1223         (comint-previous-matching-input-from-input): Use user option.
1225 2016-11-22  Michael Albinus  <michael.albinus@gmx.de>
1227         Add tramp-eshell-directory-change to eshell-first-time-mode-hook
1229         * lisp/net/tramp.el (tramp-eshell-directory-change): Add it also to
1230         `eshell-first-time-mode-hook'.
1232 2016-11-22  Michael Albinus  <michael.albinus@gmx.de>
1234         Dump also connection local variables in Tramp bug reports
1236         * lisp/net/tramp-cmds.el (tramp-bug, tramp-append-tramp-buffers):
1237         Dump also connection local variables.
1239 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1241         Make sure elided long buffer names have ellipses added (Bug#24972)
1243         * lisp/ibuffer.el (ibuffer-compile-make-eliding-form): Restore the
1244         string concat, and chop "strvar" less the width of the ellipsis.
1245         (ibuffer-compile-make-substring-form): Add space as padding, to fix
1246         off-by-one in alignment.
1248 2016-11-21  Tino Calancha  <tino.calancha@gmail.com>
1250         Buffer-menu-no-header: Detect a fake header
1252         * lisp/buff-menu.el (Buffer-menu-no-header): Use
1253         'tabulated-list-header-overlay-p' (Bug#24855).
1255 2016-11-21  Tino Calancha  <tino.calancha@gmail.com>
1257         buff-menu: Add command to unmark all buffers
1259         Bind 'U' in buff-menu, bs and electric-buff-menu to commands
1260         to unmark all buffers (Bug#24880).
1261         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-header-overlay-p):
1262         New predicate; return non-nil if tabulated-list has a fake header.
1263         * lisp/buff-menu.el (Buffer-menu-unmark-all-buffers):
1264         New command; remove all flags that use a particular mark from all the lines.
1265         Bind it to 'M-DEL'.
1266         (Buffer-menu-unmark-all):
1267         New command; remove all flags from all the lines.  Bind it to 'U'.
1268         (Buffer-menu-marker-char, Buffer-menu-del-char): New variables.
1269         (Buffer-menu-delete, Buffer-menu-mark): Use them.
1270         (Buffer-menu-mode-map): Update menus.
1271         (Buffer-menu-mode): Update mode doc.
1272         * lisp/bs.el (bs-unmark-all, bs-unmark-previous): New commands.
1273         (bs-mode-map): Bind them to 'U' and '<backspace>' respectively.
1274         (bs-mode): Update mode doc.
1275         * lisp/ebuff-menu.el (electric-buffer-menu-mode-map):
1276         Bind Buffer-menu-unmark-all to 'U' and Buffer-menu-unmark-all-buffers
1277         to 'M-DEL'.
1278         (bs--down, bs-down, bs--up, bs-up, bs-unmark-current, bs-mark-current):
1279         Use point instead of cursor in doc string.
1280         (electric-buffer-list): Update mode doc.
1281         * doc/emacs/buffers.texi (Several Buffers): Mention Buffer-menu-unmark-all
1282         and Buffer-menu-unmark-all-buffers.
1284 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1286         Revert "* lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure."
1288         This reverts commit 10efaf718c5258af0ba62077cf4e2aaf9fb90227.
1290 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1292         Port htmlfontify to cl-lib
1294         * lisp/htmlfontify.el: (hfy-box-to-border-assoc, hfy-box-to-style):
1295         (hfy-decor, hfy-face-to-style-i, hfy-face-at, hfy-merge-adjacent-spans):
1296         (hfy-fontify-buffer, htmlfontify-string, hfy-mark-tag-names): Replace
1297         instances of cl aliases with their cl-lib counterparts.
1299 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1301         * lisp/htmlfontify.el (hfy-force-fontification): Use font-lock-ensure.
1303 2016-11-21  Paul Eggert  <eggert@cs.ucla.edu>
1305         Fix another CANNOT_DUMP problem
1307         Reported by Robert Pluim in:
1308         https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00468.html
1309         * src/emacs.c (might_dump) [CANNOT_DUMP]: Move enum decl from here ...
1310         * src/lisp.h: ... to here.
1312 2016-11-21  Mark Oteiza  <mvoteiza@udel.edu>
1314         Add further consideration to string-width (Bug#24972)
1316         * lisp/ibuffer.el (ibuffer-compile-make-eliding-form):
1317         (ibuffer-compile-make-substring-form): Use truncate-string-to-width.
1319 2016-11-21  Katsumi Yamaoka  <yamaoka@jpl.org>
1321         Don't collect strings existing out of <tr>...</tr>
1323         * lisp/net/shr.el (shr-collect-extra-strings-in-table):
1324         Don't collect strings existing out of <tr>...</tr> to avoid
1325         duplication with what `shr-tag-table' renders.
1327 2016-11-20  Katsumi Yamaoka  <yamaoka@jpl.org>
1329         * lisp/gnus/gnus-mh.el (gnus-summary-save-in-folder): Slightly change
1330         the last commit.
1332 2016-11-20  Mike Kupfer  <m.kupfer@acm.org>
1334         Add a variable to pass additional options to rcvstore
1336         * lisp/gnus/gnus-mh.el (gnus-rcvstore-options): New variable.
1337         (gnus-summary-save-in-folder): Include gnus-rcvstore-options in
1338         the arguments that are passed to rcvstore.
1340         cf. <nntp://news.gmane.org/gmane.emacs.gnus.general/87263>
1341         and followups, i.e., ding mailing list.
1343 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1345         Fix undefined refs on some GNU/Linux hosts
1347         Problem reported by Ken Raeburn in:
1348         https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00463.html
1349         * src/emacs.c (heap_bss_diff) [CANNOT_DUMP]: Remove, as this is
1350         not needed in the CANNOT_UNDUMP case.  All uses removed.  This
1351         removes unwanted references to my_endbss and my_endbss_static,
1352         which are not optimized away on some platforms.
1354 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1356         Make CANNOT_DUMP work better on GNU/Linux
1358         Clean up some of the bitrot affecting the CANNOT_DUMP code.  This
1359         lets the build succeed again, and fixes the testing framework so
1360         that most test cases now pass.  About twenty test cases still
1361         fail, though, and we still have Bug#24974.
1362         * configure.ac (CANNOT_DUMP): Now empty if CANNOT_DUMP.
1363         (SYSTEM_MALLOC): Now true if CANNOT_DUMP.  There should no longer
1364         be any point to messing with a private memory allocator unless
1365         Emacs is dumping.
1366         * src/alloc.c (alloc_unexec_pre, alloc_unexec_post, check_pure_size):
1367         * src/image.c (reset_image_types):
1368         * src/lastfile.c (my_endbss, _my_endbss, my_endbss_static):
1369         Do not define if CANNOT_DUMP.
1370         * src/emacs.c (might_dump) [CANNOT_DUMP]: Now always false and local.
1371         (daemon_pipe) [!WINDOWSNT]: Now static.
1372         * test/Makefile.in (mostlyclean): Remove *.tmp files.
1373         (make-test-deps.mk): Elide CANNOT_DUMP chatter.
1375 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1377         * src/xdisp.c (block_buffer_flips, unblock_buffer_flips): Now static.
1379 2016-11-20  Paul Eggert  <eggert@cs.ucla.edu>
1381         Pacify --enable-gcc-warnings CANNOT_DUMP=yes
1383         * src/editfns.c (dump_tz_string) [CANNOT_DUMP || !HAVE_TZSET]:
1384         Do not define.  If defining, do it in a smaller scope.
1386 2016-11-20  Mark Oteiza  <mvoteiza@udel.edu>
1388         * lisp/ibuffer.el (ibuffer-compile-format): Use string-width instead of length
1390 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
1392         Fix redrawing non-selected frame after resize on MS-Windows
1394         * src/xdisp.c (redisplay_internal): If all the frames were
1395         successfully updated, reset the "garbaged" flag of each frame, to
1396         make sure it doesn't stay set.
1398         * src/w32term.c (w32_read_socket): Don't clear the frame if it's
1399         "garbaged", since expose_frame won't redraw the foreground then.
1400         (Bug#24642)
1402 2016-11-20  Michael Albinus  <michael.albinus@gmx.de>
1404         Add file-local-name
1406         * doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
1407         (Unique File Names): Use it.
1409         * etc/NEWS: Mention `file-local-name'.
1411         * lisp/files.el (file-local-name): New defun.
1412         (file-expand-wildcards):
1413         * lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
1414         * lisp/eshell/esh-ext.el (eshell-remote-command):
1415         * lisp/eshell/esh-proc.el (eshell-gather-process-output):
1416         * lisp/org/ob-core.el (org-babel-local-file-name):
1417         * lisp/progmodes/gud.el (gud-common-init, gud-format-command):
1418         * lisp/progmodes/python.el (python-shell-send-file):
1419         * lisp/shell.el (shell):
1420         * lisp/vc/ediff-diff.el (ediff-same-file-contents):
1421         * lisp/vc/vc-git.el (vc-git-checkin): Use it.
1423 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
1425         * lisp/ibuffer.el (ibuffer-formats): Mention locked column in doc string.
1427 2016-11-19  Tino Calancha  <tino.calancha@gmail.com>
1429         * src/editfns.c (format-time-string): Mention %q in doc string.
1431 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1433         Document format-time-string %q
1435         * doc/lispref/os.texi (Time Parsing):
1436         * etc/NEWS: Document new %q functionality taken from gnulib.
1438 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1440         Merge from gnulib
1442         This incorporates:
1443         2016-11-15 sys_time: add gnulib::timeval for C++
1444         2016-11-14 snippet/c++defs: fix real-floating arg functions in C++ mode
1445         2016-11-13 strftime: don't use __THROW
1446         2016-11-12 strftime: tune %q
1447         2016-11-12 Merge strftime.c changes from glibc
1448         2016-11-09 manywarnings: fix -Wno-missing-field-initializers detection
1449         2016-11-05 strftime,strptime: support %q to represent the quarter
1451         The glibc changes in turn incorporate the following strftime.c changes:
1452         2015-10-20 Convert misc function definitions to prototype style
1453         2015-09-26 [BZ #18985] out of range data to strftime() causes segfault
1454         2010-01-09 Add support for XPG7 testing
1455         2009-10-30 Implement Burmese language locale for Myanmar
1456         2008-06-13 [BZ #6612] pass reference to tzset_called around
1457         2007-10-16 [BZ #5184] Add tzset_called argument
1459         * build-aux/snippet/c++defs.h, lib/strftime.c, lib/sys_time.in.h:
1460         * m4/manywarnings.m4: Copy from gnulib.
1462 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1464         Merge from origin/emacs-25
1466         07f45d7 ; Spelling fix
1467         1a210f0 * admin/release-process: Update versions and blocking bug num...
1468         36bafc9 Improve documentation of functions that accept time values
1470         # Conflicts:
1471         #       admin/release-process
1472         #       src/editfns.c
1474 2016-11-19  Paul Eggert  <eggert@cs.ucla.edu>
1476         Merge from origin/emacs-25
1478         4af5981 Add a comment in generated refcards about the source
1479         ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
1480         4887e7c js-mode: Fix indent problem after a regexp
1481         e992ac0 Fix sluggish display of symbols in UTF-8 language environment
1482         1fc101b Don't confuse how Texinfo outputs @var with the input
1483         91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
1484         f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
1485         5b0cddd More fixes in copyright notices in etc/refcards/
1486         f994c20 Update copyright text in refcards
1487         9ad2ae7 Fix Outline command names
1488         26c3554 Send text received by bracketed paste to process
1489         db0b58d Correct the statement about programming modes always running ...
1490         78aece4 Improve documentation of 'occur'
1491         eb364fd Do call debugger on failed cl-assert
1492         3ef4ee8 Avoid infloop in python
1493         8da810f Don't refer to obsolete FEATURE-unload-hook
1494         4f478ca Improve documentation of dabbrevs
1495         7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
1496         89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
1497         3b199f7 Improve documentation of some Help commands
1498         93d3a0e Fix documentation of yes-or-no prompts
1499         af04919 Fix documentation of partial completion style
1500         ed80184 Fix documentation of the mode line on emacsclient frames
1501         e6be855 Fix description of 'C-z' in User manual
1502         16f7007 Improve and clarify documentation of Outline Mode
1503         31d93aa Add Emacs version number to nt/README.W32
1504         0b6b815 Fix python-mode hideshow regexp
1505         dc152c5 Modernize usage of 'macOS' in doc and comments
1506         84c5343 Prefer comments /* like this */ in C code
1507         bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
1508         3ef86fd Clarify documentation of face attribute functions
1509         de51d59 ; * nt/README.W32: Minor copyedits.
1510         db436e9 Don't call debug on failed cl-assert
1512         # Conflicts:
1513         #       doc/emacs/cmdargs.texi
1514         #       etc/NEWS
1515         #       etc/PROBLEMS
1516         #       lisp/auth-source.el
1517         #       lisp/net/tramp-sh.el
1519 2016-11-19  Mark Oteiza  <mvoteiza@udel.edu>
1521         Port RefTeX to cl-lib
1523         * lisp/textmodes/reftex-auc.el:
1524         * lisp/textmodes/reftex-cite.el: Use cl-lib.
1525         (reftex-do-citation, reftex-create-bibtex-file): Substitute cl-lib
1526         macros.
1527         * lisp/textmodes/reftex-dcr.el: Use cl-lib.
1528         (reftex-view-regexp-match): Substitute cl-lib macro.
1529         * lisp/textmodes/reftex-global.el: Use cl-lib.
1530         (reftex-find-duplicate-labels, reftex-renumber-simple-labels):
1531         (reftex-translate): Substitute cl-lib macros.
1532         * lisp/textmodes/reftex-index.el: Use cl-lib.
1533         (reftex-index, reftex-index-select-tag, reftex-index-mode-map):
1534         (reftex-index-next-phrase, reftex-index-phrases-info):
1535         (reftex-query-index-phrase): Substitute cl-lib macros.
1536         * lisp/textmodes/reftex-parse.el: Use cl-lib.
1537         (reftex-parse-from-file, reftex-where-am-I, reftex-what-macro):
1538         (reftex-nth-arg, reftex-init-section-numbers, reftex-section-number):
1539         Substitute cl-lib macros.
1540         * lisp/textmodes/reftex-ref.el: Use cl-lib.
1541         (reftex-uniquify-label, reftex-offer-label-menu): Substitute cl-lib
1542         macros.
1543         * lisp/textmodes/reftex-sel.el: Use cl-lib.
1544         (reftex-select-shared-map): Set keymap parent to special-mode-map.
1545         Flatten loop and remove digits and hyphen definitions from the map.
1546         (reftex-select-label-mode-map):
1547         (reftex-select-bib-mode-map): Use cl-lib macro, and flatten other loop.
1548         (reftex-insert-docstruct, reftex-select-unmark): Use cl-lib macros.
1549         * lisp/textmodes/reftex-vars.el (reftex-vref-is-default): Use
1550         cl-pushnew.
1551         * lisp/textmodes/reftex.el: Use cl-lib.
1552         (reftex-docstruct-symbol): Use cl-incf.
1553         (reftex-ref-style-toggle): Replace add-to-list with append.
1554         (reftex-compile-variables): Use cl-lib macros, and functions with
1555         compiler macros. cl-first is just an alias.
1556         (reftex-parse-args, reftex-scanning-info-available-p):
1557         (reftex-select-external-document, reftex-get-file-buffer-force): Use
1558         cl-lib macros.
1559         (reftex-isearch-minor-mode): Replace add-to-list with append.
1561 2016-11-19  Tino Calancha  <tino.calancha@gmail.com>
1563         ibuffer-exchange-filters: Simplify code
1565         * lisp/ibuf-ext.el (ibuffer-exchange-filters): Use cl-rotatef.
1567 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
1569         Implement getrlimit and setrlimit for MS-Windows
1571         * src/w32heap.c (getrlimit, setrlimit): New functions.
1572         Include w32.h.
1573         * src/emacs.c (main): Use 'rlim_t', not 'long', for values that
1574         should be compatible with 'struct rlimit' members.
1576         * nt/inc/sys/resource.h: New header file.
1578         * nt/mingw-cfg.site (ac_cv_func_getrlimit, ac_cv_func_setrlimit):
1579         Set to "yes".
1581 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1583         Move key mappings into reftex-mode-map defvar
1585         * lisp/textmodes/reftex.el (reftex-mode-map): Assimilate top-level
1586         key mappings.
1587         (reftex-reset-mode): Just use dolist.
1589 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1591         Derive reftex-index-mode from special-mode
1593         * lisp/textmodes/reftex-index.el (reftex-index-mode-map): Flatten
1594         loop.  Remove digit keys and hyphen, as reftex-index-mode is derived
1595         from special-mode now.
1596         (reftex-index-mode): Derive from special-mode.
1597         (reftex-index-phrases-mode-map): Flatten loop. Fix erroneous docstring.
1599 2016-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1601         Clean up reftex-toc-mode-map
1603         * lisp/textmodes/reftex-toc.el: Remove cl.
1604         (reftex-toc-mode-map): Flatten loop.  Remove mapping digit keys and
1605         hyphen, as reftex-toc-mode is derived from special-mode nowadays.
1607 2016-11-18  Philipp Stephani  <phst@google.com>
1609         Prevent dubious argument lists
1611         See Bug#24912 and Bug#24913.
1613         * src/eval.c (funcall_lambda): Detect more dubious argument lists.
1614         * lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Detect
1615         more dubious argument lists.
1616         * test/src/eval-tests.el (eval-tests--bugs-24912-and-24913): Add unit
1617         test.
1619 2016-11-18  Tino Calancha  <tino.calancha@gmail.com>
1621         Add test suite for buff-menu.el
1623         * test/lisp/buff-menu-tests.el: New file.
1624         (buff-menu-24962): Add test for Bug#24962.
1626 2016-11-18  Wojciech Gac  <wojciech.s.gac@gmail.com>  (tiny change)
1628         Add cyrillic-tuvan input method
1630         * lisp/leim/quail/cyrillic.el ("cyrillic-tuvan"): New input
1631         method.  (Bug#24942)
1633         * etc/NEWS: Mention addition of 'cyrillic-tuvan' input method.
1635 2016-11-18  Alexander Gramiak  <agrambot@gmail.com>
1637         Extend 'indent-relative' when its arg is non-nil
1639         * lisp/indent.el (indent-relative-maybe): New obsolete alias.
1640         (indent-relative-first-indent-point): Renamed from
1641         'indent-relative-maybe'.
1642         (indent-relative): Now accepts an additional optional argument.
1643         The first argument was renamed to FIRST-ONLY.  Doc fix.  Support
1644         the additional arg.  (Bug#24766)
1646 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
1648         Add example for bug#24854
1650         * test/manual/indent/js.js: Add example for bug#24854.
1652 2016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
1654         Port registry.el the rest of the way to cl-lib
1656         This file already is using cl-lib functions at runtime; eieio ultimately
1657         loads cl-lib, which explains why doing so wasn't an issue.
1658         * lisp/registry.el: Require cl-lib.
1659         (registry-db, registry--match, registry-search, registry-delete):
1660         (registry-insert, registry-reindex): Replace cl macros with cl-lib ones.
1661         (registry-collect-prune-candidates): Replace cl function with cl-lib one.
1663 2016-11-17  Mark Oteiza  <mvoteiza@udel.edu>
1665         Fix arglist in python.el (Bug#24762)
1667         * lisp/progmodes/python.el: Remove unneeded second args.
1668         (python-define-auxiliary-skeleton): DOC arg should be &optional.
1670 2016-11-17  Simen Heggestøyl  <simenheg@gmail.com>
1672         Add tests for rot13.el
1674         * lisp/rot13.el (rot13): Docstring correction.
1676         * test/lisp/rot13-tests.el: New file with tests for rot13.el.
1678 2016-11-17  Michael Albinus  <michael.albinus@gmx.de>
1680         Fix Bug#24947 (Tramp + ido)
1682         * lisp/ido.el (ido-read-internal): Prevent eager Tramp connection.
1684         * lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
1685         Run remote tests only if a connection is established only.  (Bug#24947)
1687 2016-11-16  Ken Brown  <kbrown@cornell.edu>
1689         Unbreak the build on Darwin (Bug#24957)
1691         * src/fileio.c (file_name_case_insensitive_p) [DARWIN_OS]: Fix
1692         mistakes in recent commit.
1694 2016-11-16  Nicolas Petton  <nicolas@petton.fr>
1696         Do not use map.el in seq-tests.el
1698         * test/lisp/emacs-lisp/seq-tests.el: Do not use map.el.  map.el was
1699         introduced in Emacs 25.1, but seq.el is also available in GNU ELPA for
1700         Emacs 24.5.
1702 2016-11-16  Tino Calancha  <tino.calancha@gmail.com>
1704         Update parameter :version to 26.1 in several defcustom
1706         Following defcustom where added or modified for 25.2 release.
1707         In fact all these changes belong to 26.1 release.
1708         * lisp/battery.el (battery-linux-sysfs-regexp)
1709         * lisp/comint.el (comint-password-prompt-regexp)
1710         * lisp/dired.el (dired-always-read-filesystem)
1711         * lisp/image.el (image-scaling-factor)
1712         * lisp/ibuf-ext.el (ibuffer-never-search-content-name)
1713         (ibuffer-never-search-content-mode)
1714         * lisp/mouse.el (mouse-select-region-move-to-beginning)
1715         * lisp/net/net-utils.el (iwconfig-program, iwconfig-program-options)
1716         (netstat-program, route-program, route-program-options)
1717         * lisp/net/sieve-manage.el (sieve-manage-default-stream)
1718         * lisp/progmodes/grep.el (grep-save-buffers)
1719         * lisp/vc/add-log.el (change-log-directory-files)
1720         * lisp/url/url-vars.el (url-user-agent)
1721         * lisp/vc/vc-hg.el (vc-hg-symbolic-revision-styles)
1722         (vc-hg-use-file-version-for-mode-line-version)
1723         (vc-hg-parse-hg-data-structures)
1724         * lisp/wdired.el (wdired-create-parent-directories)
1725         * lisp/faces.el (homoglyph, nobreak-hyphen, read-multiple-choice-face)
1726         * lisp/gnus/gnus-art.el (gnus-article-encrypt-protocol)
1727         (gnus-button-url-regexp)
1728         * lisp/window.el (switch-to-buffer-preserve-window-point)
1729         * lisp/ibuffer.el (ibuffer-formats, ibuffer-locked-char)
1730         (ibuffer-locked-buffer)
1731         * lisp/textmodes/flyspell.el (flyspell-sort-corrections-function)
1732         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break)
1733         * lisp/gnus/message.el (message-user-fqdn)
1734         * lisp/simple.el (shell-command-dont-erase-buffer)
1735         (extended-command-suggest-shorter)
1736         * lisp/net/shr.el (shr-use-fonts)
1737         * lisp/files.el (mounted-file-systems, kill-emacs-query-functions)
1739 2016-11-15  Glenn Morris  <rgm@gnu.org>
1741         Add --new-daemon, which runs in the foreground and does not fork
1743         This is intended for modern init systems such as systemd,
1744         which manage many of the traditional aspects of daemon behavior
1745         themselves.  (Bug#2677)
1746         * src/emacs.c (daemon_type): New integer.
1747         (usage, standard_args): Add --old-daemon and --new-daemon.
1748         (main): Handle --old-daemon and --new-daemon arguments.
1749         Restrict all the forking and complicated daemon stuff to old-daemon.
1750         (Fdaemon_initialized): Handle new-style daemon.
1751         * src/lisp.h (IS_DAEMON, DAEMON_RUNNING) [!WINDOWNT]:
1752         Replace daemon_pipe with daemon_type.
1753         * doc/emacs/cmdargs.texi (Initial Options):
1754         * doc/emacs/glossary.texi (Glossary):
1755         * doc/emacs/misc.texi (Emacs Server):
1756         * doc/lispref/display.texi (Window Systems):
1757         * doc/lispref/os.texi (Startup Summary): Related doc updates.
1758         * etc/NEWS: Mention this.
1759         * etc/emacs.service: Use Type=simple and --new-daemon.
1761 2016-11-15  Glenn Morris  <rgm@gnu.org>
1763         * src/emacs.c (usage_message): Mention named daemon.  (Bug#24949)
1764         * doc/man/emacs.1.in: Likewise.
1766 2016-11-15  Ken Brown  <kbrown@cornell.edu>
1768         Simplify case-insensitivity checks on Mac OS X
1770         * src/fileio.c (file_name_case_insensitive_p): Try skipping the
1771         Darwin code and instead using pathconf with _PC_CASE_SENSITIVE.
1772         Leave in two alternatives conditionally compiled based on
1773         DARWIN_OS_CASE_SENSITIVE_FIXME in case pathconf doesn't work.
1775         * etc/PROBLEMS: Mention the possible problem with pathconf on
1776         Mac OS X.
1778 2016-11-15  Glenn Morris  <rgm@gnu.org>
1780         * src/emacs.c (sort_args): Warn about multiple matches.
1782 2016-11-15  Michael Albinus  <michael.albinus@gmx.de>
1784         Implement file name handler for `file-name-case-insensitive-p'
1786         * doc/lispref/files.texi (Truenames): `file-name-case-insensitive-p'
1787         is also applicable for remote hosts.
1789         * lisp/net/tramp.el (tramp-methods): Improve docstring.
1790         (tramp-file-name-for-operation): Add `file-name-case-insensitive-p'.
1791         (tramp-handle-file-name-case-insensitive-p): New defun.
1793         * lisp/net/tramp-smb.el (tramp-methods) <smb>:
1794         Add `tramp-case-insensitive' entry.
1796         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
1797         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
1798         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
1799         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
1800         <file-name-case-insensitive-p>: Add handler.  (Bug#22300, Bug#24441)
1802 2016-11-15  Mark Oteiza  <mvoteiza@udel.edu>
1804         Nix more uses of default-FOO variables (Bug#24946)
1806         * lisp/cedet/semantic/util-modes.el (semantic-stickyfunc-mode):
1807         Check for header-line-format instead.
1808         * lisp/emulation/viper.el (viper-load-custom-file): Reference
1809         major-mode instead.
1810         * lisp/mail/feedmail.el (feedmail-fill-to-cc-fill-column): Use
1811         fill-column instead.
1813 2016-11-15  Simen Heggestøyl  <simenheg@gmail.com>
1815         Complete the name of PostgreSQL databases
1817         * lisp/progmodes/sql.el (sql-postgres-login-params): Complete database
1818         name.
1819         (sql-postgres-list-databases): New function returning a list of
1820         available PostgreSQL databases.
1822         * test/lisp/progmodes/sql-tests.el: New file with tests for sql.el.
1824 2016-11-14  Sam Steingold  <sds@gnu.org>
1826         add `vc-git-print-log-follow' and use it in `vc-git-print-log'
1828         When `vc-git-print-log-follow' is true and all files are
1829         non-directory, pass "--follow" to "git log".
1830         This works around bug#8756 and bug#16422.
1832 2016-11-14  Sam Steingold  <sds@gnu.org>
1834         `toggle-truncate-lines' obsoletes `gnus-summary-toggle-truncation'
1836         vc-git-print-log: pass "--follow" to "log" to handle renamed files
1838 2016-11-14  Eli Zaretskii  <eliz@gnu.org>
1840         Revert "Improve case-insensitive checks (Bug#24441)"
1842         This reverts commit 2f5e0b1bf7b0ac4f450847db34d599a072020600.
1843         I see no reason for removing code, documentation, and comments
1844         in the original commit.
1846 2016-11-14  Wilson Snyder  <wsnyder@wsnyder.org>
1848         Update verilog-mode.el
1850         * lisp/progmodes/verilog-mode.el (verilog-read-decls)
1851         (verilog-calc-1): Fix "default clocking" indentation and
1852         preventing AUTOs from working, bug1084.  Reported by Alan Morgan.
1853         (verilog-diff-report): Fix `verilog-diff-report'
1854         not returning bad status on differences, bug1087.  Reported by
1855         Eric Jackowski.
1856         (verilog-auto-inst-param-value)
1857         (verilog-auto-inst-param-value-type, verilog-read-sub-decls)
1858         (verilog-read-sub-decls-expr, verilog-read-sub-decls-gate)
1859         (verilog-read-sub-decls-line, verilog-read-sub-decls-sig)
1860         (verilog-read-sub-decls-type): When
1861         `verilog-auto-inst-param-value-type' is set, which is now the
1862         default, AUTOINPUT etc will now substitute parameter types from
1863         submodules, bug1061.  Reported by Brad Dobbie.
1864         (verilog-auto-reset, verilog-backward-case-item)
1865         (verilog-extended-case-re, verilog-read-always-signals-recurse):
1866         Fix indentation of randcase, bug1072. Reported by David Rogoff.
1867         (verilog-read-sub-decls-expr)
1868         (verilog-sig-multidim-string): Fix AUTOINST ordering of dimensions
1869         in generated comments, bug1057. Reported by Kaushal Modi.
1870         (verilog-auto-wire-comment, verilog-insert-definition):
1871         Add `verilog-auto-wire-comment' to suppress wire comments. Reported by
1872         Eric Jackowski.
1873         (verilog-extended-complete-re): Fix indentation
1874         of class static functions, bug1053. Reported by Gregory
1875         Czajkowski.
1876         (verilog-module-filenames): Support tramp for
1877         finding verilog modules. Reported by Nevada Sanchez.
1879 2016-11-14  Paul Eggert  <eggert@cs.ucla.edu>
1881         Improve case-insensitive checks (Bug#24441)
1883         * doc/lispref/files.texi (Truenames): Simplify documentation,
1884         to avoid giving too much platform-specific information that
1885         may not be accurate anyway.
1886         * src/fileio.c (file_name_case_insensitive_p): Use pathconf with
1887         _PC_CASE_SENSITIVE if _PC_CASE_INSENSITIVE is not available.
1888         Otherwise if one approach fails (e.g., with errno == EINVAL), fall
1889         back on an alternative rather than returning false.  Try skipping
1890         the Darwin code, as it (1) no longer seems to be needed and (2)
1891         does not seem to match the Apple documentation.  Leave in two
1892         alternatives conditionally compiled based on
1893         DARWIN_OS_CASE_SENSITIVE_FIXME in case (1) or (2) is incorrect.
1895 2016-11-14  Eli Zaretskii  <eliz@gnu.org>
1897         Fix documentation changes of connection-local variables
1899         * etc/NEWS: Fix last change.
1900         * doc/lispref/variables.texi (Connection Local Variables): Minor fixes.
1901         * doc/lispref/elisp.texi (Top): Update the master menu.
1903 2016-11-14  Michael Albinus  <michael.albinus@gmx.de>
1905         Implement connection-local variables
1907         * doc/lispref/variables.texi (Connection Local Variables): New section.
1909         * etc/NEWS: Mention connection-local variables.
1911         * lisp/files-x.el (enable-connection-local-variables)
1912         (connection-local-variables-alist, connection-local-class-alist)
1913         (connection-local-criteria-alist): New defvars.
1914         (connection-local-get-classes)
1915         (connection-local-get-class-variables): New defsubst.
1916         (connection-local-set-classes)
1917         (connection-local-set-class-variables)
1918         (hack-connection-local-variables)
1919         (hack-connection-local-variables-apply): New defuns.
1920         (with-connection-local-classes): New defmacro.
1922         * lisp/net/tramp.el (tramp-set-connection-local-variables): New defun.
1924         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
1925         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
1926         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
1927         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.
1929         * test/lisp/files-x-tests.el: New file.
1931 2016-11-14  Tino Calancha  <tino.calancha@gmail.com>
1933         tabulated-list: extend truncation into next align-right column
1935         See discussion on:
1936         https://lists.gnu.org/archive/html/emacs-devel/2016-10/msg01101.html
1937         * lisp/emacs-lisp/tabulated-list.el
1938         (tabulated-list--near-rows): New variable.
1939         (tabulated-list-print, tabulated-list-set-col): Use it.
1940         (tabulated-list--col-local-max-widths): New defsubst.
1941         (tabulated-list-print-col): Use it.  If the next column is
1942         align-right, and has some space left then don't truncate to width,
1943         use some of the available space from the next column.
1945 2016-11-13  Katsumi Yamaoka  <yamaoka@jpl.org>
1947         * lisp/net/shr.el (shr-collect-extra-strings-in-table): Fix indentation.
1949         * lisp/net/shr.el (shr-tag-table): Avoid duplication of images.
1950         (shr-collect-extra-strings-in-table): Render images as well.
1952 2016-11-13  Ken Brown  <kbrown@cornell.edu>
1954         Use the new 'file-name-case-insensitive-p' function
1956         * lisp/international/mule.el (auto-coding-alist-lookup):
1957         * lisp/files.el (file-truename):
1958         (abbreviate-file-name, set-auto-mode, file-relative-name):
1959         * lisp/emacs-lisp/package.el (package-untar-buffer): Use
1960         'file-name-case-insensitive-p' instead of 'system-type' to test
1961         case-insensitivity.
1963 2016-11-13  Glenn Morris  <rgm@gnu.org>
1965         Include a systemd user unit file.  (Bug#16507)
1967         * etc/emacs.service: New file.
1968         * doc/emacs/misc.texi (Emacs Server): Mention systemcl --user.
1969         * Makefile.in (libdir): New, set by configure.
1970         (systemdunitdir): New variable.
1971         (install-etc, uninstall): Handle the emacs.service file.
1973 2016-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1975         Port --enable-gcc-warnings to Ubuntu 16.10
1977         * src/gmalloc.c: Include <stdlib.h>, so it declares
1978         hybrid_aligned_alloc (the definiens of the aligned_alloc macro),
1979         so that GCC doesn't complain that hybrid_aligned_alloc is
1980         defined without being declared.
1982 2016-11-13  Ken Brown  <kbrown@cornell.edu>
1984         Silence tramp warning
1986         * lisp/net/tramp.el (tramp-file-name-for-operation): Add
1987         'file-name-case-insensitive-p' as a known file primitive.
1988         (Bug#24936)
1990 2016-11-12  Ken Brown  <kbrown@cornell.edu>
1992         Check case-sensitivity when renaming files
1994         * src/fileio.c (file_name_case_insensitive_p)
1995         (Ffile_name_case_insensitive_p):  New functions.
1996         (Frename_file): Allow renames that simply change case when the
1997         FILE argument is on a case-insensitive filesystem.  (Bug#24441)
1999         * lisp/dired-aux.el (dired-do-create-files): Use
2000         'file-name-case-insensitive-p' instead of 'system-type' to check
2001         for case-insensitivity.  (Bug#24441)
2003         * doc/lispref/files.texi (Truenames): Document
2004         'file-name-case-insensitive-p'.
2006 2016-11-12  Ken Brown  <kbrown@cornell.edu>
2008         Unbreak the build on Cygwin
2010         * configure.ac (system_malloc) [CYGWIN]: Unset.
2012 2016-11-11  Mark Oteiza  <mvoteiza@udel.edu>
2014         Update chart.el
2016         * lisp/emacs-lisp/chart.el (chart-mode): Derive from special-mode.
2017         (chart-draw): Wrap in with-silent-modifications.  Instead of inserting a
2018         fixed number of newlines, use window-height.
2019         (chart-bar):
2020         (chart-trim): Use dolist.
2021         (chart-file-count): The previous implementation was buggy and missed
2022         extensions.  Use file-name-extension instead to detect file extensions.
2023         Also use dolist and cl-incf to reduce verbosity.
2025 2016-11-11  Katsumi Yamaoka  <yamaoka@jpl.org>
2027         * lisp/net/shr.el (shr--preferred-image): Add CR to whitespace regexps.
2028         (shr-collect-extra-strings-in-table):
2029         Render extra tables in an invalid html as well.
2031 2016-11-10  Katsumi Yamaoka  <yamaoka@jpl.org>
2033         * lisp/net/shr.el (shr--preferred-image): Ignore whitespace (bug#24893).
2035 2016-11-09  Eli Zaretskii  <eliz@gnu.org>
2037         Resurrect 'memory-limit' on MS-Windows
2039         * nt/mingw-cfg.site (ac_cv_func_sbrk): Set to "yes", otherwise
2040         'memory-limit' will produce a trivial and useless result on Windows.
2042 2016-11-09  Mark Oteiza  <mvoteiza@udel.edu>
2044         Update quickurl.el
2046         * lisp/net/quickurl.el (quickurl-format-function):
2047         (quickurl-sort-function): Use named function.
2048         (quickurl-list-mode-map): Remove lines that are extraneous now that the
2049         parent mode is special-mode.
2050         (quickurl-format-url, quickurl-sort-urls): New functions.
2051         (quickurl-read, quickurl): Use defun, as no cl-defun feature appears to
2052         be used.
2053         (quickurl-list-mode): Derive from special-mode.  Nix setting
2054         buffer-read-only: special-mode does that.
2055         (quickurl-list-populate-buffer): Use dolist instead.
2056         (quickurl-list-quit): Use quit-window.  It looks like this was written
2057         before the quit-window rewrite.  quit-window is very useful now.
2059 2016-11-09  Michael Albinus  <michael.albinus@gmx.de>
2061         Refine multi-hop specs in Tramp
2063         * lisp/net/tramp.el (tramp-tramp-file-p): Suppress "/:" and "/c:".
2065         * test/lisp/net/tramp-tests.el
2066         (tramp-test01-file-name-syntax): Multi-hop specs don't need a
2067         method.  "/h:" is allowed on non MS Windows.
2069 2016-11-08  Daniel Colascione  <dancol@dancol.org>
2071         Avoid infloop in python
2073         Fix bug#24905
2075         * lisp/progmodes/python.el (python-info-docstring-p): Improve
2076         infloop avoidance: replace (bobp) with generic test for
2077         forward progress.
2078         * test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
2079         test for bug#24905
2081 2016-11-08  Daniel Colascione  <dancol@dancol.org>
2083         Make gnus/message.el work correctly under lexical binding
2085         * lisp/gnus/message.el (message-send-mail): Rename `arg' to
2086         `_' to shut up the byte compiler.
2087         (sha1-maximum-internal-length, smtpmail-smtp-server)
2088         (smtpmail-smtp-service): add missing defvars
2090 2016-11-08  Michael Albinus  <michael.albinus@gmx.de>
2092         Fix Bug#24889
2094         * lisp/net/tramp.el (tramp-file-name-regexp): Make it a
2095         defvar.  Fix docstring.
2096         (tramp-completion-file-name-handler-alist): Fix docstring.
2097         (tramp-register-file-name-handlers): Reassign
2098         `tramp-file-name-regexp' to the car of
2099         `tramp-file-name-structure'.  (Bug#24889)
2101 2016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2103         Port to FreeBSD 11 AMD
2105         Problem reported by Ashish Shukla (Bug#24892).  I tested
2106         this on FreeBSD 11 x86-64 with HAVE_SBRK manually undefined.
2107         * configure.ac (system_malloc): Set to 'yes' if there is no sbrk.
2108         (sbrk): Check whether it exists.
2109         * src/alloc.c (my_heap_start) [!GNU_LINUX]:
2110         Do not define, since this function is now used only on GNU/Linux,
2111         and sbrk might not exist on other platforms.
2112         (malloc_initialize_hook) [!GNU_LINUX]:
2113         Do not call my_heap_start, since its side effect will never be used.
2114         (Fmemory_limit) [!HAVE_SBRK]: Do not call sbrk.
2115         * src/unexelf.c (unexec) [!HAVE_SBRK]: Assume that nothing like
2116         sbrk exists.
2118 2016-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2120         Port emacsclient to FreeBSD 11 etc.
2122         * lib-src/emacsclient.c: Include <string.h>.  This is needed on
2123         platforms like FreeBSD 11 that use code involving strlen etc., and
2124         because <config.h> no longer includes string.h.
2126 2016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
2128         Prescribe history for read-regexp in query-replace
2130         In the fix for bug#24580, the history argument for read-regexp was
2131         removed erroneously; read-regexp's history argument defaults to
2132         regexp-history, not minibuffer-history.
2133         * lisp/replace.el (query-replace-read-from): Tell read-regexp to use
2134         minibuffer-history.  Fixes bug#24873.
2136 2016-11-07  Mark Oteiza  <mvoteiza@udel.edu>
2138         Remove obsolete default-FOO variables
2140         * etc/NEWS: Indicate the removed variables.
2141         * lisp/emacs-lisp/edebug.el (edebug-outside-mark): Fix comment.
2142         * lisp/subr.el (default-mode-line-format, default-header-line-format):
2143         (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
2144         (default-truncate-lines, default-left-margin, default-tab-width):
2145         (default-case-fold-search, default-left-margin-width):
2146         (default-right-margin-width, default-left-fringe-width):
2147         (default-right-fringe-width, default-fringes-outside-margins):
2148         (default-scroll-bar-width, default-vertical-scroll-bar):
2149         (default-indicate-empty-lines, default-indicate-buffer-boundaries):
2150         (default-fringe-indicator-alist, default-fringe-cursor-alist):
2151         (default-scroll-up-aggressively, default-scroll-down-aggressively):
2152         (default-fill-column, default-cursor-type):
2153         (default-cursor-in-non-selected-windows):
2154         (default-buffer-file-coding-system, default-major-mode):
2155         (default-enable-multibyte-characters): Remove obsolete declarations.
2156         * src/buffer.c (default-mode-line-format, default-header-line-format):
2157         (default-line-spacing, default-abbrev-mode, default-ctl-arrow):
2158         (default-truncate-lines, default-left-margin, default-tab-width):
2159         (default-case-fold-search, default-left-margin-width):
2160         (default-right-margin-width, default-left-fringe-width):
2161         (default-right-fringe-width, default-fringes-outside-margins):
2162         (default-scroll-bar-width, default-vertical-scroll-bar):
2163         (default-indicate-empty-lines, default-indicate-buffer-boundaries):
2164         (default-fringe-indicator-alist, default-fringe-cursor-alist):
2165         (default-scroll-up-aggressively, default-scroll-down-aggressively):
2166         (default-fill-column, default-cursor-type):
2167         (default-cursor-in-non-selected-windows):
2168         (default-buffer-file-coding-system, default-major-mode):
2169         (default-enable-multibyte-characters): Remove.
2170         * src/fileio.c (choose_write_coding_system): Fix comment.
2171         * src/lisp.h (DEFVAR_BUFFER_DEFAULTS): Remove.
2173 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
2175         Improve the tutorial
2177         * etc/tutorials/TUTORIAL: Minor copyedits.  (Bug#24890)
2178         * etc/tutorials/TUTORIAL.he: Follow suit.
2180 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
2182         Restore file descriptor limit in subprocesses
2184         Problem reported by Philipp Stephani (Bug#24869).
2185         * src/callproc.c (child_setup) [!DOS_NT]:
2186         Call restore_nofile_limit in the child.
2187         * src/process.c (nofile_limit) [HAVE_SETRLIMIT]: New static var.
2188         (restore_nofile_limit): New function.
2189         (init_process_emacs) [HAVE_SETRLIMIT]: Set the new var.
2191 2016-11-06  Mark Oteiza  <mvoteiza@udel.edu>
2193         Remove some subr.el functions obsoleted in 22.1
2195         * etc/NEWS: Document removed functions.  Also mention the "face"
2196         variables that have been removed recently.
2197         * lisp/subr.el (window-dot, set-window-dot, read-input, show-buffer):
2198         (eval-current-buffer, string-to-int, insert-string, makehash): Remove.
2200 2016-11-05  Paul Eggert  <eggert@cs.ucla.edu>
2202         Prefer comments /* like this */ in C code
2204 2016-11-05  Johan Bockgård  <bojohan@gnu.org>
2206         * lisp/subr.el (copy-tree): Handle vector in cdr. (Bug#24876)
2208 2016-11-05  Nick Terrell  <nickrterrell@gmail.com>  (tiny change)
2210         Support zstd compressed files
2212         * lisp/jka-cmpr-hook.el (jka-compr-compression-info-list): Add
2213         zstd compression info: <http://facebook.github.io/zstd/>.
2214         (jka-compr-mode-alist-additions): Handle .tzst suffix for zstd
2215         compressed tar archives.  (Bug#24853)
2217 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
2219         Enlarge DUMPED_HEAP_SIZE
2221         * src/w32heap.c (DUMPED_HEAP_SIZE) [_WIN64 || WIDE_EMACS_INT]:
2222         Enlarge to 21MB.  Reported by Richard Copley <rcopley@gmail.com>.
2224 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2226         Update from gnulib
2228         This incorporates:
2229         2016-11-03 intprops: port to older XL C
2230         * lib/intprops.h: Copy from gnulib.
2232 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2234         Merge from origin/emacs-25
2236         acae275 ; Spelling fixes
2237         d8fac73 Update README for precompiled windows Emacs.
2238         23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
2239         f708cb2 Clarify doc string of 'transpose-sexps'
2240         cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
2241         bdc89eb Improve documentation of 'font-lock-remove-keywords'
2242         4a0c590 Fix documentation of the command summary key
2243         0221b7a Mark relocation workarounds with REL_ALLOC
2245 2016-11-04  Paul Eggert  <eggert@cs.ucla.edu>
2247         Merge from origin/emacs-25
2249         dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
2250         91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
2251         9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
2252         9c247d2 Update category-table for Chinese characters
2253         43986d1 Inhibit buffer relocation during regex searches
2254         fee4cef Revert fixes to allocation of regex matching
2256 2016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
2258         Fix references to long obsoleted functions/aliases
2260         * doc/lispintro/emacs-lisp-intro.texi (Miscellaneous):
2261         * doc/misc/cl.texi (Conditionals):
2262         * doc/misc/speedbar.texi (Major Display Modes): Use string-to-number,
2263         not string-to-int.
2264         * lisp/emulation/viper.el (viper-go-away): Use major-mode, not
2265         default-major-mode.
2266         * lisp/textmodes/reftex-toc.el (reftex-toc-visit-location): show-window
2267         here is not a function call, but shorten the binding names anyways.
2268         Also, use pop-to-buffer-same-window instead of switch-to-buffer cf
2269         Bug#22244.
2270         * lisp/textmodes/sgml-mode.el (html-tag-alist): Use read-string, not
2271         read-input.
2273 2016-11-04  Mark Oteiza  <mvoteiza@udel.edu>
2275         * lisp/emacs-lisp/pcase.el (pcase-dolist): Add a docstring.
2277 2016-11-04  Katsumi Yamaoka  <yamaoka@jpl.org>
2279         * lisp/net/shr.el (shr-collect-extra-strings-in-table) New function
2280         that gathers extra strings in an invalid html.  (bug#24831)
2281         (shr-tag-table): Use it.
2283 2016-11-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>
2285         Add 'x-ctrl-keysym' support on X window system
2287         * src/xterm.c (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers):
2288         Support 'x-ctrl-keysym'.
2289         (syms_of_xterm): DEFSYM "ctrl" and put a proper modifier-value
2290         property on it.
2291         <x-ctrl-keysym>: New DEFVAR_LISP.
2292         <x-alt-keysym, x-hyper-keysym, x-meta-keysym, x-super-keysym>: Doc
2293         fix.  (Bug#24822)
2295         * etc/NEWS: Mention the addition of 'x-ctrl-keysym'.
2297         * doc/lispref/os.texi (X11 Keysyms): Document 'x-ctrl-keysym'.
2299 2016-11-04  Alexander Gramiak  <agrambot@gmail.com>
2301         Improve autoload error reporting
2303         * src/eval.c (Fautoload_do_load): Include the absolute file name
2304         in the error message.
2306 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2308         Stop force parameter of whitespace-report-region having global effect
2310         * lisp/whitespace.el (whitespace-report-region): Force parameter
2311         previously changed whitespace-style globally.  Fix this, and use
2312         whitespace-active-style, to take account of any changes the user may
2313         have made.  Simplify the documentation: the force parameter simply
2314         forces all classes of whitespace problem to be considered.
2315         (Bug#24745)
2317 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2319         Document use of `tab-width'
2321         * lisp/whitespace.el: When talking about `8 or more spaces', mention
2322         `tab-width' instead of 8.  (Bug#24745)
2324 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2326         Make whitespace-report-region respect current settings
2328         * lisp/whitespace.el (whitespace-report-region): Make it respect
2329         whitespace-style, including any additions made by the force parameter.
2330         This means that the function does not return t unless a whitespace
2331         problem that the user cares about is reported.  (Bug#24745)
2333 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2335         Fix whitespace-space-after-tab-regexp
2337         * lisp/whitespace.el (whitespace-space-after-tab-regexp)
2338         (whitespace-regexp): Match all the spaces after tabs for highlighting,
2339         not just the first tab-width.  Fix whitespace-space-after-tab::space
2340         version so that it requires at least tab-width spaces, not just 1.
2341         (Bug#24745)
2343 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2345         Remove duplicate documentation
2347         * lisp/whitespace.el: Remove duplicate documentation from the Commentary
2348           section which duplicate and in some places contradict (due to being
2349           out of date) the docstrings (Bug#24745).
2351 2016-11-03  Reuben Thomas  <rrt@sc3d.org>
2353         Fix bob/eob checks
2355         * lisp/whitespace.el (whitespace-empty-at-bob-regexp)
2356         (whitespace-empty-at-eob-regexp, whitespace-cleanup): Make `empty' checks
2357         work at beginning & end of buffer in whitespace-report-region, and only
2358         there (i.e. they will never match in regions that don't include the
2359         start or end of the buffer).  (Bug#24745)
2361 2016-11-03  Tino Calancha  <tino.calancha@gmail.com>
2363         (thing-at-point 'list) return nil if no list at point
2365         * lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point):
2366         Check first if we are at the beginning of a top-level sexp (Bug#24627).
2367         If point is inside a comment or string, look for a list out of the
2368         comment/string.
2369         Escape '[' in doc string.
2370         * test/lisp/thingatpt-tests.el (thing-at-point-bug24627): Update
2371         expected test result as pass.
2373 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2375         Remove antlr face aliases obsoleted in 22.1
2377         * lisp/progmodes/antlr-mode.el: Remove obsolete aliases
2378         (antlr-default-face, antlr-keyword-face, antlr-syntax-face):
2379         (antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face):
2380         (antlr-tokenref-face, antlr-literal-face):
2381         (antlr-literal-face): Remove.
2382         (antlr-font-lock-additional-keywords): Use face symbols instead.
2384 2016-11-02  Daniel Colascione  <dancol@dancol.org>
2386         Revert "Disable bracketed paste in a terminal in char mode"
2388         This change causes regressions, and besides, disabling BPM frame-wide
2389         for the sake of one buffer is the wrong solution.
2391         This reverts commit cf566b46a6cf85c6d54d0b0db80e32ed6ae8d1ca.
2393 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2395         Revert change to eww-suggest-uris
2397         The introduced append is ugly and can yield '(nil); doing delq on it
2398         would be hacks on hacks.
2399         * lisp/net/eww.el: Require cl-lib at run time.
2400         (eww-suggest-uris): Restore eww-current-url, reverting previous change.
2401         (eww): Remove erroneous append.
2402         (eww-open-in-new-buffer): Check if the return from eww-suggested-uris is
2403         equal to eww-current-url, which is nil anyways if we are not in an EWW
2404         buffer.
2406 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2408         Add eww-open-in-new-buffer to EWW
2410         * doc/misc/eww.texi (Basic): Document new command and key.
2411         * etc/NEWS: Mention new key and its purpose.
2412         * lisp/net/eww.el (eww-suggest-uris): Remove eww-current-url.
2413         (eww): Append (eww-current-url) to the prompt defaults.
2414         (eww-open-in-new-buffer): New command.
2415         (eww-mode-map): Bind it and add a menu item.
2417 2016-11-02  Mark Oteiza  <mvoteiza@udel.edu>
2419         Migrate auth-source to cl-lib
2421         * lisp/auth-source.el: Use cl-lib.
2422         (auth-source-read-char-choice, auth-source-backend-parse-parameters):
2423         (auth-source-search): Replace cl calls with cl-lib ones.
2424         (auth-source-netrc-cache):
2425         (auth-source-forget+): Use cl-do-symbols instead.
2426         (auth-source-specmatchp, auth-source-netrc-parse):
2427         (auth-source-netrc-search, auth-source-netrc-create):
2428         (auth-source-netrc-saver, auth-source-secrets-listify-pattern):
2429         (auth-source-secrets-search, auth-source-secrets-create):
2430         (auth-source-macos-keychain-search, auth-source--decode-octal-string):
2431         (auth-source-macos-keychain-search-items, auth-source-plstore-search):
2432         (auth-source-plstore-create): Replace cl calls with cl-lib ones.
2434 2016-11-01  Lars Ingebrigtsen  <larsi@gnus.org>
2436         Don't segfault on timed-out TLS connections
2438         * src/process.c (finish_after_tls_connection): Check that the
2439         file descriptor is still alive before proceeding (bug#24811).
2440         Also clean up the code slightly.
2442 2016-11-01  Eli Zaretskii  <eliz@gnu.org>
2444         Support 'TARGETS' in clipboard selections on MS-Windows
2446         * src/w32select.c (Fw32_selection_targets): New function.
2448         * lisp/term/w32-win.el (w32--get-selection): Call
2449         'w32-selection-targets' to obtain the list of data formats
2450         available in the clipboard.
2452 2016-11-01  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2454         Fix documentation for 'eudc-options-file'
2456         * doc/misc/eudc.texi (The Server Hotlist): Update the default
2457         value of 'eudc-options-file'.
2459 2016-11-01  Tibor Csögör  <tibi@tiborius.net>
2461         Fix documentation of 'eudc-inline-expansion-format'
2463         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
2464         'eudc-inline-expansion-format'. (Bug#24840)
2466 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2468         Turn on lexical-binding in some more libs
2470         * lisp/calendar/icalendar.el:
2471         * lisp/emacs-lisp/regexp-opt.el:
2472         * lisp/emacs-lisp/timer.el:
2473         * lisp/gnus/message.el:
2474         * lisp/hex-util.el: Turn on lexical-binding.
2476 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2478         Turn on lexical-binding in some net libs
2480         * lisp/net/dbus.el: Turn on lexical-binding.
2481         (dbus-list-hash-table, dbus-list-known-names):
2482         (dbus-introspect-get-node-names, dbus-introspect-get-interface-names):
2483         (dbus-introspect-get-method-names, dbus-introspect-get-signal-names):
2484         (dbus-introspect-get-property-names):
2485         (dbus-introspect-get-argument-names, dbus-get-all-properties):
2486         (dbus-property-handler, dbus-get-all-managed-objects):
2487         (dbus-managed-object-handler): Replace add-to-list with push. Add
2488         nreverse in some places where the APPEND argument of add-to-list was
2489         used.
2490         * lisp/net/network-stream.el: Turn on lexical-binding.
2491         * lisp/net/newsticker.el: Turn on lexical-binding.
2492         * lisp/net/shr.el: Turn on lexical-binding.
2493         (shr-make-placeholder-image): Remove unused variable binding.
2494         (shr-inspect-table): Replace ignored bindings with underscore.
2496 2016-10-31  Mark Oteiza  <mvoteiza@udel.edu>
2498         Turn on lexical-binding in some url libs
2500         * lisp/url/url-auth.el:
2501         * lisp/url/url-expand.el:
2502         * lisp/url/url-future.el:
2503         * lisp/url/url-parse.el:
2504         * lisp/url/url-util.el: Turn on lexical-binding.
2506 2016-10-31  Johan Bockgård  <bojohan@gnu.org>
2508         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet): Fix debug spec
2510         (Bug#24733)
2512 2016-10-30  Alan Mackenzie  <acm@muc.de>
2514         Handle chars of syntax word which are also flagged as comment delimiters
2516         src/syntax.c (scan_sexps_forward): When chars of syntax word are also flagged
2517         as the start/end of two char comment delimiters, recognize a comment delimiter
2518         in preference to a portion of a word.  This fixes bug #24767.
2520 2016-10-29  Daniel Colascione  <dancol@dancol.org>
2522         Speed up initialization by preferring /dev/urandom to GnuTLS
2524         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
2526 2016-10-29  José L. Doménech  <domenechjosel@gmail.com>
2528         Quote file names in dired compression commands
2530         * lisp/dired-aux.el (dired-do-compress-to): Change the string
2531         used as shell command for compression by quoting the filenames
2532         used for input and output (Bug #24620).
2534 2016-10-29  Eli Zaretskii  <eliz@gnu.org>
2536         Avoid errors in posn-at-point for large images
2538         * src/keyboard.c (Fposn_at_point): If pos-visible-in-window-p
2539         returns a 6-member list for a partially visible glyph, pass the
2540         sum of Y and RTOP to posn-at-x-y, since that's where the visible
2541         portion of that glyph begins on display.  (Bug#24804)  (Bug#21832)
2542         (Bug#23809)
2544 2016-10-29  Eli Zaretskii  <eliz@gnu.org>
2546         Unbreak MS-Windows build
2548         * src/w32term.c (XCreateGC): Second argument is now HWND, and its
2549         name is "wignore".
2550         (x_set_cursor_gc, x_set_mouse_face_gc)
2551         (x_draw_glyph_string_background, x_draw_glyph_string_bg_rect)
2552         (x_draw_image_glyph_string, x_draw_stretch_glyph_string): Don't
2553         use s->window, which doesn't exist anymore.
2555         * src/w32term.h (XCreateGC): Adjust prototype.
2557 2016-10-28  Daniel Colascione  <dancol@dancol.org>
2559         Add double-buffering support to reduce flicker
2561         * src/dispextern.h (struct glyph_string): Remove window member
2562         (block_buffer_flips, unblock_buffer_flips)
2563         (buffer_flipping_blocked_p): Declare.
2565         * src/xterm.h (struct x_display_info): New member supports_xdbe.
2566         (struct x_output): New members draw_desc and need_buffer_flip.
2567         (FRAME_X_DRAWABLE, FRAME_X_RAW_DRAWABLE)
2568         (FRAME_X_DOUBLE_BUFFERED_P)
2569         (FRAME_X_NEED_BUFFER_FLIP): New macros.
2570         (set_up_x_back_buffer, tear_down_x_back_buffer)
2571         (initial_set_up_x_back_buffer): Declare.
2573         * src/xterm.c: Include Xdbe.h.
2574         (x_begin_cr_clip, x_fill_rectangle, x_draw_rectangle)
2575         (x_draw_vertical_window_border, x_update_end)
2576         (x_setup_relief_color, x_draw_relief_rect)
2577         (x_draw_fringe_bitmap, x_shift_glyphs_for_insert)
2578         (x_scroll_run, x_draw_hollow_cursor, x_draw_bar_cursor): Use
2579         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
2580         variables appropriately; substitute calls to XClearArea with
2581         x_clear_area, which DTRT for double buffering.
2582         (x_clear_window, x_clear_area): In double-buffering mode, use
2583         rect-drawing X functions instead of XClearWindow and
2584         XClearArea, which always operate on the front buffer.
2585         (show_back_buffer): New function.
2586         (XTframe_up_to_date): Call show_back_buffer when done.
2587         (x_clear_frame, x_clear_frame_area): Remove obsolete calls to
2588         gtk_widget_queue_draw to refresh scroll bars; scroll bars are
2589         now independent X windows.
2590         (handle_one_xevent): Call font_drop_xrender_surfaces when
2591         XftDraw might need regenerating; perform buffer flip when
2592         responding to Expose events; issue front-buffer clearing
2593         commands as stopgap while we wait for redisplay.
2594         Call flush_dirty_back_buffers.
2595         (x_make_frame_visible): Un-bitrot comment; move XSETFRAME
2596         earlier in function.
2597         (x_free_frame_resources): Call tear_down_x_back_buffer when
2598         destroying frame.
2599         (x_term_init): Attempt to initialize double buffer extension.
2600         (x_flip_and_flush): New function.
2601         (x_redisplay_interface): Point to x_flip_and_flush instead of
2602         x_flip directly.
2603         (flush_dirty_back_buffers): New function.
2604         (x_create_terminal): Register buffer_flipping_unblocked_hook.
2606         * src/xftfont.c (xftfont_drop_xrender_surfaces): Use
2607         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2608         (xftfont_draw): Call x_mark_frame_dirty.
2609         (xftfont_drop_xrender_surfaces): New function.
2610         (syms_of_xftfont): Register it.
2612         * src/xfont.c (xfont_draw): Use FRAME_X_DRAWABLE instead of
2613         FRAME_X_WINDOW.
2615         * src/xfns.c: Include Xdbe.h.
2616         (x_set_inhibit_double_buffering, set_up_x_back_buffer)
2617         (Fx_double_buffered_p): New functions.
2618         (x_window): Call initial_set_up_x_back_buffer.
2619         (x_make_gc): Use FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2620         (Fx_create_frame): Configure `inhibit-double-buffering'
2621         frame parameter.
2622         (x_create_tip_frame): Call initial_set_up_x_back_buffer.
2623         (x_frame_parm_handlers): Register
2624         x_set_inhibit_double_buffering.
2625         (syms_of_xfns): Register Sx_double_buffered_p.
2626         (x_mark_frame_dirty): Define.
2628         * src/xfaces.c (x_create_gc): Use FRAME_X_DRAWABLE instead of
2629         FRAME_X_WINDOW.
2631         * src/xdisp.c (remember_mouse_glyph, init_glyph_string): Use
2632         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW.
2633         (redisplay_internal): Restart redisplay if a frame is garbaged
2634         during updating; explain why. Block buffer flips
2635         during redisplay.
2636         (redisplay_preserve_echo_area): Block buffer flip during call
2637         to redisplay_internal.
2638         (buffer_flip_blocked_depth): New variable.
2639         (block_buffer_flips, unblock_buffer_flips)
2640         (buffer_flipping_blocked_p): New functions.
2641         (init_glyph_string): Stop setting window member of struct
2642         glyph_string.
2644         * src/w32fns.c (w32_frame_parm_handlers): Add placeholder for
2645         x_set_inhibit_double_buffering.
2647         * src/termhooks.h (struct terminal): Add
2648         buffer_flipping_unblocked_hook.
2650         * src/nsfns.m (ns_frame_parm_handlers): Add placeholder for
2651         x_set_inhibit_double_buffering.
2653         * src/image.c (x_create_bitmap_from_data)
2654         (x_create_bitmap_from_file, x_create_x_image_and_pixmap)
2655         (Create_Pixmap_From_Bitmap_Data)
2656         (x_create_bitmap_from_xpm_data, xpm_load, gs_load): Use
2657         FRAME_X_DRAWABLE instead of FRAME_X_WINDOW; rename local
2658         variables appropriately.
2660         * src/gtkutil.c: Include Xdbe.h.
2661         (xg_get_widget_from_map): Forward declare.
2662         (xg_clear_under_internal_border): Remove obsolete calls to
2663         refresh scroll bars.
2664         (xg_create_frame_widgets): Call initial_set_up_x_back_buffer.
2665         (xg_free_frame_widgets): Call tear_down_x_back_buffer; reset
2666         FRAME_X_DRAWABLE as well as FRAME_X_WINDOW and for the
2667         same reason.
2668         (xg_set_background_color): Set scroll bar background colors.
2669         (xg_finish_scroll_bar_creation): New function with common
2670         logic of xg_create_scroll_bar, xg_create_horizontal_scroll_bar. Force
2671         scroll bars to be real X11 windows.
2672         (xg_create_scroll_bar, xg_create_horizontal_scroll_bar): Call
2673         xg_finish_scroll_bar_creation.
2674         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
2675         Remove obsolete calls to refresh scroll bars; fix comments.
2677         * src/ftxfont.c (ftxfont_get_gcs, ftxfont_draw_bitmap,
2678         (ftxfont_draw_background): Use FRAME_X_DRAWABLE instead of
2679         FRAME_X_WINDOW.
2681         * src/frame.c (frame_parms): Add table entry for new
2682         `inhibit-double-buffering' frame parameter
2683         (syms_of_frame): Register Qinhibit_double_buffering.
2685         * src/font.h (struct font_driver): Add new `flush_frame_caches' hook.
2686         (font_drop_xrender_surfaces): Declare.
2688         * src/font.c (font_drop_xrender_surfaces): New function.
2690         * src/Makefile.in (XDBE_LIBS, XDBE_CFLAGS): Substitute.
2692         * etc/NEWS: Mention use of double buffering
2694         * doc/lispref/frames.texi (Management Parameters): Document
2695         `inhibit-double-buffering' frame parameters.
2696         (Visibility of Frames): Document `x-double-buffered-p'.
2698         * configure.ac: Check for the X double buffer extension
2700 2016-10-28  Michael Albinus  <michael.albinus@gmx.de>
2702         Improve result of `auth-source-search' in Tramp
2704         * lisp/net/tramp.el (tramp-read-passwd): Require :secret and
2705         :user in result of `auth-source-search'.
2707 2016-10-27  Mark Oteiza  <mvoteiza@udel.edu>
2709         Fix avl-tree alias docstrings
2711         * lisp/emacs-lisp/avl-tree.el (avl-tree--node-branch):
2712         (avl-tree-stack-p, avl-tree-create):
2713         (avl-tree-compare-function): Add calling convention to docstrings.
2715 2016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
2717         Update from gnulib
2719         This incorporates:
2720         2016-10-16 qsort_r: Fix macrology for platforms that lack the function.
2721         2016-10-13 stdint: port SIZE_MAX to glibc s390
2722         2016-10-11 maint: remove stray space after "." in AC_DEFINE comment.
2723         * lib/gnulib.mk: Regenerate.
2724         * lib/stdlib.in.h, m4/st_dm_mode.m4, m4/stdint.m4, m4/stdlib_h.m4:
2725         * m4/utimes.m4: Copy from gnulib.
2727 2016-10-27  Paul Eggert  <eggert@cs.ucla.edu>
2729         electric-quote-chars fixups
2731         * lisp/electric.el (electric-quote-chars): Check types and safety
2732         more carefully.
2733         (electric-quote-post-self-insert-function): Use more-mnemonic locals.
2734         Omit no-longer-necessary runtime error diagnostic.
2736 2016-10-27  Göktuğ Kayaalp  <self@gkayaalp.com>
2738         New user variable 'electric-quote-chars'
2740         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
2741         * lisp/electric.el (electric-quote-chars): New defcustom.
2742         (electric-quote-post-self-insert-function): Use it.
2744 2016-10-27  Tino Calancha  <tino.calancha@gmail.com>
2746         Add more tests for Bug#24627
2748         * test/lisp/thingatpt-tests.el (thing-at-point-bug24627):
2749         Add tests for 'list-at-point'.
2751 2016-10-26  Filipp Gunbin  <fgunbin@fastmail.fm>
2753         * lisp/shell.el (shell--unquote&requote-argument): Match data misuse
2755         * lisp/shell.el (shell--unquote&requote-argument): Fix
2756         off-by-one thinko.  Don't use match data after a failed string-match.
2758 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2760         * src/xwidget.c (webkit_js_to_lisp): Now static.
2762 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2764         xwidget: Map "previous-line" and "next-line" to scroll
2766         * lisp/xwidget.el: Map "previous-line" and "next-line" to scrolling
2767         procedures.
2769 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2771         xwidget: Bind "beginning-of-buffer" and "end-of-buffer"
2773         * lisp/xwidget.el: Rebind "beginning-of-buffer" and "end-of-buffer" to
2774         "xwidget-webkit-scroll-top" and "xwidget-webkit-scroll-bottom",
2775         respectively.
2776         (xwidget-webkit-scroll-top,
2777         xwidget-webkit-scroll-bottom): New procedures.
2779 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2781         Implement zoom for WebKit widget.
2783         * src/xwidget.c (xwidget-webkit-zoom): New procedure.
2784         * lisp/xwidget.el: Bind "+" and "-" to zoom in and out, respectively.
2785         (xwidget-webkit-zoom): Declare procedure.
2786         (xwidget-webkit-zoom-in, xwidget-webkit-zoom-out): New procedures.
2788 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2790         Dynamically resize WebKit widget.
2792         * lisp/xwidget.el (xwidget-webkit-auto-adjust-size,
2793         xwidget-webkit-adjust-size-in-frame): New procedures.
2794         (xwidget-webkit-new-session): Remove hint to resize widget with `a'.
2795         (xwidget-webkit-adjust-size-dispatch): Resize current webkit widget.
2796         (xwidget-webkit-adjust-size-to-window): Make non-interactive,
2797         add widget and window as arguments.
2798         (xwidget-webkit-callback): Use xwidget-webkit-adjust-size-to-window.
2800 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2802         Let initial WebKit view fill window
2804         * lisp/xwidget.el (xwidget-webkit-new-session): Change default size of
2805         WebKit widget to window size.
2807 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2809         xwidget: Remove title hack.
2811         * src/xwidget.c (xwidget-webkit-get-title): Remove procedure.
2812         * lisp/xwidget.el (xwidget-webkit-get-title,
2813         xwidget-webkit-execute-script-rv): Remove procedures.
2815 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2817         xwidget: Get URL asynchronously.
2819         * lisp/xwidget.el (xwidget-webkit-current-url): Kill URL in callback.
2821 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2823         xwidget: Get selection with asynchronous JavaScript
2825         * lisp/xwidget.el (xwidget-webkit-get-selection): Add PROC argument to
2826         process selection.
2827         (xwidget-webkit-copy-selection-as-kill): Kill selection in callback.
2829 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2831         xwidget: Add function to find element by CSS selector
2833         * lisp/xwidget.el (xwidget-webkit-show-element): New procedure.
2835 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2837         xwidget: Simplify functions to scroll to elements
2839         * lisp/xwidget.el (xwidget-webkit-show-named-element,
2840         xwidget-webkit-show-id-element,
2841         xwidget-webkit-show-id-or-named-element): Simplify functions by
2842         scrolling exclusively with JavaScript.
2844 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2846         xwidget: Get title via asynchronous JavaScript.
2848         * lisp/xwidget.el (xwidget-webkit-callback): Get document title
2849         asynchronously.
2851 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2853         xwidget: Do not use `xwidget-execute-script-rv' to insert string
2855         * lisp/xwidget.el (xwidget-webkit-insert-string): Obtain JavaScript
2856         return value via callback instead of using
2857         `xwidget-webkit-execute-script-rv'.
2859 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2861         Remove scrolled window container around WebKit widget
2863         The WebKit widget can scroll on its own and does not need to wrapped
2864         with a scrolled window container.
2866         * src/xwidget.h: Remove struct member widgetscrolledwindow_osr.
2867         * src/xwidget.c: Remove widgetscrolledwindow_osr.
2868         (xwidget-set-adjustment): Remove.
2869         (xwidget-resize): Resize Webkit widget last.
2870         * lisp/xwidget.el (xwidget-set-adjustment): Remove.
2871         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down,
2872         xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward):
2873         Implement scrolling via JavaScript.
2875 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2877         xwidget: Pass JavaScript return value to optional callback procedure
2879         * lisp/xwidget.el (xwidget-webkit-execute-script): Accept optional
2880         callback argument.
2881         (xwidget-webkit-callback): Handle "javascript-callback" event type.
2882         * src/xwidget.c (xwidget-webkit-execute-script): Accept optional
2883         argument FUN, a Lisp procedure to execute on the JavaScript return
2884         value.
2885         (store_xwidget_js_callback_event, webkit_javascript_finished_cb,
2886         webkit_js_to_lisp): New procedures.
2888 2016-10-25  Ricardo Wurmus  <rekado@elephly.net>
2890         xwidget: Use WebKit2 API
2892         * configure.ac: Check for webkit2gtk-4.0.
2893         * src/xwidget.c: Adjust to use WebKit2 API.
2894         * lisp/xwidget.el (xwidget-webkit-callback): Adjust matches for
2895         `xwidget-event-type'.
2897 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2899         Merge from origin/emacs-25
2901         4c3f738 Comment for bug#24793
2903 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2905         Merge from origin/emacs-25
2907         96ac0c3 Yet another fix for using pointers into buffer text
2908         1047496 Another fix for using pointer to buffer text
2909         3121992 Fix Bug#24478
2911 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2913         Merge from origin/emacs-25
2915         ee04aed Fix handling of buffer relocation in regex.c functions
2916         71ca4f6 Avoid relocating buffers while libxml2 reads its text
2917         1b3fc8a ; Remove redundant code in gmalloc.c
2918         9afea93 Attempt to catch reads from a buffer that is relocated
2920 2016-10-25  Nicolas Petton  <nicolas@petton.fr>
2922         Minor fix in the documentation of seq-random-elt
2924         * doc/lispref/sequences.texi (Sequence Functions): Remove false
2925           sentence.
2927 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
2929         Minor copyedits in documentation of 'seq-random-elt'
2931         * doc/lispref/sequences.texi (Sequence Functions): Fix markup in
2932         last change.  Use 2 spaces between sentences.
2934 2016-10-25  Nicolas Petton  <nicolas@petton.fr>
2936         * lisp/emacs-lisp/seq.el (seq-random-elt): Fix docstring.
2938 2016-10-25  Damien Cassou  <damien@cassou.me>
2940         Add seq-random-elt to seq.el
2942         * lisp/emacs-lisp/seq.el (seq-random-elt): Add function to return a
2943           random element from it's sequence parameter.
2945         * test/lisp/emacs-lisp/seq-tests.el (test-seq-random-elt-take-all
2946           test-seq-random-elt-return-nil): Test the new function
2948         * doc/lispref/sequences.texi: Document the new function
2950 2016-10-24  Ken Brown  <kbrown@cornell.edu>
2952         * configure.ac: Stop using mmap for buffers on Cygwin.
2954 2016-10-24  Nicolas Petton  <nicolas@petton.fr>
2956         * lisp/emacs-lisp/seq.el (seq-let): Fix debug spec (Bug#24738)
2958 2016-10-24  Karl Chen  <Karl.Chen@quarl.org>
2960         Don't prompt user when killing Flymake processes
2962         * lisp/progmodes/flymake.el (flymake-start-syntax-check-process):
2963         Don’t prompt the user when killing Flymake processes.
2965         * doc/misc/flymake.texi (Starting the syntax check process):
2966         Document new behavior.
2968 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2970         * src/regex.c (re_search_2): Use UNINIT, not IF_LINT.
2972         This finishes the merge of the recent emacs-25 regex changes into
2973         master.
2975 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2977         Merge from origin/emacs-25
2979         50fa7d6 ;* src/w32heap.c: Fix typo and wording of the comments.
2980         6f1325e electric-quote mode no longer worries about coding
2981         c2a1792 * src/regex.c (re_search_2): Make new code safe for -Wjump-mi...
2982         f6134bb Port to GCC 6.2.1 + --enable-gcc-warnings
2983         b2ba630 Explain how to debug emacsclient lisp errors
2984         9da53e2 Let describe-function work for lambda again
2985         5c2da93 Fix kill-line's docstring
2986         ad66b3f Fix handling of allocation in regex matching
2987         5a26c9b * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24...
2988         3877c91 vc-region-history: Search just on lines intersecting the region
2989         8988327 Fix documentation of 'alist-get'
2990         b6998ea * src/regex.h (re_match_object): Improve commentary.
2992         # Conflicts:
2993         #       etc/NEWS
2994         #       lisp/help-fns.el
2996 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
2998         Merge from origin/emacs-25
3000         8ad0d7d ; Fix quoting in etc/NEWS
3001         6b9dee1 Change Tramp version to "2.2.13.25.2"
3002         62f2684 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): F...
3003         b2f32e4 Don't scan compiled module files for autoloads
3004         9a758b4 Fix Bug#24698
3005         baa8ba4 * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
3006         e535ca4 Fix display of vc-dir CVS file statuses in subdirectories
3007         12da149 Update URL of MS-Windows optional DLLs
3008         2331056 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
3009         a4285bc * lisp/simple.el (process-menu-mode, list-processes--refresh)...
3010         b0c447e * lisp/ibuf-ext.el (ibuffer-do-shell-command-file): Fix non-f...
3011         cf3c19b * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (B...
3013         # Conflicts:
3014         #       doc/misc/trampver.texi
3015         #       etc/NEWS
3016         #       lisp/net/tramp-sh.el
3017         #       lisp/net/trampver.el
3019 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
3021         Merge from origin/emacs-25
3023         b73f466 * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#2...
3024         55ebb70 Catch the imenu-unavailable error in sh-mode completion table
3025         993acb5 ; Minor fix for last change in characters.el
3026         30c4bb5 More char-width fixes
3027         4eb4463 Fix char-width-table values for some Emoji
3028         528997d Keep point when switching from and to *terminal* buffer
3029         2130005 * INSTALL: Use correct Emacs release number 25.
3030         10835b1 Avoid crashes due to objects read with the #n=object form
3031         4de671d Improve doc string of 'completion-at-point-functions'
3032         ceb46f0 Fix crash in evaluating functions
3033         d8374c4 * src/filelock.c (current_lock_owner): Update comment.
3035 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
3037         Merge from origin/emacs-25
3039         2deb20c Port last_marked change to full-program optimizers
3040         27eb668 Adapt GDB scripts to '--enable-check-lisp-object-type' builds
3041         dac64e3 Avoid optimizing out the last_marked[] array
3043 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
3045         Avoid infinite hscrolling in redisplay
3047         * src/xdisp.c (redisplay_internal): Add a counter to avoid horizontal
3048         scrolling (e.g., caused by pre-redisplay-functions) triggering infinite
3049         redisplay (Bug #24633).
3051 2016-10-22  Michael Albinus  <michael.albinus@gmx.de>
3053         Fix error codes in Tramp
3055         * lisp/net/tramp-compat.el (tramp-compat-user-error): New defsubst,
3056         taken from tramp.el.
3057         (tramp-file-missing): New defconst.
3059         * lisp/net/tramp.el (tramp-user-error): Remove it.
3060         (tramp-check-proper-method-and-host)
3061         (tramp-dissect-file-name, tramp-debug-message)
3062         (tramp-handle-shell-command):
3063         * lisp/net/tramp-adb.el (tramp-adb-handle-shell-command):
3064         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler):
3065         Use `tramp-compat-user-error'.
3067         * lisp/net/tramp.el (tramp-handle-insert-file-contents)
3068         (tramp-handle-load):
3069         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
3070         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-local-copy)
3071         * lisp/net/tramp-sh.el (tramp-sh-handle-file-local-copy):
3072         * lisp/net/tramp-smb.el (tramp-smb-handle-file-local-copy):
3073         Use `tramp-file-missing'.  (Bug#24714)
3075         * lisp/net/tramp-sh.el (tramp-sh-handle-add-name-to-file):
3076         * lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link):
3077         Use `file-already-exists'.
3079 2016-10-22  Jorgen Schaefer  <contact@jorgenschaefer.de>
3081         Autoload all commands from misc.el
3083         Only two of the commands there were autoloaded, one of which is an
3084         easter egg.
3085         * lisp/misc.el (copy-from-above-command):
3086         * lisp/misc.el (zap-up-to-char):
3087         * lisp/misc.el (mark-beginning-of-buffer):
3088         * lisp/misc.el (mark-end-of-buffer):
3089         * lisp/misc.el (upcase-char):
3090         * lisp/misc.el (forward-to-word):
3091         * lisp/misc.el (backward-to-word):
3092         Add autoload cookie.
3094 2016-10-22  Martin Rudalics  <rudalics@gmx.at>
3096         On terminal frames ignore minibuffer frame parameter (Bug#24758)
3098         * src/frame.c (Fmake_terminal_frame): Don't complain when the
3099         caller asks for a deviant minibuffer setting (Bug#24758).
3101 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3103         New error file-missing
3105         This fixes a recently-introduced bug in delete-directory,
3106         where the code assumes the C locale when determining
3107         whether a file-error corresponds to a missing file (Bug#24714).
3108         * doc/lispref/errors.texi (Standard Errors):
3109         * doc/lispref/files.texi (Changing Files):
3110         * etc/NEWS:
3111         Document this.
3112         * doc/lispref/loading.texi (How Programs Do Loading):
3113         Say "a file-error" rather than "the error file-error" since
3114         it might be a file-missing now.
3115         * lisp/emacs-lisp/bytecomp.el (byte-compile-file):
3116         * lisp/epa-file.el (epa-file--find-file-not-found-function):
3117         (epa-file-insert-file-contents, epa-file-write-region):
3118         * lisp/ffap.el (find-file-at-point, dired-at-point):
3119         * lisp/jka-compr.el (jka-compr-insert-file-contents)
3120         (jka-compr-insert-file-contents):
3121         * lisp/net/ange-ftp.el (ange-ftp-barf-if-not-directory)
3122         (ange-ftp-insert-file-contents, ange-ftp-copy-file-internal):
3123         * lisp/progmodes/etags.el (visit-tags-table):
3124         * lisp/url/url-handlers.el (url-copy-file):
3125         * src/fileio.c (report_file_errno):
3126         Signal file-missing if appropriate.
3127         * lisp/epa-file.el (epa-file-insert-file-contents):
3128         * lisp/jka-compr.el (jka-compr-insert-file-contents):
3129         Don't assume file-error is a leaf in the error hierarchy.
3130         * lisp/files.el (files--force):
3131         * lisp/gnus/nnmaildir.el (nnmaildir--enoent-p):
3132         * lisp/jka-compr.el (jka-compr-insert-file-contents):
3133         Use file-missing to detect whether the file is missing.
3134         * lisp/url/url-handlers.el (url-copy-file):
3135         Signal file-already-exists if appropriate.
3136         * src/fileio.c (syms_of_fileio): Define file-missing.
3138         2016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
3140 2016-10-21  Mark Oteiza  <mvoteiza@udel.edu>
3142         Teach browse-url to open man page urls
3144         * lisp/net/browse-url.el (browse-url-man-function): New custom option.
3145         (browse-url): Add a condition to catch links matching "^man:".
3146         (browse-url-man): New function.
3148 2016-10-21  Eli Zaretskii  <eliz@gnu.org>
3150         Improve fontification of footnote references in Info buffers
3152         * lisp/info.el (Info-fontify-node): Don't fontify random numbers
3153         in parentheses as if they were footnote references.  See
3154         https://lists.gnu.org/archive/html/bug-texinfo/2016-10/msg00007.html
3155         for the details.
3157 2016-10-20  Philipp Stephani  <phst@google.com>
3159         Minor fixes to cc-mode-tests.el
3161         See Bug#24747.
3163         * test/lisp/progmodes/cc-mode-tests.el: Rename from cc-mode.el; fix typo in
3164         file-local variable; add comments to make checkdoc happy.
3166 2016-10-20  Michael Albinus  <michael.albinus@gmx.de>
3168         * etc/NEWS: Fix typos.  Remove entries backported to Emacs 25.2.
3170 2016-10-20  Michael Albinus  <michael.albinus@gmx.de>
3172         Document, how to suppress iTerm2 shell integration in Tramp
3174         * doc/misc/tramp.texi (Frequently Asked Questions):
3175         Suppress iTerm2 shell integration.
3177 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
3179         cl-seq: Remove max limit on input sequence length
3181         * lisp/emacs-lisp/cl-seq.el (cl-fill, cl-replace, cl-delete)
3182         (cl--position, cl-nsubstitute, cl-substitute, cl-remove):
3183         Remove limit on maximum length for the input sequence
3184         (#Bug24264).
3185         * test/lisp/emacs-lisp/cl-seq-tests.el: Update test expected result as passed.
3187 2016-10-19  Mark Oteiza  <mvoteiza@udel.edu>
3189         Derive dig-mode from special-mode
3191         * lisp/net/dig.el: Remove unused cl dependency.  Remove top level
3192         mode-class assignment.
3193         (dig-mode-map): Unmap g, as dig has no notion of reverting the buffer.
3194         (dig-mode): Derive from special-mode.
3195         (dig-exit): Use quit-window instead.
3196         (dig): Use pop-to-buffer-same-window.  Remove redundant assignments.
3197         (query-dig): Use pop-to-buffer-same-window.
3199 2016-10-18  Johan Bockgård  <bojohan@gnu.org>
3201         cl-defstruct: Fix debug spec and check of slot options
3203         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Improve checking of slot
3204         option syntax.  Fix debug spec.  (Bug#24700)
3206 2016-10-18  Johan Bockgård  <bojohan@gnu.org>
3208         isearch: Fix bug in defstruct syntax
3210         * lisp/isearch.el (isearch--state): Use correct form of defstruct slot
3211         options.  (Bug#24685)
3213 2016-10-18  Mark Oteiza  <mvoteiza@udel.edu>
3215         Add an option for eshell-input-filter
3217         * etc/NEWS: Document changes.
3218         * lisp/eshell/em-hist.el (eshell-input-filter): Set value to function
3219         symbol.  Change type to a radio for choosing functions.  Refer to both
3220         new functions.
3221         (eshell-input-filter-default): New function.  Same body as the previous
3222         value of eshell-input-filter.
3223         (eshell-input-filter-initial-space): New function.
3225 2016-10-18  Paul Eggert  <eggert@cs.ucla.edu>
3227         delete-directory no longer errors when racing
3229         Problem reported by Glenn Morris for package-test.el (Bug#24714).
3230         * doc/lispref/files.texi (Create/Delete Dirs), etc/NEWS: Document this.
3231         * lisp/files.el (files--force): New function.
3232         (delete-directory): Use it to avoid error in this case.
3234 2016-10-17  Yuri Khan  <yuri.v.khan@gmail.com>  (tiny change)
3236         Support Shift selection in nxml-mode commands
3238         * lisp/nxml/nxml-mode.el (nxml-forward-balanced-item)
3239         (nxml-up-element, nxml-backward-up-element, nxml-down-element)
3240         (nxml-backward-down-element, nxml-forward-element)
3241         (nxml-backward-element, nxml-forward-paragraph)
3242         (nxml-backward-paragraph): Use "^p" as the interactive spec, to
3243         support shift-selection.
3245 2016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3247         Simplify some loops and cons
3249         * lisp/net/mailcap.el: Replace cl with cl-lib.
3250         (mailcap--get-user-mime-data, mailcap--set-user-mime-data):
3251         (mailcap-parse-mailcaps, mailcap-parse-mailcap-extras):
3252         (mailcap-possible-viewers): Use push and dolist where possible.
3253         (mailcap-viewer-passes-test): Remove unused binding.
3254         (mailcap-add-mailcap-entry): Use push.
3255         (mailcap-mime-info): Remove unused binding.  Use push.
3256         (mailcap-parse-mimetypes): Use dolist.
3258 2016-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3260         Turn on lexical-binding in auth-source
3262         * lisp/auth-source.el: Turn on lexical-binding.
3263         (auth-source-netrc-parse, auth-source-netrc-normalize):
3264         (auth-source-token-passphrase-callback-function):
3265         (auth-source-netrc-create, auth-source-secrets-search):
3266         (auth-source-macos-keychain-search-items):
3267         (auth-source-plstore-search): Use let instead of lexical-let.
3269 2016-10-17  Martin Rudalics  <rudalics@gmx.at>
3271         Fix frame focus redirection with shared minibuffer windows (Bug#24500)
3273         * src/frame.c (do_switch_frame): Redirect frame focus also when
3274         the frame switched to has its minibuffer window on the selected
3275         frame.
3276         * src/window.c (candidate_window_p): To qualify as candidate
3277         it's not sufficient for the window's frame to just share the
3278         minibuffer window - it must be active as well.
3280 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
3282         Fix time-related data types in 2 editfns.c functions
3284         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
3285         pointer to 'time_t' value to 'emacs_localtime_rz' and 'gmtime_r',
3286         instead of relying on struct timespec's 'tv_sec' member to be of
3287         compatible type.
3289 2016-10-16  Martin Rudalics  <rudalics@gmx.at>
3291         Document atomic windows in Elisp manual (Bug#18170)
3293         * lisp/window.el (display-buffer-in-atom-window): If no `side'
3294         alist entry was specified, use `below' as the doc tells.
3295         * doc/lispref/elisp.texi (Atomic Windows): Add menu entry.
3296         * doc/lispref/windows.texi (Atomic Windows): New section.
3297         (Window Parameters): Update reference.
3299 2016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3301         New face homoglyph
3303         Suggested by Eli Zaretskii, from a feature request by
3304         Alan Mackenzie (Bug#24468).
3305         * doc/emacs/display.texi (Standard Faces, Text Display):
3306         * etc/NEWS: Document this.
3307         * etc/themes/dichromacy-theme.el, etc/themes/leuven-theme.el:
3308         * etc/themes/light-blue-theme.el, etc/themes/manoj-dark-theme.el:
3309         * etc/themes/tango-dark-theme.el, etc/themes/tango-theme.el:
3310         * etc/themes/wombat-theme.el:
3311         Customize homoglyph to be the same as escape-glyph.
3312         * lisp/cus-theme.el (custom-theme--listed-faces):
3313         Add homoglyph.
3314         * lisp/faces.el (homoglyph): New face.
3315         * lisp/startup.el (startup--setup-quote-display): Use it.
3317 2016-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3319         Port to Ubuntu 16.10, which needs gcc -nopie
3321         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
3322         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
3323         preference to -nopie (Bug#24682).
3325 2016-10-16  Michael Albinus  <michael.albinus@gmx.de>
3327         Fix bug#24665 in Tramp
3329         * doc/misc/tramp.texi (External methods): Do not confuse
3330         method names.  (Bug#24665)
3332 2016-10-15  Sam Steingold  <sds@gnu.org>
3334         use full time objects (lists) instead of floats when possible
3336         * lisp/midnight.el (midnight-buffer-display-time): Remove
3337         (clean-buffer-list): Use float time only for time comparison
3339 2016-10-15  Sam Steingold  <sds@gnu.org>
3341         Save and restore buffer-display-time
3343         * lisp/desktop.el (desktop-locals-to-save): Add `buffer-display-time'
3344         (desktop-read): Set `desktop-file-modtime' before loading the desktop file
3345         (desktop-create-buffer): Adjust `buffer-display-time' for the downtime
3347 2016-10-15  Philipp Stephani  <phst@google.com>
3349         Disable bracketed paste in a terminal in char mode
3351         In char mode, a terminal doesn't accept bracketed paste events,
3352         therefore we should disable them; see Bug#24639.  To decouple the XTerm
3353         management from term.el, introduce a per-buffer setting to disable
3354         bracketed paste for that buffer.  If bracketed paste is inhiited for at
3355         least one buffer in a terminal, it is disabled for the whole terminal.
3357         * lisp/term/xterm.el (xterm-inhibit-bracketed-paste-mode): New mode to
3358         inhibit XTerm bracketed paste per buffer.
3359         (xterm--buffer-terminals, xterm--update-bracketed-paste)
3360         (xterm--bracketed-paste-possible, xterm--is-xterm): New helper
3361         functions.
3362         (xterm--init-bracketed-paste-mode): Remove unused helper
3363         function.
3364         (terminal-init-xterm): Update bracketed paste status when
3365         initializing an XTerm and on window configuration change.
3367         * lisp/term.el (term-char-mode, term-line-mode): Inhibit XTerm
3368         bracketed paste in char mode.
3370 2016-10-15  Dima Kogan  <dima@secretsauce.net>
3372         Undo the effect of CapsLock when other modifiers are present
3374         * src/keyboard.c (make_lispy_event): Effectively undo the effect
3375         of CapsLock if any modifiers other than Shift are present in a key.
3376         (Bug#24456)
3378 2016-10-15  Simen Heggestøyl  <simenheg@gmail.com>
3380         Add tests for foreign completions in CSS mode
3382         * test/lisp/textmodes/css-mode-tests.el
3383         (css-test-foreign-completions): New test for
3384         `css--foreign-completions'.
3385         (css-test-complete-selector-tag): Rename test.
3386         (css-test-complete-selector-class): New test testing completion of
3387         class names in selectors.
3388         (css-test-complete-selector-id): New test testing completion of IDs in
3389         selectors.
3391 2016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
3393         Cosmetic change to last mm-url change
3395         * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
3396         Tweak last change slightly for more readability.
3398 2016-10-13  Lars Ingebrigtsen  <larsi@gnus.org>
3400         Fix problem with submitting binary data via HTTP forms
3402         * lisp/gnus/mm-url.el (mm-url-encode-multipart-form-data):
3403         Document the parameters, clean up the code, and make uploading
3404         binary data really work (which it didn't if the binary bits
3405         were in the last part of the data).
3407 2016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3409         * lisp/time.el (display-time-string-forms): Fix custom type.
3411 2016-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3413         Derive Man and WoMan modes from special-mode
3415         * lisp/man.el (Man-mode-map): Set parent to map composed from both
3416         button-buffer-map and special-mode-map.  Remove redundant bindings.
3417         Fix menu to refer to the quit-window command.
3418         (Man-mode): Derive from special-mode.  Fix docstring.  Remove redundant
3419         buffer-read-only binding.
3420         (Man-quit): Remove.
3421         * lisp/woman.el (woman-really-find-file): Use setq-local.
3422         (woman-mode-map): Refer to woman-mode in docstring.
3423         (woman-mode): Derive from special-mode.  Document woman-mode-map in
3424         docstring.  Use setq-local where possible; imenu-generic-expression is
3425         already buffer-local.
3426         (woman-negative-vertical-space): Replace unused binding with _.
3428 2016-10-13  Philipp Stephani  <phst@google.com>
3430         Fix crash in evaluating functions
3432         See Bug#24673
3434         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
3435         as (closure).
3437         * test/src/eval-tests.el (eval-tests--bug24673): Add test.
3439 2016-10-13  Tino Calancha  <tino.calancha@gmail.com>
3441         Add test for Bug#24627
3443         * test/lisp/thingatpt-tests.el (thing-at-point-bug24627): New test.
3445 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
3447         * lib-src/etags.c (invalidate_nodes): Remove a redundant nullp test.
3449 2016-10-11  Paul Eggert  <eggert@cs.ucla.edu>
3451         Work around Samba bug with ':' in symlink contents
3453         * src/filelock.c (current_lock_owner): When reading the contents
3454         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
3456 2016-10-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3458         If autoloads buffer is unchanged, mark it as such (bug#23692)
3460         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
3461         If autoloads buffer is unchanged, mark it as such (bug#23692).
3463 2016-10-11  Michael Albinus  <michael.albinus@gmx.de>
3465         Use "26.1" version string in Tramp, fix some comments
3467         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods):
3468         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
3469         Use "26.1" version string.
3471 2016-10-10  Tino Calancha  <tino.calancha@gmail.com>
3473         form-at-point work for all kind of THINGS
3475         * lisp/thingatpt.el (form-at-point):
3476         Use thing-at-point--read-from-whole-string only if thing-at-point
3477         returns a string (Bug#24605).
3479 2016-10-10  Eli Zaretskii  <eliz@gnu.org>
3481         Fix compilation warnings on MS-Windows
3483         * src/w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Remove
3484         definitions of these macros, which seem to be unneeded and cause
3485         compiler warnings.
3486         * src/fileio.c (NOMINMAX): Avoid compiler warnings about unused
3487         macros.
3488         * src/firstfile.c (dummy_main_reference): Rename from 'dummy' and
3489         make it external, to avoid compiler warning.
3491 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3493         Spelling and clarity fixes
3495 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3497         Merge from origin/emacs-25
3499         4f406e9 CC Mode manual: remove reference to former Emacs variable las...
3500         44e402e Allow to disable compaction of font caches
3501         4ff4b66 Allow selection of font for symbols as in Emacs 24.x
3502         c03d44b ; Fix last commit
3503         d4be4f3 ; Fix indexing in lispref manual
3504         ed399f2 ; Minor improvement in documentation of generators
3505         197a6bc Fix horizontal scrolling during Isearch
3506         3566644 Fix infloop in redisplay due to truncated lines and invisible...
3508         # Conflicts:
3509         #       etc/NEWS
3511 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3513         Merge from origin/emacs-25
3515         c4a5e7e Improve documentation of 'menu-bar-open'
3517 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3519         Merge from origin/emacs-25
3521         4b347fe Clarify that doc fixes are okay in feature freeze
3522         01669ad Avoid crashes when setting the cursor
3523         f2144ee Restore 'command-debug-status' functionality
3524         ec6e4b9 ; Minor addition to CONTRIBUTE
3526 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3528         Merge from origin/emacs-25
3530         74b4f13 Document nil args of compare-buffer-substrings
3531         9fc81bc * doc/misc/message.texi (Bcc Warning): Fix markup.
3532         95baa25 * doc/misc/message.texi (Bcc Warning): Document mml-secure-sa...
3534 2016-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3536         Merge from origin/emacs-25
3538         f1247f0 * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
3539         ace7f14 * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
3540         bbf1ffd Regexp Functions doc minor fixes
3542 2016-10-08  Philipp Stephani  <phst@google.com>
3544         Don’t consider nested let-alist forms
3546         See Bug#24641.
3548         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Don’t
3549         consider symbols in nested ‘let-alist’ forms.
3551         * test/lisp/emacs-lisp/let-alist-tests.el
3552         (let-alist--deep-dot-search--nested): Add a unit test.
3554 2016-10-08  Alain Schneble  <a.s@realize.ch>
3556         Support SIGTRAP in kill emulation on Windows
3558         * src/w32proc.c (sys_kill): Translate SIGTRAP signal into a call to
3559         'DebugBreakProcess' to cause a breakpoint exception to occur in the
3560         specified process.  On Windows versions prior to Windows XP that do
3561         not support 'DebugBreakProcess' return -1 and set errno to ENOTSUP
3562         (as opposed to EINVAL before this change).
3563         * src/w32proc.c: Add typedef for 'DebugBreakProcess' function pointer
3564         and global variable to track state of run-time dynamic linking of this
3565         function.
3567         * etc/NEWS: Add entry to document that 'signal-process' now supports
3568         SIGTRAP.
3570 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
3572         Deprecate 'wp' group and introduce a new group 'text'
3574         * lisp/textmodes/tildify.el (tildify):
3575         * lisp/textmodes/text-mode.el (text-mode-hook):
3576         * lisp/textmodes/table.el (table):
3577         * lisp/textmodes/rst.el (rst):
3578         * lisp/textmodes/refer.el (refer):
3579         * lisp/textmodes/refbib.el (refbib):
3580         * lisp/textmodes/picture.el (picture):
3581         * lisp/textmodes/nroff-mode.el (nroff):
3582         * lisp/textmodes/enriched.el (enriched):
3583         * lisp/textmodes/bib-mode.el (bib):
3584         * lisp/progmodes/ebnf2ps.el (ebnf2ps):
3585         * lisp/nxml/rng-valid.el (relax-ng):
3586         * lisp/view.el (view):
3587         * lisp/ps-print.el (ps-print):
3588         * lisp/printing.el (printing):
3589         * lisp/outline.el (outlines):
3590         * lisp/lpr.el (lpr):
3591         * lisp/delim-col.el (columns): Use 'text' group instead of 'wp'.
3592         * lisp/cus-edit.el (wp): Remove the "text" tag.
3593         (text): New defgroup, inherits from the deprecated 'wp'.
3594         (outlines): Remove, in favor of the definition in outline.el.
3595         (tex): Inherit from 'text'.
3596         Suggested by Drew Adams <drew.adams@oracle.com>.  (Bug#24549)
3598 2016-10-08  Laimonas Vėbra  <laimonas.vebra@yahoo.com>  (tiny change)
3600         Extend dictionary and library-directory handling for Ispell
3602         * lisp/textmodes/ispell.el (ispell-check-version): Allow
3603         overriding LIBDIR via the variable defined by LIBRARYVAR (usually
3604         ISPELL_DICTDIR).
3605         (ispell-valid-dictionary-list): If the -d option to Ispell
3606         specifies an absolute file name, use that regardless of
3607         ispell-library-directory.  (Bug#24439)
3609 2016-10-07  Tassilo Horn  <tsdh@gnu.org>
3611         Fix unescaped \begin{...} in docstring
3613         * lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib): Fix unescaped
3614         \begin{...} in docstring.
3616 2016-10-06  Noah Friedman  <friedman@splode.com>
3618         Update comment.
3620 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
3622         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
3624         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
3625         defining to avoid redefinition warnings.
3627         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
3628         inclusion of sys/stat.h from the system headers, which could then
3629         lead to compilation errors due to redefinition of 'struct stat'
3630         etc.  This is needed because latest versions of MinGW runtime
3631         include sys/stat.h from wchar.h.
3633         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
3634         redefine to 4 to avoid conflict between 2 definitions of
3635         MemoryBarrier.  (Bug#24613)
3637 2016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
3639         * lisp/url/url-parse.el (url-generic-parse-url): Unquote macro URL argument.
3641 2016-10-05  Mark Oteiza  <mvoteiza@udel.edu>
3643         Autoload entry point testcover-start
3645         * lisp/emacs-lisp/testcover.el: Add autoload cookie for
3646         testcover-start.
3648 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3650         Bump version of ntlm.el to 2.1.0
3652         * lisp/net/ntlm.el: Bump version to 2.1.0.
3654 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3656         lisp/net/ntlm.el: Fix comment and docstring formatting
3658 2016-10-05  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3660         lisp/net/ntlm.el: Match Mozilla Type 1 and 3 message behavior
3662         * lisp/net/ntlm.el (ntlm-build-auth-request): Only set
3663         "negotiate domain supplied" bit when a domain is supplied.  Do
3664         not set "negotiate workstation supplied" bit.
3665         (ntlm-build-auth-response): Set domain to empty string by
3666         default.  Set workstation name to "WORKSTATION".  Set flags to
3667         logical and of Type 1 and Type 2 message flags.  Remove four
3668         trailing 0 bytes.  Always set LM response.  Hard-code domain
3669         offset.  Reorder buffer fields.
3671 2016-10-05  Martin Rudalics  <rudalics@gmx.at>
3673         Document return value of `display-buffer-in-side-window'
3675         * doc/lispref/windows.texi (Displaying Buffers in Side Windows):
3676         * lisp/window.el (display-buffer-in-side-window): Describe
3677         return value of `display-buffer-in-side-window'.
3679 2016-10-05  Eli Zaretskii  <eliz@gnu.org>
3681         Improve wording in side windows documentation
3683         * doc/lispref/windows.texi (Displaying Buffers in Side Windows)
3684         (Side Window Options and Functions)
3685         (Frame Layouts with Side Windows): Minor wording improvements.
3687 2016-10-05  Martin Rudalics  <rudalics@gmx.at>
3689         Document and fix some bugs with side windows
3691         Add a documentation for side windows and fix some bugs
3692         found when testing their behavior.  Also add a new window
3693         parameter `no-delete-other-window', a new `display-buffer'
3694         alist member called `window-parameters', and functions to
3695         toggle and reverse side windows on a frame.  Add new function
3696         `window-swap-states' to exchange states of two live windows.
3698         * lisp/window.el (display-buffer-in-atom-window): Use
3699         `split-window-no-error'.
3700         (window-sides-vertical): Maybe change layouts when setting this
3701         variable.
3702         (window-sides-reversed): New option.
3703         (window-sides-slots): Rewrite doc-string and help echoes.
3704         (window-sides-shown): New buffer-local variable set when showing
3705         a buffer in a side window.
3706         (window--sides-inhibit-check): New variable.
3707         (window--sides-reverse-on-frame-p, window-toggle-side-windows)
3708         (window--sides-reverse-all, window--sides-reverse-frame)
3709         (window--sides-reverse-side, window--sides-reverse)
3710         (window--sides-verticalize-frame, window--sides-verticalize)
3711         (window--sides-check-failed): New functions.
3712         (window--side-window-p): Remove function.
3713         (window--major-non-side-window): Rename to `window-main-window',
3714         adjust callers, rewrite doc-string.
3715         (window--major-side-window): Rename to
3716         `window--make-major-side-window-next-to', adjust caller, fix
3717         doc-string.
3718         (display-buffer-in-major-side-window): Rename to
3719         `window--make-major-side-window', adjust
3720         caller, rewrite doc-string.  Make `window-side' and
3721         `window-slot' parameters persistent (Bug#23858).  Don't set
3722         `delete-window' parameter.  Add `preserve-size' entry to ALIST.
3723         (delete-side-window): Remove function.
3724         (display-buffer-in-side-window): Fix doc-string.  Don't set
3725         `delete-window' parameter.  Add `preserve-size' entry to ALIST.
3726         (window--side-check): Rename to window--sides-check.  Rewrite
3727         completely.  Adjust caller.
3728         (window-resize-no-error): Don't describe PIXELWISE argument.
3729         (adjust-window-trailing-edge): Fix bug that disallowed
3730         re-enlarging windows that were too small.
3731         (window-deletable-p): Don't tell that a minibuffer window on a
3732         non-minibuffer-only frame can be deleted.  Fix doc-string.
3733         (delete-window): Handle deleting a side window here (the
3734         `delete-window' parameter is no more set for side windows).
3735         (delete-other-windows): Handle ‘no-delete-other-window'
3736         parameter. Don't treat side windows separately (see discussion
3737         of Bug#24368) but keep optimization that makes the main window
3738         the root window of its frame.
3739         (switch-to-prev-buffer, switch-to-next-buffer): Handle side
3740         windows and buffers shown in side windows separately.
3741         (split-window-no-error): New function.
3742         (window--state-get-1): Use right buffer when storing window
3743         point and start positions and WRITABLE is nil (Bug#24368).
3744         (window--state-put-1): Fix handling of `window-combination-limit'.
3745         Use `split-window-no-error'.
3746         (window--state-put-2): Try to restore windows with preserved
3747         size to their original size.  Fix bug where a fixed window's width
3748         was not preserved.
3749         (window-state-put): When reducing an internal window to a live
3750         one, don't choose a side window.
3751         (window-swap-states): New function.
3752         (window-splittable-p): Don't call `window--side-window-p'.
3753         (window--display-buffer): Handle `window-parameters' ALIST entry.
3754         Minor rewrite.
3755         (display-buffer): Mention `window-parameters' entry in
3756         doc-string.
3757         (display-buffer-at-bottom): Call `split-window-no-error'.
3759         * doc/lispref/elisp.texi (Top): New section "Side Windows".
3760         * doc/lispref/windows.texi (Deleting Windows): Fix descriptions
3761         of `delete-window' and `delete-other-windows' wrt window
3762         parameters and side windows.
3763         (Display Action Functions): Mention `window-parameters' ALIST
3764         entry.
3765         (Side Windows): New section (Bug#18170).
3766         (Window Configurations): Describe new function `window-swap-states'.
3767         (Window Parameters): Say that functions may behave specially when
3768         their homonymous window parameter has been set.  Mention new
3769         parameter `no-delete-other-window'.  Add cross reference for
3770         `window-side' and `window-slot' parameters.
3772 2016-10-04  John Wiegley  <johnw@newartisans.com>
3774         Add documentation note from Alex
3776 2016-10-04  Mark Oteiza  <mvoteiza@udel.edu>
3778         Avoid dynamic binding on a symbol
3780         Instead, bind history in the default minibuffer-history.
3781         Fixes bug#24580.
3782         * lisp/replace.el (query-replace-read-from): Let-bind
3783         minibuffer-history.  Change read-regexp and read-from-minibuffer's
3784         HISTORY arguments to nil so that they use minibuffer-history.
3786 2016-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
3788         * src/fileio.c (Finsert_file_contents): Fix hook handling (bug#24340)
3790         * src/fileio.c (Finsert_file_contents): Run before-change-hooks before
3791         deleting the old buffer content.
3792         * src/lisp.h (del_range_byte):
3793         * src/insdel.c (del_range_byte): Drop the last argument.
3794         * src/fns.c (Fbase64_encode_region): Adjust accordingly.
3796 2016-10-03  Tino Calancha  <tino.calancha@gmail.com>
3798         Ibuffer: 'w' and 'B' default to buffer at current line
3800         See discussion in:
3801         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00384.html
3802         * lisp/ibuffer.el (ibuffer--near-buffers): New defun;
3803         return buffers near current line.
3804         * lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): Use it.
3805         Add argument ARG; if a non-zero integer, return next ARG buffers.
3806         Otherwise return the marked buffers.
3807         If there are not marked buffers, return buffer at current line
3808         without prompting the user.
3809         Use ibuffer-get-marked-buffers instead of ibuffer-map-marked-lines.
3810         Append to kill ring when last command was a kill-region.
3811         (ibuffer-copy-filename-as-kill): Idem.
3812         Simplify the code.
3813         Use ibuffer-buffer-file-name instead of buffer-file-name to
3814         include buffers in Dired mode.
3816 2016-10-03  Tino Calancha  <tino.calancha@gmail.com>
3818         dired-mark-extension: Unmark if called with C-u prefix
3820         See discussion in #Bug2518 and:
3821         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00711.html
3822         * lisp/dired-x.el (dired-mark-extension):
3823         Update interactive calls: a prefix arg C-u unmark files;
3824         a prefix C-u C-u prompt for MARKER-CHAR and mark files with it.
3825         (dired-mark-sexp):
3826         Show in the prompt that we are unmarking if called with a prefix argument.
3827         * doc/misc/dired-x.texi (Advanced Mark Commands):
3828         Update documentation for 'dired-mark-extension'.
3830 2016-10-02  Karl Fogel  <kfogel@red-bean.com>
3832         Document yank behavior in the right place
3834         * lisp/simple.el (yank): Document the handling of the
3835         `yank-handled-properties' and `yank-excluded-properties' variables,
3836         and the `yank-handler' text property.
3837         (yank-pop): Refer to `yank' now (bug#286)
3839         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
3840         (insert-for-yank-1): Refer to `insert-for-yank' now.
3842         See this thread for discussion:
3844           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
3845           From: Karl Fogel
3846           To: Emacs Devel
3847           Subject: Question about intended behavior of 'insert-for-yank-1'.
3848           Date: Mon, 12 Sep 2016 00:17:14 -0500
3849           Message-ID: <874m5lr92d.fsf@red-bean.com>
3851 2016-10-02  Philipp Stephani  <phst@google.com>
3853         Restart blink cursor timers on interval changes
3855         This prevents surprising behavior when timer interval customizations are
3856         only applied whenever the timers happen to be restarted (see Bug#24372).
3858         * lisp/frame.el (blink-cursor--start-idle-timer)
3859         (blink-cursor--start-timer): New functions.
3860         (blink-cursor-start, blink-cursor-check, blink-cursor-mode): Use
3861         the new helper functions.
3862         (blink-cursor-delay, blink-cursor-interval): Restart timers when
3863         the value is changed.
3865 2016-10-01  Philipp Stephani  <phst@google.com>
3867         Use a simple keyword for a non-nil argument
3869         The second argument of `run-with-idle-timer' is Boolean, i.e. only nil
3870         and non-nil values are distinguished.  Passing a number here is
3871         confusing.  Pass a descriptive symbol instead.
3873         * lisp/frame.el (blink-cursor-mode, blink-cursor-check): Use
3874         :repeat symbol instead of number for second argument of
3875         `run-with-idle-timer'
3877 2016-10-01  Philipp Stephani  <phst@google.com>
3879         Make querying to kill processes customizable
3881         Introduce a new customization option, `confirm-kill-processes', that
3882         users can set to nil if they don't want Emacs to nag them about killing
3883         processes.
3885         * lisp/files.el (confirm-kill-processes): New customization option.
3886         (save-buffers-kill-emacs): Use customization option.
3888         * test/lisp/files-tests.el
3889         (files-test--save-buffers-kill-emacs--confirm-kill-processes): Add
3890         test for new customization option.
3892         * doc/emacs/entering.texi (Exiting): Document new user option.
3894         * doc/lispref/processes.texi (Query Before Exit): Document new
3895         user option.
3897         * etc/NEWS: Document new user option.
3899 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3901         Set :version of 'debugger-stack-frame-as-list'
3903         * lisp/cus-start.el (debugger-stack-frame-as-list): Give value to
3904         the ':version' attribute.
3906 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3908         Bump Emacs version to 26.0.50
3910         * README:
3911         * configure.ac:
3912         * etc/NEWS:
3913         * etc/refcards/ru-refcard.tex:
3914         * msdos/sed2v2.inp:
3915         * src/msdos.c: Increment Emacs version to 26.0.50.
3916         * etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
3917         moved to etc/NEWS.
3919 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
3921         Avoid compilation warning on MinGW
3923         * src/w32.c: Include string.h, needed for the prototype of
3924         'strerror', shadowed by 'sys_strerror'.  This avoids a compiler
3925         warning about "no previous prototype".  The string.h header
3926         must be included after ms-w32.h, but before "#undef strerror".
3928 2016-09-30  Alan Third  <alan@idiocy.org>
3930         Fix compatibility with macOS 10.12 pmset (bug#24537)
3932         * lisp/battery.el (battery-pmset): Recognise and ignore battery id if
3933         present in output.
3935 2016-09-30  Paul Eggert  <eggert@cs.ucla.edu>
3937         Limit <config.h>’s includes
3939         This follows up on recent problems with the fact that config.h
3940         includes stdlib.h etc.; some files need to include stdlib.h later.
3941         config.h generally should limit itself to includes that are
3942         universally safe; outside of MS-Windows, only stdbool.h makes
3943         the cut among the files currently included.  So, move the
3944         other includes to just the files that need them (Bug#24506).
3945         * configure.ac (config_opsysfile): Remove, as this generic hook
3946         is no longer needed.
3947         * lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
3948         * src/w32proc.c (_GNU_SOURCE):
3949         Remove, as it’s OK for config.h to do this now.
3950         * src/conf_post.h: Include <ms-w32.h>, instead of the generic
3951         config_opsysfile, for simplicity as this old way of configuring is
3952         now done only for the MS-Windows port.  Do not include <ms-w32.h>
3953         if DEFER_MS_W32_H, for the benefit of the few files that want its
3954         effects later.  Do not include <alloca.h>, <string.h>, or
3955         <stdlib.h>.  Other files modified to include these headers as
3956         needed, or to not include headers that are no longer needed.
3957         * src/lisp.h: Include <alloca.h> and <string.h> here, since
3958         some of the inline functions need them.
3959         * src/regex.c: Include <alloca.h> if not emacs.  (If emacs,
3960         we can rely on SAFE_ALLOCA.)  There is no longer any need to
3961         worry about HAVE_ALLOCA_H.
3962         * src/unexmacosx.c: Rely on config.h not including stdlib.h.
3963         * src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
3964         Define before including <config.h> first, and include <ms-w32.h>
3965         after the troublesome headers.
3967 2016-09-30  Vasilij Schneidermann  <v.schneidermann@gmail.com>
3969         New user option 'debugger-stack-frame-as-list'
3971         * src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
3972         variable.
3973         * lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
3974         * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
3975         backtrace processing for the value of debugger-stack-frame-as-list.
3976         * lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
3977         processing for the value of debugger-stack-frame-as-list.
3978         * doc/lispref/debugging.texi (Internals of Debugger): Document
3979         debugger-stack-frame-as-list.
3980         * etc/NEWS: Mention 'debugger-stack-frame-as-list'.
3982 2016-09-30  Aurelien Aptel  <aaptel@suse.com>
3984         * src/alloc.c: call only non-null finalizers
3986 2016-09-30  Eli Zaretskii  <eliz@gnu.org>
3988         Avoid compiler warnings in image.c on MS-Windows
3990         * src/image.c (DrawText, g_type_init) [WINDOWSNT]: Avoid compiler
3991         warning about unused macros.
3993 2016-09-30  Paul Rankin  <hello@paulwrankin.com>
3995         * lisp/outline.el (outline-invisible-p): Only return `t' for
3996         the 'outline property.
3998 2016-09-29  Paul Eggert  <eggert@cs.ucla.edu>
4000         Fix problems found by static checking --with-ns
4002         This is for Fedora 24 when configured with --enable-gcc-warnings.
4003         Although it does not fix all the problems, it fixes many of them.
4004         * src/frame.c (XParseGeometry):
4005         * src/nsterm.m (mouseDown:):
4006         Mark locals with UNINIT to pacify --enable-gcc-warnings.
4007         * src/image.c (PIX_MASK_DRAW, DefaultDepthOfScreen):
4008         Remove unused macros.
4009         (slurp_file xbm_scan, xbm_read_bitmap_data, xbm_load_image)
4010         (xbm_file_p, xbm_load, xpm_scan, xpm_make_color_table_v)
4011         (xpm_put_color_table_v, xpm_get_color_table_v)
4012         (xpm_make_color_table_h, xpm_put_color_table_h)
4013         (xpm_get_color_table_h, xpm_load_image, xpm_load)
4014         (pbm_next_char, pbm_scan_number, pbm_load, svg_load)
4015         (svg_load_image):
4016         * src/nsfns.m (x_get_string_resource):
4017         * src/nsimage.m (ns_image_from_XBM):
4018         Fix pointer signedness problems.
4019         * src/image.c (xpm_load_image, x_build_heuristic_mask, pbm_load)
4020         (imagemagick_load_image): Omit unused locals.
4021         * src/nsfns.m (ns_send_types, ns_return_types, ns_drag_types)
4022         (Fx_open_connection):
4023         * src/nsfont.m (ns_antialias_threshold):
4024         Move extern decl to nsterm.h so it can be checked.
4025         * src/nsmenu.m (svcsMenu, dockMenu):
4026         Move to the only file that uses them, so they can be static.
4027         * src/nsterm.h (find_and_call_menu_selection):
4028         * src/nsterm.m (x_set_frame_alpha):
4029         Omit duplicate decls.
4030         * src/nsterm.h (ns_dump_glyphstring): Mark as EXTERNALLY_VISIBLE.
4031         * src/nsfns.m (ns_tooltip, ns_display_info_for_name)
4032         (ns_set_name_as_filename, x_set_menu_bar_lines)
4033         (x_set_tool_bar_lines, x_set_internal_border_width):
4034         * src/nsterm.m (ns_drag_types, ns_draw_text_decoration):
4035         Now static.
4036         * src/nsfns.m (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp):
4037         * src/nsterm.m (ns_free_indexed_color, ns_color_to_lisp):
4038         Remove; unused.
4039         * src/nsfont.m (ns_dump_glyphstring):
4040         * src/nsterm.m (hide_bell, ns_get_color, ns_color_to_lisp)
4041         (ns_clear_frame, keyDown:):
4042         Fix signedness problem with printf arg.
4043         * src/nsterm.h (ns_input_events, ns_finish_events):
4044         * src/nsterm.m (ns_finish_events, hide_bell):
4045         Prototype the decls.
4046         * src/nsterm.m (NSMenuDidBeginTrackingNotification):
4047         Omit unnecessary decl.
4048         (dockMenu):
4049         (mainMenu) [NS_IMPL_COCOA]: Now static, and in this file.
4050         (ns_dumpglyphs_box_or_relief, changeFont:, initFrameFromEmacs:)
4051         (toggleFullScreen:): Use FACE_FROM_ID instead of
4052         FACE_FROM_ID_OR_NULL in contexts where the caller expects the
4053         result to be non-null.
4054         (applicationShouldTerminate:): Fix misleading indentation.
4056 2016-09-28  Mark Oteiza  <mvoteiza@udel.edu>
4058         Turn on more lexical-binding
4060         * lisp/dom.el:
4061         * lisp/faces.el:
4062         * lisp/htmlfontify.el: Turn on lexical-binding.
4063         (htmlfontify-string): Use pushnew instead of add-to-list.
4064         * lisp/info-xref.el:
4065         * lisp/isearch.el:
4066         * lisp/man.el:
4067         * lisp/ps-def.el:
4068         * lisp/ps-print.el:
4069         * lisp/replace.el: Turn on lexical-binding.  Require cl-lib at compile
4070         time.
4071         (multi-occur): Use cl-pushnew instead of add-to-list.
4072         (replace-match-string-symbols): Remove unused lexical variable.
4073         (replace-search, replace-highlight): Fix argument shadowing.
4074         * lisp/sort.el:
4075         * lisp/xml.el: Turn on lexical-binding.
4076         (xml--parse-buffer): Use push instead of add-to-list.
4077         * lisp/xt-mouse.el: Turn on lexical-binding.
4079 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4081         * admin/notes/bug-triage: Do not mention closed bugs
4083         * admin/notes/bug-triage: Do not mention closed bugs, they are
4084         suppressed by default in debbugs-{gnu,org}.
4086 2016-09-27  Michael Albinus  <michael.albinus@gmx.de>
4088         * etc/PROBLEMS: Remove problem Bug#22814, again.
4090 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4092         Stick with debbugs-supported tags in triage
4094         * admin/notes/bug-triage: Stick to the tag "unreproducible", which
4095         debbugs supports, rather than suggesting "doneunreproducible" or
4096         "unreproducable".
4098 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4100         Merge from origin/emacs-25
4102         9fc9988 Improve documentation of 'expand-abbrev' and wrapper hooks
4103         c14a1d4 Minor copyedits of MS-Windows installation instructions
4104         f281924 Fix display of cursor when 'blink-cursor-delay' has small value
4106         # Conflicts:
4107         #       lisp/minibuffer.el
4109 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4111         Merge from origin/emacs-25
4113         0ae9a81 Document 'timerp'
4114         2c72c46 Improve documentation of overlay priorities
4115         f6fa160 Fix 'dired-compress-files'
4116         2b8c5f0 Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
4118         # Conflicts:
4119         #       lisp/dired.el
4120         #       src/buffer.h
4121         #       src/character.h
4123 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4125         Merge from origin/emacs-25
4127         cf9e174 Document the optional zlib library in MS-Windows builds
4128         84eb144 ; * admin/notes/unicode: Mention BidiCharacterTest.txt.
4129         73c67dd Fix tagging of DEFUN by etags
4130         ea1960b Avoid resetting track-mouse by mouse clicks
4131         505fef3 Improve nt/README.W32 instructions
4132         1229cc4 Document that desktop file overrides frame parameters
4133         f0eb70d ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 release
4135         # Conflicts:
4136         #       ChangeLog.2
4137         #       admin/notes/unicode
4138         #       lisp/ldefs-boot.el
4140 2016-09-26  Paul Eggert  <eggert@cs.ucla.edu>
4142         Merge from origin/emacs-25
4144         0ffc9ce Update admin/authors.el
4145         0ad7410 Update Antinews in ELisp manual
4146         ea0f750 Fix comments on window height macros
4147         0bbdeed Fix 'url-http-create-request' when cookies are used
4148         0045998 Fix cross reference in frames.texi
4149         1392894 ; * etc/DEBUG: Minor copyedits.
4150         304a5c8 ; * etc/DEBUG: Improve documentation of getting control to GDB.
4151         56bf7d7 Fix regexp-opt documentation (bug #17862)
4152         803ad6f ; Fix documentation of seq-subseq
4153         ed4530d * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in doc...
4154         88ea396 ; Spelling fixes
4155         17197d0 Fix tags-query-replace docstring
4156         80a7f8b Clarify documentation of precision in format specs
4157         88a5052 Improve and clarify documentation of subprocesses
4158         89eb09f * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
4160         # Conflicts:
4161         #       etc/PROBLEMS
4162         #       src/process.c
4164 2016-09-26  Michael Albinus  <michael.albinus@gmx.de>
4166         * lisp/net/tramp-compat.el (tramp-compat-funcall): Don't use `subrp'.
4168 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4170         Fix 'dired-mark-extension' with prefix argument
4172         * lisp/dired-x.el (dired-mark-extension): Allow to specify
4173         MARKER-CHAR interactively as a string, not as a character's
4174         codepoint.  (Bug#24518)
4176         * doc/misc/dired-x.texi (Advanced Mark Commands): Document the
4177         behavior when invoked with a prefix arg.
4179 2016-09-24  Simen Heggestøyl  <simenheg@gmail.com>
4181         Support completion of classes and IDs in CSS mode
4183         * lisp/textmodes/css-mode.el (css-class-list-function): New variable
4184         holding the function to call for retrieving completions of class
4185         names.
4186         (css-id-list-function): New variable holding the function to call for
4187         retrieving completions of IDs.
4188         (css--foreign-completions): New function for retrieving completions
4189         from other buffers.
4190         (css--complete-selector): Support completing HTML class names and IDs
4191         from other buffers in addition to completing HTML tags.
4193         * lisp/textmodes/sgml-mode.el (html--buffer-classes-cache): New
4194         variable holding a cache for `html-current-buffer-classes'.
4195         (html--buffer-ids-cache): New variable holding a cache for
4196         `html-current-buffer-ids'.
4197         (html-current-buffer-classes): New function returning a list of class
4198         names used in the current buffer.
4199         (html-current-buffer-ids): New function returning a list of IDs used
4200         in the current buffer.
4201         (html-mode): Set `css-class-list-function' and `css-id-list-function'
4202         to `html-current-buffer-classes' and `html-current-buffer-ids'
4203         respectively.
4205 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4207         Update test suite files due to removal of test/lisp/legacy
4209         * test/README: Reference file-organization.org.
4210         * test/file-organization.org: Remove the description of files in
4211         the lisp/legacy/ directory.
4213 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4215         Incorporate syntax-tests in lisp-tests.
4217         * test/lisp/emacs-lisp/lisp-tests.el: Add tests from
4218         test/lisp/legacy/syntax-tests.el.
4219         * test/lisp/legacy/syntax-tests.el: File deleted.
4221 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4223         Incorporate occur-tests in replace-tests
4225         * test/lisp/replace-tests.el: Add tests from
4226         test/lisp/legacy/occur-tests.el.
4227         * test/lisp/legacy/occur-tests.el: File deleted.
4229 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4231         Incorporate lexbind-tests.el in bytecomp-test.el
4233         * test/lisp/emacs-lisp/bytecomp-tests.el: Added tests from
4234         test/lisp/legacy/lexbind-tests.el.
4235         * test/lisp/legacy/lexbind-tests.el: File deleted.
4237 2016-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4239         Improve integer overflow handling a bit
4241         * src/charset.c (read_hex): Use INT_LEFT_SHIFT_OVERFLOW for clarity.
4242         The machine code is the same on my platform.
4243         * src/doprnt.c (doprnt):
4244         * src/emacs-module.c (module_funcall):
4245         * src/font.c (font_intern_prop):
4246         * src/keyboard.c (Frecursion_depth):
4247         * src/lread.c (read1):
4248         Use WRAPV macros instead of checking overflow by hand.
4249         * src/editfns.c (hi_time, time_arith, decode_time_components):
4250         * src/emacs-module.c (Fmodule_load):
4251         Simplify by using FIXNUM_OVERFLOW_P.
4252         * src/emacs-module.c: Include intprops.h.
4253         * src/xdisp.c (percent99): New function.
4254         (decode_mode_spec): Use it to simplify overflow avoidance and
4255         formatting of %p and %P.
4257 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4259         Incorporate core-elisp-tests in lisp-tests
4261         * test/lisp/emacs-lisp/lisp-tests.el: Added tests from
4262         test/lisp/legacy/core-elisp-tests.el.
4263         * test/lisp/legacy/core-elisp-tests.el: File removed.
4265 2016-09-24  Eli Zaretskii  <eliz@gnu.org>
4267         Move coding-tests.el and decoder-test.el to their places
4269         * test/src/coding-tests.el: Added all the tests from
4270         test/lisp/legacy/decoder-tests.el.
4271         * test/lisp/legacy/decoder-tests.el: File deleted.
4273 2016-09-23  Vibhav Pant  <vibhavp@gmail.com>
4275         Use correct TYPE value for displaying error messages in (erc-display-message)
4277 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
4279         Bump the version to 25.2.50
4281         * README:
4282         * configure.ac:
4283         * etc/NEWS:
4284         * msdos/sed2v2.inp: Increment the Emacs version to 25.2.50.
4286 2016-09-22  Tino Calancha  <tino.calancha@gmail.com>
4288         ibuffer-do-view-other-frame: Display each buffer in a new frame
4290         * lisp/ibuffer.el (ibuffer-do-view-1):
4291         When TYPE equals 'other-frame, then display each buffer
4292         in a new frame (Bug#24086).
4294 2016-09-22  Paul Eggert  <eggert@cs.ucla.edu>
4296         Update from gnulib
4298         This incorporates:
4299         2016-09-22 stdint: port to GCC 7
4300         2016-09-22 limits-h, stdint: don't assume extensions
4301         * doc/misc/texinfo.tex, m4/limits-h.m4, m4/stdint.m4: Copy from gnulib.
4303 2016-09-22  Alan Mackenzie  <acm@muc.de>
4305         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Fix coding error
4307 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4309         Port recent flexmember changes to NetBSD
4311         The NetBSD library supports localtime_rz directly, and without
4312         this change 'configure' omitted the flexmember test that is marked
4313         as conditional on localtime_rz.  Emacs now needs to use
4314         flexmember.m4 even when localtime_rz works.
4315         Problem reported by Thomas Klausner.
4316         * admin/merge-gnulib (GNULIB_MODULES): Add flexmember.
4317         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4319 2016-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4321         * doc/misc/texinfo.tex: Copy from gnulib.
4323 2016-09-21  Michael Albinus  <michael.albinus@gmx.de>
4325         * lisp/net/tramp.el (tramp-clear-passwd): Call also `auth-source-forget'.
4327 2016-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4329         Use flexmembers on IBM XL C for AIX
4331         This removes a workaround where Emacs did not use flexible
4332         array members when compiled with IBM XL C.  Instead, avoid
4333         the problem by making the aliasing issues more obvious to
4334         this compiler.
4335         * admin/merge-gnulib: Don’t remove m4/flexmember.m4.
4336         * m4/flexmember.m4: Copy from gnulib.
4337         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Remove workaround.
4338         * src/alloc.c (allocate_string_data): Rephrase to avoid aliasing
4339         problem that would otherwise mess up code generated for flexible
4340         array members by IBM XL C for AIX, V12.1.
4341         * src/conf_post.h (FLEXIBLE_ARRAY_MEMBER): Remove; now done
4342         by gnulib code.
4344 2016-09-19  Michael Albinus  <michael.albinus@gmx.de>
4346         Fix a problem with Tramp when the temporary dir isn't C:/Temp on w32
4348         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name): Don't use
4349         `tramp-drop-volume-letter' any longer, it causes collateral
4350         damages.  Reported by Chris Zheng <chriszheng99@gmail.com>.
4352 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4354         Port January __morecore changes to AIX 7.1
4356         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE, __morecore)
4357         (__after_morecore_hook):
4358         * src/ralloc.c (__morecore):
4359         Declare if DOUG_LEA_MALLOC is not defined, not if HAVE_MALLOC_H is
4360         not defined.  <malloc.h> does not declare these in AIX 7.1.
4362 2016-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4364         Define _GNU_SOURCE in files delaying config.h
4366         Problem reported by Richard Copley in:
4367         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00440.html
4368         * src/w32.c, src/w32notify.c, src/w32proc.c (_GNU_SOURCE):
4369         Define early.
4371 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
4373         Update the bidi test code and data
4375         * test/manual/BidiCharacterTest.txt: Import the version from
4376         Unicode Standard 9.0.0.
4377         * test/manual/biditest.el (biditest-generate-testfile): Allow 'x'
4378         in the 4th field of the test data.
4380 2016-09-17  Tino Calancha  <tino.calancha@gmail.com>
4382         ibuffer-do-toggle-read-only: Fix unused argument
4384         * lisp/ibuffer.el (ibuffer-do-toggle-read-only): Call
4385         'read-only-mode' with ARG when its an integer.
4386         Clarify the meaning of ARG in doc string.
4388 2016-09-17  Alan Mackenzie  <acm@muc.de>
4390         Improve accuracy of line/column numbers in byte compiler's warning messages.
4392         * lisp/emacs-lisp/bytecomp.el (byte-compile-set-symbol-position): ensure new
4393         value of byte-compile-last-position is not lower than old value.
4394         (byte-compile-function-warn): call byte-compile-set-symbol-position.
4396 2016-09-17  Michael Albinus  <michael.albinus@gmx.de>
4398         Minor Tramp tweaks
4400         * lisp/net/tramp.el (tramp-get-buffer): Reuse connection
4401         property "process-buffer" if already existing.
4402         (tramp-connectable-p): Suppress debug messages.
4404 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4406         Define _GNU_SOURCE in unexmacosx.c
4408         Problem reported by Bob Halley in:
4409         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00427.html
4410         * src/unexmacosx.c (_GNU_SOURCE): Define if not already defined.
4412 2016-09-16  Alan Mackenzie  <acm@muc.de>
4414         C Mode: Fix mis-fontification of macro invocation as function declaration
4416         This happened with a macro invocation which was followed by a statement block
4417         in braces.
4419         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): CASE 11: distinguish
4420         between contexts nil and top, being less permissive in the former case.
4421         (c-just-after-func-arglist-p): call c-forward-decl-or-cast-1 with context top.
4423 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4425         Improve the doc string of 'format'
4427         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
4428         of a literal period.  (Bug#24407)
4430 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4432         Improve doc strings in whitespace.el
4434         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
4435         (global-whitespace-mode, global-whitespace-newline-mode): Improve
4436         the doc strings.  (Bug#24413)
4438 2016-09-16  Eli Zaretskii  <eliz@gnu.org>
4440         Improve detectability of 'next-logical-line' and 'previous-logical-line'
4442         * lisp/simple.el (next-line, previous-line): Mention
4443         'next-logical-line' and 'previous-logical-line' in the doc
4444         strings.  (Bug#24443)
4446 2016-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4448         Update from gnulib
4450         This incorporates:
4451         2016-09-16 extensions: fix typo in comment
4452         2016-09-16 stdio: don't redefine __USE_MINGW_ANSI_STDIO
4453         * m4/extensions.m4, m4/stdio_h.m4: Copy from gnulib.
4455 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4457         Prefer now-standard int width macros
4459         * src/data.c (ULL_WIDTH):
4460         * src/lisp.h (EMACS_INT_WIDTH, BITS_PER_BITS_WORD):
4461         * src/lread.c (read_integer):
4462         * src/term.c (produce_glyphless_glyph):
4463         * src/xterm.c (x_send_scroll_bar_event):
4464         Use *_WIDTH macros instead of CHAR_BIT * sizeof.
4465         * src/data.c (ULL_WIDTH): Rename from BITS_PER_ULL for consistency
4466         with the *_WIDTH standard macros.  All uses changed.
4467         * src/gmalloc.c (INT_BIT): Remove.  All uses replaced with INT_WIDTH.
4468         * src/lisp.h (EMACS_INT_WIDTH): Rename from BITS_PER_EMACS_INT
4469         for consistency with the *_WIDTH standard macros.  All uses changed.
4470         (BITS_PER_CHAR): Remove; all uses replaced by CHAR_BIT.  This must
4471         be the same as CHAR_WIDTH and avoids confusion with Elisp
4472         char-width, which counts columns not bits.
4473         (BITS_PER_SHORT): Remove; all uses replaced by SHRT_WIDTH.
4474         (BITS_PER_LONG): Remove; all uses replaced by LONG_WIDTH.
4475         * src/lread.c: Do not include limits.h since CHAR_BIT is no longer
4476         used directly.
4478 2016-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4480         Update from gnulib
4482         This incorporates:
4483         2016-09-15 stdint: support new _WIDTH macros
4484         2016-09-15 limits-h: new module
4485         2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
4486         2016-09-15 extensions: port to more ISO C TSes
4487         2016-09-13 intprops: new macro TYPE_WIDTH
4488         2016-09-13 extensions: port to recent ISO C TRs
4489         * .gitignore: Add lib/limits.h.
4490         * doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
4491         * lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
4492         * m4/sys_types_h.m4: Copy from gnulib.
4493         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4494         * lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
4495         * nt/gnulib.mk: Merge changes from lib/gnulib.mk.
4497 2016-09-15  Michael Albinus  <michael.albinus@gmx.de>
4499         Rework fixing Bug#24432
4501         * lisp/net/tramp.el (tramp-get-buffer): Set connection property
4502         "process-buffer" in order to mark connection as active.
4504         * lisp/net/tramp-cache.el (tramp-get-hash-table)
4505         (tramp-set-connection-property)
4506         (tramp-dump-connection-properties): Do not use "active" property.
4507         (tramp-list-connections): Use "process-buffer" property.
4509         * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Flush process
4510         properties prior deletion of process.
4512 2016-09-14  Johan Bockgård  <bojohan@gnu.org>
4514         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix debug spec (Bug#24430).
4516         * lisp/emacs-lisp/edebug.el (defun): Fix debug spec.
4518 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4520         Avoid compiler warning on MS-Windows due to clone_file
4522         * src/fileio.c (clone_file): Condition on !WINDOWSNT, since the
4523         call to it is not compiled in that build, and having it defined
4524         causes compiler warnings.
4526 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
4528         Avoid aborts in GC due to abort_on_gc
4530         * src/lisp.h:
4531         * src/print.c (Fprin1_to_string):
4532         * src/eval.c (signal_or_quit):
4533         * src/alloc.c (garbage_collect_1): Remove declarations, setting,
4534         and testing the value of abort_on_gc.  It is no longer needed, and
4535         using it causes rare aborts in GC for no good reason.  (Bug#23912)
4537 2016-09-14  Michael Albinus  <michael.albinus@gmx.de>
4539         Fix Bug#24432
4541         * lisp/net/tramp-cache.el (tramp-get-hash-table): Initialize a
4542         connection as inactive.
4543         (tramp-set-connection-property): Make the connection active.
4544         (tramp-dump-connection-properties): Don't save "active" property.
4545         (tramp-list-connections): List only active connections.  (Bug#24432)
4547 2016-09-14  Lars Ingebrigtsen  <larsi@gnus.org>
4549         Don't bug out on all-whitespace URLs
4551         * lisp/net/shr.el (shr-expand-url): Don't bug out on
4552         degenerate all-whitespace URLs.
4554 2016-09-13  Katsumi Yamaoka  <yamaoka@jpl.org>
4556         sieve-manage.el: Rename sieve-manage-ignore-broken-tls
4558         * lisp/net/sieve-manage.el (sieve-manage-ignore-starttls):
4559         Rename from sieve-manage-ignore-broken-tls.  If it is set,
4560         sieve-manage will never use STARTTLS even if the server says
4561         it is capable (but may be broken).
4563 2016-09-13  Paul Eggert  <eggert@cs.ucla.edu>
4565         Port to ISO/IEC TS 18661-1:2014
4567         * src/character.h (CHARACTER_WIDTH): Rename from CHAR_WIDTH.
4568         All uses changed.
4570 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4572         dired-jump: Expand file-name before dired-goto-file call
4574         Command dired-goto-file requires its argument to be an absolute
4575         file name.  Interactively FILE-NAME is read with read-file-name,
4576         which could return an abbreviated file name (Bug#24409).
4577         * lisp/dired-x.el (dired-jump): Use expand-file-name on FILE-NAME.
4578         Clarify in doc string the meaning of arg FILE-NAME.
4580 2016-09-13  Tino Calancha  <tino.calancha@gmail.com>
4582         Add test for Bug#21454
4584         * test/lisp/legacy/files-tests.el (files-test-bug-21454): New test.
4586 2016-09-12  Katsumi Yamaoka  <yamaoka@jpl.org>
4588         * lisp/net/sieve-manage.el (sieve-manage-ignore-broken-tls): Add :version.
4590 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4592         sieve.el: Make the buffer to edit unmodified initially (bug#24423)
4594         * lisp/net/sieve.el (sieve-edit-script):
4595         Make the buffer to edit be not modified-p initially (bug#24423).
4597 2016-09-12  TSUCHIYA Masatoshi  <tsuchiya@namazu.org>
4599         sieve-manage.el: Allow user to avoid STARTTLS capability test (bug#24422)
4601         * lisp/net/sieve-manage.el
4602         (sieve-manage-ignore-broken-tls): New user option.
4603         (sieve-manage-open-server):
4604         Don't test STARTTLS capability if the option is set (bug#24422).
4606 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4608         Fix compiler thinking width and height may be unitialised in frame.c
4610         This fixes the following warning:
4612                 frame.c: In function ‘x_set_frame_parameters’:
4613                 frame.c:3329:25: error: ‘width’ may be used uninitialized in
4614                         this function [-Werror=maybe-uninitialized]
4615                        adjust_frame_size (f, width_change ? width : -1,
4616                                  ^
4618         * src/frame.c (x_set_frame_parameters): Drop width_changed and
4619         height_changed variables in favour of storing that information in
4620         width and height variables.
4622 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4624         Fix compiler thinking tmpdir may be unitialised in emacsclient
4626         This fixes the following warning:
4628                 emacsclient.c: In function ‘set_local_socket’:
4629                 /usr/include/x86_64-linux-gnu/bits/string3.h:111:3: error:
4630                         ‘tmpdir’ may be used uninitialized in this function
4631                         [-Werror=maybe-uninitialized]
4632                    return __builtin___stpcpy_chk (__dest, __src, __bos (__dest));
4633                    ^
4634                 emacsclient.c:1197:17: note: ‘tmpdir’ was declared here
4635                      const char *tmpdir;
4637         * lib-src/emacsclient.c (set_local_socket): Get rid of use_tmpdir
4638         variable and instead use tmpdir being non-NULL as sign that it should
4639         be used.
4641 2016-09-12  Tino Calancha  <tino.calancha@gmail.com>
4643         image-dired: Signal an error before calling a missing executable
4645         Reverts commit ca473907
4646         Add a defun to check if an executable exists, and call it
4647         on each function using an external program: when the executable
4648         is not available signal an error.
4649         See discussion on:
4650         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00135.html
4651         * lisp/image-dired.el (image-dired--check-executable-exists): New defun.
4652         Throw and error when the executable arg is missing.
4653         (image-dired-display-image, image-dired-rotate-thumbnail)
4654         (image-dired-rotate-original, image-dired-set-exif-data)
4655         (image-dired-get-exif-data):
4656         Use it.
4658 2016-09-12  Eli Zaretskii  <eliz@gnu.org>
4660         Fix daemon shutdown when emacs-kill-hooks ask questions
4662         * lisp/server.el (server-start): Put the server's kill-emacs-hook
4663         last, to allow other hooks to have a frame to interact with the
4664         user.  (Bug#24326)
4666 2016-09-12  Paul Eggert  <eggert@cs.ucla.edu>
4668         * src/casefiddle.c (casify_word): Simplify.
4670         * src/casefiddle.c (casify_word): Return Qnil.
4672 2016-09-12  Michal Nazarewicz  <mina86@mina86.com>
4674         Refactor common code in {upcase,downcase,capitalize}-word functions
4676         * src/casefiddle.c (operate_on_word): Removed in favour of…
4677         (casify_word) …new function which does what operate_on_word did plus
4678         what all of the common code from *-word functions.
4679         (upcase-word, downcase-word, capitalize-word): Move code common between
4680         those functions (pretty much the whole body of those functions) into
4681         casify_word and use that instead of now deleted operate_on_word.
4683 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4685         * doc/lispref/files.texi: Remove @vindex.
4687 2016-09-11  Paul Eggert  <eggert@cs.ucla.edu>
4689         Remove unnecessary ref to coreutils manual
4691         * doc/lispref/files.texi: Document write-region-inhibit-fsync.
4693 2016-09-11  Alan Mackenzie  <acm@muc.de>
4695         Correctly fontify C++ direct initializations with parens inside functions
4697         Or, more clearly, when something looks like a function declaration and it's
4698         inside a function, fontify it as a direct initialization.
4700         For this purpose, introduce a "brace stack" for each buffer, where an entry on
4701         the brace stack states how deeply nested a particular position is inside
4702         braces inside a "top level", which includes classes and namespaces.
4704         Also introduce a new "context", "top", with which c-font-lock-declarations
4705         signals to c-forward-decl-or-cast-1 that point is at the top level.
4707         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): add
4708         c-truncate-bs-cache.
4709         (c-flat-decl-block-kwds, c-brace-stack-thing-key, c-brace-stack-no-semi-key)
4710         (c-type-decl-operator-prefix-key): new language constants/variables.
4712         * lisp/progmodes/cc-engine.el (c-bs-interval, c-bs-cache, c-bs-cache-limit)
4713         (c-bs-prev-pos, c-bs-prev-stack): New mostly local variables for the brace
4714         stack cache.
4715         (c-init-bs-cache, c-truncate-bs-cache, c-truncate-bs-cache, c-brace-stack-at)
4716         (c-bs-at-toplevel-p): New functions which manipulate the brace stack (cache).
4717         (c-find-decl-prefix-search): Keep track of whether we're at top level.
4718         (c-find-decl-spots): New local variable cfd-top-level which records what it
4719         says.  On calling cfd-fun, pass cfd-top-level as an additional argument.
4720         (c-forward-declarator): Add new element DECORATED to the result list.  Set it
4721         to non-nil when a match for c-type-decl-operator-prefix-key is found.
4722         (c-forward-decl-or-cast-1): Handle the newly introduced context "top".
4723         Introduce "CASE 9.5", which recognizes direct initializations.
4725         * lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
4726         (c-font-lock-enum-tail, c-font-lock-cut-off-declarators)
4727         (c-font-lock-enclosing-decls, c-simple-decl-matchers, c-basic-matchers-after):
4728         Add appropriate `not-top' argument to calls to c-font-lock-declarators.
4729         (c-font-lock-declarators): Additional parameter `not-top'.  Use not-top to
4730         participate in the decision whether to fontify an identifier as a function or
4731         a variable.
4732         (c-font-lock-declarations): The internal lambda function takes an additional
4733         argument `toplev' from c-find-decl-spots, which it uses in determining the
4734         "context" of a declaration.  Add appropriate `not-top' argument to calls to
4735         c-font-lock-declarators.
4736         (c-font-lock-objc-methods): Add extra parameter to internal lambda function,
4737         like for c-font-lock-declarators.
4739         * lisp/progmodes/cc-mode.el (c-basic-common-init): Initialize the brace stack
4740         cache.
4742 2016-09-11  Eli Zaretskii  <eliz@gnu.org>
4744         Avoid signaling errors when computing "Stop" in GDB menu
4746         * lisp/progmodes/gdb-mi.el (gdb-show-stop-p): Don't assume
4747         'gdb-running-threads-count' must have a numeric value.
4748         (Bug#24414)
4750 2016-09-11  Philipp Stephani  <phst@google.com>
4752         Stop calling ‘byte-compile-log-warning’
4754         For errors, use ‘byte-compile-report-error’ instead so that the error
4755         is registered and causes compilation to fail (Bug#24359).
4757         For warnings, use ‘byte-compile-warn’ instead so that
4758         ‘byte-compile-error-on-warn’ is honored (Bug#24360).
4760         * lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
4761         (macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
4762         ‘byte-compile-log-warning’.
4764         * lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
4765         (byte-compile-setq, byte-compile-funcall): Use
4766         ‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
4767         (byte-compile-log-warning): Convert comment to documentation
4768         string.  Explain that the function shouldn’t be called directly.
4769         (byte-compile-report-error): Add optional FILL argument.
4771         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
4772         (cconv--analyze-function, cconv-analyze-form): Use
4773         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4775         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
4776         ‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.
4778         * lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
4779         of ‘byte-compile-log-warning’.
4780         (do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
4781         ‘byte-compile-log-warning’.
4783 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4785         * etc/NEWS: Remove comment lost in emacs-25 merge.
4787 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4789         Document file synchronization issues
4791         * doc/lispref/files.texi (Files and Storage): New section.
4793 2016-09-10  Paul Eggert  <eggert@cs.ucla.edu>
4795         copy-file now uses GNU/Linux file cloning
4797         From a suggestion by Kieran Colford (see Bug#23904).
4798         * configure.ac: Check for linux/fs.h.
4799         * src/fileio.c [HAVE_LINUX_FS_H]: Include sys/ioctl.h and linux/fs.h.
4800         (clone_file): New function.
4801         (Fcopy_file): Use it.
4803 2016-09-10  Alan Third  <alan@idiocy.org>
4805         Invert y coord of NS image files (bug#7847)
4807         * src/nsterm.m (ns_dumpglyphs_image): Invert y co-ordinate of the image
4808         when compositing.
4810 2016-09-10  Noam Postavsky  <npostavs@gmail.com>
4812         Don't require isearch-update before isearch-done
4814         It is useful to be able to call `isearch-done' unconditionally to
4815         ensure a non-isearching state.
4817         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
4818         is a live buffer before using it (Bug #21091).
4819         * test/lisp/isearch-tests.el (isearch--test-done): Test it.
4821 2016-09-09  Simen Heggestøyl  <simenheg@gmail.com>
4823         * lisp/emacs-lisp/ring.el: Use lexical-binding
4825         * lisp/emacs-lisp/ring.el (ring-elements): Don't use the RESULT
4826         argument of `dotimes' when the iteration variable isn't referred by
4827         it.
4828         (ring-member): Don't pass nil as the RESULT argument of `dotimes'
4829         since it's the default.
4831 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4833         Split regex character class test into smaller chunks
4835         Having one test for all character classes it is not always trivial to
4836         determine which class is failing.  This happens when failure is caused
4837         by ‘(should (equal (point) (point-max)))’ not being met.
4839         With per-character class tests, it is immidiatelly obvious which test
4840         causes issues plus tests for all classes are run even if some of them
4841         fail.
4843         * test/src/regex-tests.el (regex-character-classes): Delete and split
4844         into…
4845         (regex-tests-alnum-character-class, regex-tests-alpha-character-class,
4846         regex-tests-ascii-character-class, regex-tests-blank-character-class,
4847         regex-tests-cntrl-character-class, regex-tests-digit-character-class,
4848         regex-tests-graph-character-class, regex-tests-lower-character-class,
4849         regex-tests-multibyte-character-class,
4850         regex-tests-nonascii-character-class,
4851         regex-tests-print-character-class, regex-tests-punct-character-class,
4852         regex-tests-space-character-class,
4853         regex-tests-unibyte-character-class,
4854         regex-tests-upper-character-class, regex-tests-word-character-class,
4855         regex-tests-xdigit-character-class): …new tests.
4857 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4859         Don’t allocate char-table’s extra slots in regexp-out-charset
4861         * lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Do not use
4862         'case-table as charmap char-table’s property.  The function has nothing
4863         to do with casing and in addition using 'case-table causes unnecessary
4864         extra slots to be allocated which ‘regexp-opt-charset’ does not use.
4866 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4868         Remove dead loop iterations in regex.c
4870         RE_CHAR_TO_MULTIBYTE(c) yields c for ASCII characters and a byte8
4871         character for c ≥ 0x80.  Furthermore, CHAR_BYTE8_P(c) is true only
4872         for byte8 characters.  This means that
4874                 c = RE_CHAR_TO_MULTIBYTE (ch);
4875                 if (! CHAR_BYTE8_P (c) && re_iswctype (c, cc))
4877         is equivalent to:
4879                 c = c;
4880                 if (! false && re_iswctype (c, cc))
4882         for 0 ⪬ c < 0x80, and
4884                 c = BYTE8_TO_CHAR (c);
4885                 if (! true && re_iswctype (c, cc))
4887         for 0x80 ⪬ c < 0x100.  In other words, the loop never executes for
4888         c ≥ 0x80 and RE_CHAR_TO_MULTIBYTE call is unnecessary for c < 0x80.
4890         * src/regex.c (regex_compile): Simplyfy a for loop by eliminating
4891         dead iterations and unnecessary macro calls.
4893 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4895         Replace decimalnump with alphanumericp
4897         decimalnump was used in regex.c only in ISALNUM macro which ored it with
4898         alphabeticp.  Because both of those functions require Unicode general
4899         category lookup, this resulted in unnecessary lookups (if alphabeticp
4900         return false decimalp had to perform another lookup).  Drop decimalnump
4901         in favour of alphanumericp which combines decimelnump with alphabeticp.
4903         * src/character.c (decimalnump): Remove in favour of…
4904         (alphanumericp): …new function.
4906         * src/regex.c (ISALNUM): Use alphanumericp.
4908 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4910         Remove inaccurate comment in regex.c
4912         * src/regex.c (regex_compile): Remove comment indicating that wctype of
4913         some character classes may be negative.  All wctypes are in fact
4914         non-negative.
4916 2016-09-08  Michal Nazarewicz  <mina86@mina86.com>
4918         STRING_CHAR does not unify characters; update documentation
4920         * src/character.h (STRING_CHAR): Update doc.
4921         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update doc.  While at it, change
4922         the function to use BYTE_POS_ADDR instead of open-coding it.
4924 2016-09-08  Simen Heggestøyl  <simenheg@gmail.com>
4926         Add tests for ring.el
4928         * test/lisp/emacs-lisp/ring-tests.el: New file with tests for ring.el.
4930 2016-09-07  Martin Rudalics  <rudalics@gmx.at>
4932         New file test/src/marker-tests.el
4934 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4936         Port flexible array members to GCC + valgrind
4938         These changes are needed to conform to the C standard's rule for
4939         allocating structs containing flexible array members.  C11 says
4940         that malloc (offsetof (struct s, m) + n) does not suffice to
4941         allocate a struct with an n-byte tail; instead, malloc’s arg
4942         should be rounded up to the nearest multiple of alignof (struct s).
4943         Although this is arguably a defect in C11, gcc -O2 + valgrind
4944         sometimes complains when this rule is violated, and when debugging
4945         it’s better to keep valgrind happy.
4946         For details please see the thread containing the message at:
4947         https://gcc.gnu.org/ml/gcc-patches/2016-09/msg00416.html
4948         * lib-src/ebrowse.c, src/alloc.c, src/image.c, src/process.c:
4949         Include flexmember.h.
4950         * lib-src/ebrowse.c (add_sym, add_member, make_namespace)
4951         (register_namespace_alias):
4952         * src/alloc.c (SDATA_SIZE, allocate_string_data):
4953         * src/image.c (xpm_cache_color, imagemagick_create_cache):
4954         * src/process.c (Fmake_network_process):
4955         Use FLEXSIZEOF instead of offsetof and addition.
4956         * src/alloc.c (SDATA_SIZE, vector_alignment):
4957         Use FLEXALIGNOF instead of sizeof (ptrdiff_t).
4958         * src/lisp.h (ALIGNOF_STRUCT_LISP_VECTOR):
4959         Remove, as alloc.c can now calculate this on its own.
4961 2016-09-07  Paul Eggert  <eggert@cs.ucla.edu>
4963         Update from gnulib
4965         This incorporates:
4966         2016-09-07 flexmember: new macro FLEXALIGNOF
4967         2016-09-07 flexmember: port better to GCC + valgrind
4968         2016-08-18 Port modules to use getprogname explicitly
4969         2016-09-02 manywarnings: add -fno-common
4970         * admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
4971         since time_rz now uses part of it.  Instead, remove m4/flexmember.m4.
4972         * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
4973         since Emacs assumes C99 and therefore removes m4/flexmember.m4.
4974         * lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
4975         * m4/manywarnings.m4: Copy from gnulib.
4976         * lib/flexmember.h: New file, from gnulib.
4977         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
4979 2016-09-07  Noam Postavsky  <npostavs@gmail.com>
4981         Don't --load directories
4983         * lisp/startup.el (command-line-1): Only pass expanded FILENAME argument
4984         of --load when it refers to a normal file, since `load' doesn't handle
4985         directories (Bug #16406).
4987 2016-09-07  Peder O. Klingenberg  <peder@klingenberg.no>
4989         Avoid error in icalendar--read-element
4991         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
4992         stack overflow by not using regex to extract values from calendar
4993         events. (Bug#24315)
4995 2016-09-07  Kaushal Modi  <kaushal.modi@gmail.com>
4997         Fix back-white <-> black-white typo
4999         * lisp/ps-print.el (ps-begin-job): back-white -> black-white (Bug#24308)
5001 2016-09-07  Alan Third  <alan@idiocy.org>
5003         Fix cursor at bottom left of rectangle (bug#24364)
5005         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
5006         require rectangle--point-crutches to be set.
5008 2016-09-07  Eli Zaretskii  <eliz@gnu.org>
5010         Fix documentation of convert-standard-filename on MS-Windows
5012         * lisp/files.el (convert-standard-filename): Doc fix.  (Bug#24387)
5014         * etc/NEWS: Suggest a way for mirroring slashes where previously
5015         'convert-standard-filename' was used.
5017 2016-09-06  Paul Eggert  <eggert@cs.ucla.edu>
5019         Use DEV_TTY more consistently
5021         * src/conf_post.h (DEV_TTY): Move from here ...
5022         * src/keyboard.c, src/keyboard.h: ... to here, as it doesn’t need
5023         to be visible everywhere.  Make it a constant.
5024         * src/keyboard.c (handle_interrupt, Fset_quit_char):
5025         * src/process.c (create_process): Prefer DEV_TTY to "/dev/tty".
5027 2016-09-06  Eli Zaretskii  <eliz@gnu.org>
5029         Avoid assertion violations when using marker positions
5031         * src/intervals.c (set_point_from_marker): If MARKER comes from
5032         another buffer, recalculate its byte position before using it to
5033         set point.
5034         * src/marker.c (set_marker_internal): If POSITION is a marker from
5035         another buffer, recalculate its byte position before using it.
5036         (Bug#24368)
5038 2016-09-06  Alan Mackenzie  <acm@muc.de>
5040         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Fix coding bug
5042 2016-09-06  Alan Mackenzie  <acm@muc.de>
5044         New options for handling of literals in c-syntactic-re-search-forward
5046         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): `noerror' can
5047         be given the values `before-literal' and `after-literal', so that when a
5048         search fails, and the `bound' is inside a literal, point is left respectively
5049         before or after that literal.
5051 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5053         Avoid assertion violations when scrolling narrowed buffer
5055         * src/window.c (window_scroll_pixel_based):
5056         * src/xdisp.c (pos_visible_p): Don't allow simulated redisplay to
5057         start outside the accessible portion of the buffer.  This avoids
5058         assertion violations when some Lisp narrows the buffer to less
5059         than the current window, and then attempts to scroll the buffer.
5061 2016-09-05  Eli Zaretskii  <eliz@gnu.org>
5063         Treat SIGINT correctly in GUI sessions on MS-Windows
5065         * src/w32proc.c (sys_signal): Don't reject SIGINT, as it is
5066         supported by MS runtime.
5067         * src/term.c (DEV_TTY): Move from here ...
5068         * src/conf_post.h (DEV_TTY): ... to here.  Separate definitions
5069         for WINDOWSNT and for the rest.
5070         * src/keyboard.c (handle_interrupt_signal): Use DEV_TTY instead of
5071         a literal "/dev/tty".
5073         * etc/NEWS: Mention the behavior change.
5075 2016-09-04  Alan Third  <alan@idiocy.org>
5077         Fix synthetic bold on macOS retina displays
5079         * src/macfont.m (macfont_draw): Multiply the synthetic bold scaling
5080         factor by the OS window backing scale factor.
5082 2016-09-04  Tino Calancha  <tino.calancha@gmail.com>
5084         image-dired: Report when a necessary executable is not found
5086         See discussion on:
5087         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00552.html
5088         * lisp/image-dired.el (image-dired-cmd-rotate-original-program)
5089         (image-dired-cmd-create-thumbnail-program)
5090         (image-dired-cmd-create-temp-image-program)
5091         (image-dired-cmd-rotate-thumbnail-program)
5092         (image-dired-cmd-write-exif-data-program)
5093         (image-dired-cmd-read-exif-data-program):
5094         Use executable-find to set the default value of this option.
5095         (image-dired-cmd-rotate-original-program): Idem.
5096         Search for program 'convert' if 'jpegtran' is not available.
5097         (image-dired-cmd-rotate-original-options):
5098         Set the default value consistent with the executable in
5099         image-dired-cmd-rotate-original-program.
5100         (image-dired-create-thumb, image-dired-display-image)
5101         (image-dired-rotate-thumbnail, image-dired-rotate-original)
5102         (image-dired-set-exif-data, image-dired-get-exif-data):
5103         Throw and error when the executable used in the function is missing.
5104         (image-dired-next-line, image-dired-previous-line):
5105         Use 'forward-line'.
5107 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5109         image-type-from-file-name: Perform a case insensitive match
5111         Fix Bug#24317
5112         * lisp/image.el (image-type-from-file-name): Bind case-fold-search
5113         to a non-nil value to force a case insensitive match.
5114         * lisp/image-dired.el (image-dired-rotate-original):
5115         Use image-type (Bug#24317).
5116         (image-dired-get-exif-file-name): Idem.
5117         Set 'no-exif-data-found' and 'data' in same setq call.
5118         Use file-attribute-modification-time.
5120 2016-09-03  Tino Calancha  <tino.calancha@gmail.com>
5122         image-increase-size: Fix non-interactive calls
5124         * lisp/image.el (image-increase-size, image-decrease-size):
5125         Compute a floating point division.
5126         Problem reported in:
5127         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00067.html
5129 2016-09-03  Robert Cochran  <robert-git@cochranmail.com>
5131         Fix uses of (call-interactively) in lisp/emacs-lisp/checkdoc.el
5133         Passing the prefix argument as the 3rd argument to 'call-interactively'
5134         causes the prefix argument to be interpreted as events, which is not
5135         only wrong, but also causes a type error, as 'current-prefix-arg' can
5136         never be a vector as 'call-interactively' expects.  'call-interactively'
5137         automatically passes its prefix argument to the called function, so just
5138         do that, eliminating faulty behavior.
5140         * lisp/emacs-lisp/checkdoc.el (checkdoc-ispell):
5141         (checkdoc-ispell-current-buffer):
5142         (checkdoc-ispell-interactive):
5143         (checkdoc-ispell-message-text):
5144         (checkdoc-ispell-start):
5145         (checkdoc-ispell-continue):
5146         (checkdoc-ispell-comments):
5147         (checkdoc-ispell-defun):
5148         Do not pass 'current-prefix-arg' to 'call-interactively' as an event
5149         vector; merely allow it to propagate forward to the interactive call.
5151 2016-09-03  Richard Stallman  <rms@gnu.org>
5153         Fix mail-combine-fields
5155         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
5156         avoid losing our place in the search loop.
5158 2016-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5160         Check actual contents before promting about changed file
5162         * lisp/userlock.el (userlock--check-content-unchanged)
5163         (userlock--ask-user-about-supersession-threat): New functions.
5164         * src/filelock.c (lock_file): Use them to avoid spurious prompting.
5165         * doc/lispref/buffers.texi (Modification Time): Update doc of
5166         ask-user-about-supersession-threat.
5168 2016-09-02  Michael Albinus  <michael.albinus@gmx.de>
5170         Make a reference to fakecygpty in the Tramp manual
5172         * doc/misc/tramp.texi (Windows setup hints): Make a reference to
5173         fakecygpty on the Emacs Wiki.
5174         (Frequently Asked Questions): Fix url.
5176 2016-09-01  Paul Eggert  <eggert@cs.ucla.edu>
5178         Don’t create fd >= FD_SETSIZE
5180         This avoids a potential crash if too many subprocesses (Bug#24325).
5181         * src/process.c [HAVE_SETRLIMIT]: Include <sys/resource.h>.
5182         (init_process_emacs): If ulimit -n is greater than FD_SETSIZE,
5183         set it to FD_SETSIZE.
5185 2016-09-01  Alan Mackenzie  <acm@muc.de>
5187         Fix c-declaration-limits to return correct limits in all cases.
5189         This function is the guts of c-indent-defun and c-mark-function.
5191         In particular, when c-defun-tactic is nil, return a correct value rather than
5192         always nil, and when it's 'go-outward, go through an intricate algorithm to
5193         determine the requisite narrowing before the "top-level" defuns go to work.
5195         * lisp/progmodes/cc-cmds.el (c-narrow-to-most-enclosing-decl-block): Enhance
5196         to take additional optional parameter LEVEL, saying how many enclosing levels
5197         of decl-block to narrow to.
5198         (c-declaration-limits): Introduce algorithm to determine narrowing.  Use
5199         c-where-wrt-to-brace-block to determine whether to go back to BOD to determine
5200         lower bound.
5202 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5204         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make commentary more accurate.
5206 2016-09-01  Eli Zaretskii  <eliz@gnu.org>
5208         Avoid compiler warnings with MinGW64 GCC 6
5210         * nt/inc/ms-w32.h (execve) [MINGW_W64]: Make the prototype match
5211         the GCC 6 builtin, to avoid warnings.  For more details, see
5212         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00721.html.
5214 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5216         Fix over-substitution of quotes on error
5218         Problem reported by Tino Calancha in:
5219         https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00000.html
5220         * src/print.c (print_error_message):
5221         Substitute quotes in errmsg only when gotten from a property.
5223 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5225         Improve testing of etags
5227         * test/manual/etags/y-src/cccp.c:
5228         * test/manual/etags/y-src/parse.c: Correct #line directives to
5229         allow testing invalidate_nodes in etags.c.
5230         * test/manual/etags/ETAGS.good_1:
5231         * test/manual/etags/ETAGS.good_2:
5232         * test/manual/etags/ETAGS.good_3:
5233         * test/manual/etags/ETAGS.good_4:
5234         * test/manual/etags/ETAGS.good_5:
5235         * test/manual/etags/ETAGS.good_6:
5236         * test/manual/etags/CTAGS.good: Adapt to changes in test files.
5238 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5240         * lib-src/etags.c (invalidate_nodes): Fix another thinko.
5242 2016-08-31  Paul Eggert  <eggert@cs.ucla.edu>
5244         Fix etags problems found by static checking
5246         * lib-src/etags.c (invalidate_nodes, put_entry):
5247         Remove now-unnecessary tests for null pointers.  Simplify.
5248         (put_entries): Rewrite to avoid GCC 6.2 warning about
5249         dereferencing null pointer.
5251 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5253         Fix a thinko in etags.c
5255         * lib-src/etags.c (invalidate_nodes): Don't try to dereference
5256         a null pointer.
5258 2016-08-31  Eli Zaretskii  <eliz@gnu.org>
5260         Avoid recursive calls in etags
5262         * lib-src/etags.c (stack_entry): New struct.
5263         (push_node, pop_node, put_entry): New functions.
5264         (free_tree, add_node, invalidate_nodes, put_entries): Re-implement
5265         in a non-recursive way, to avoid stack overflow.  (Bug#5847)
5267 2016-08-31  Leo Liu  <sdl.web@gmail.com>
5269         Add 451 to url-http-codes
5271         * lisp/url/url-http.el (url-http-codes): Add 451.
5273 2016-08-30  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5275         * src/editfns.c (Fformat_message): Fix doc to match current behavior.
5277 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5279         Minor doc quoting fixes
5281         * doc/misc/htmlfontify.texi (Interactive):
5282         * lisp/htmlfontify.el (htmlfontify-buffer):
5283         Spell out character names, for clarity.  The old doc string
5284         generated the *Help* text ‘^L ([FF]) or ¤ (244)’, where ‘[FF]’
5285         stands for a form feed character; this was confusing.
5286         * lisp/electric.el (electric-quote-mode):
5287         * src/doc.c (syms_of_doc):
5288         * src/editfns.c (Fformat_message):
5289         Remove no-longer-necessary ‘\=’s in doc strings.
5291 2016-08-30  Paul Eggert  <eggert@cs.ucla.edu>
5293         Update from gnulib
5295         This incorporates:
5296         2016-08-30 intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
5297         2016-08-29 xalloc-oversized.h: port change to GCC 6.2.0
5298         2016-08-29 intprops.h: port recent changes to GCC 6.2.0
5299         2016-08-29 intprops.h: use __typeof__ with GCC 7
5300         2016-08-29 intprops.h, xalloc-oversized.h: work with gcc 7
5301         2016-08-24 intprops: fix paren typo on old platforms
5302         2016-08-24 intprops: port to OpenVMS
5303         * lib/intprops.h, lib/xalloc-oversized.h: Copy from gnulib.
5305 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5307         Fix rules for \phi and \varphi which were reversed
5309         * lisp/leim/quail/latin-ltx.el: Special-case phi/varphi because those
5310           are reversed in ucs-names.  Also remove FIXME stating sigma/varsigma
5311           were reversed which is not true (anymore?).
5313 2016-08-30  Tassilo Horn  <tsdh@gnu.org>
5315         Fix prettification of \phi, \varphi, and \varsigma
5317         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Fix
5318           prettification of \phi, \varphi, and \varsigma.
5320         Concretely, \phi's symbol was actually varphi, \varphi was missing, and
5321         \varsigma was commented out with a FIXME that it was reversed with
5322         \sigma which it was not.
5324 2016-08-30  Karl Fogel  <kfogel@red-bean.com>
5326         Use normal double quotes in TeX / LaTeX comments
5328         * lisp/textmodes/tex-mode.el (tex-insert-quote): When in a comment,
5329           default to inserting a normal double quote (") instead of TeX-style
5330           open (``) or close ('') quote marks.
5332         * etc/NEWS (TeX mode): Note the change.
5334         * test/lisp/electric-tests.el (autowrapping-7): Adjust accordingly.
5336         See this thread for discussion:
5338           https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00611.html
5339           From: Karl Fogel <kfogel {_AT_} red-bean.com>
5340           To: Emacs Development <emacs-devel {_AT_} gnu.org>
5341           Subject: [PATCH] Have LaTeX mode use normal double quotes in comments.
5342           Date: Mon, 29 Aug 2016 14:44:12 -0500
5343           Message-ID: <87twe3icmr.fsf@red-bean.com>
5345 2016-08-30  Alan Mackenzie  <acm@muc.de>
5347         Correctly analyze C++ list initialization in member init areas.
5349         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
5350         superfluous call to c-backward-syntactic-ws.
5351         (c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
5352         reports encountering the Java "new" keyword.  Add, as an alternative, a check
5353         that we can move back over member initializations, and handle this as finding
5354         a brace block.
5355         (c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
5356         new calling convention of c-looking-at-or-maybe-in-bracelist.
5357         (c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
5358         calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
5359         using the extra info from the value of that function to generate a
5360         topmost-into-cont element where needed (in Java).
5362         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
5363         calling convention of c-looking-at-or-maybe-in-bracelist.
5365         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
5366         convention of c-looking-at-or-maybe-in-bracelist.
5368 2016-08-30  Michael Albinus  <michael.albinus@gmx.de>
5370         Use `file-attribute-*' in Tramp
5372         * lisp/net/tramp-compat.el (tramp-compat-file-attribute-type)
5373         (tramp-compat-file-attribute-link-number)
5374         (tramp-compat-file-attribute-user-id)
5375         (tramp-compat-file-attribute-group-id)
5376         (tramp-compat-file-attribute-modification-time)
5377         (tramp-compat-file-attribute-size)
5378         (tramp-compat-file-attribute-modes): New defaliases.
5380         * lisp/net/tramp.el (tramp-handle-file-modes)
5381         (tramp-handle-file-newer-than-file-p)
5382         (tramp-handle-file-regular-p, tramp-handle-file-symlink-p)
5383         (tramp-handle-set-visited-file-modtime)
5384         (tramp-handle-verify-visited-file-modtime)
5385         (tramp-get-local-gid, tramp-check-cached-permissions):
5386         * lisp/net/tramp-adb.el (tramp-adb-handle-file-directory-p)
5387         (tramp-adb-handle-file-truename, tramp-adb-handle-copy-file):
5388         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
5389         (tramp-gvfs-handle-file-directory-p)
5390         (tramp-gvfs-handle-write-region, tramp-gvfs-get-remote-uid)
5391         (tramp-gvfs-get-remote-gid):
5392         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
5393         (tramp-sh-handle-set-visited-file-modtime)
5394         (tramp-sh-handle-verify-visited-file-modtime)
5395         (tramp-sh-handle-file-newer-than-file-p)
5396         (tramp-sh-handle-file-ownership-preserved-p)
5397         (tramp-do-copy-or-rename-file)
5398         (tramp-do-copy-or-rename-file-via-buffer)
5399         (tramp-do-copy-or-rename-file-directly)
5400         (tramp-do-copy-or-rename-file-out-of-band)
5401         (tramp-sh-handle-file-local-copy)
5402         (tramp-sh-handle-write-region):
5403         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
5404         (tramp-smb-handle-copy-file)
5405         (tramp-smb-handle-file-directory-p)
5406         (tramp-smb-handle-file-writable-p)
5407         (tramp-smb-handle-insert-directory): Use them.
5409 2016-08-30  Martin Rudalics  <rudalics@gmx.at>
5411         In `pop-to-buffer' handle case where `display-buffer' fails (Bug#24332)
5413         * lisp/window.el (pop-to-buffer): Don't assume that
5414         `display-buffer' has supplied a window (Bug#24332).
5415         Rename BUFFER argument to BUFFER-OR-NAME.
5416         * doc/lispref/windows.texi (Switching Buffers): Fix
5417         `pop-to-buffer' documentation.
5419 2016-08-29  Alan Third  <alan@idiocy.org>
5421         Clarify docstrings
5423         * src/nsterm.m: Clarified that ns-x-modifier variables require a symbol.
5425 2016-08-29  Michael Albinus  <michael.albinus@gmx.de>
5427         Use `process-live-p' in Tramp
5429         * lisp/net/tramp-compat.el (tramp-compat-process-live-p): New defun.
5431         * lisp/net/tramp.el (tramp-connectable-p, tramp-handle-file-remote-p)
5432         (tramp-handle-file-notify-valid-p)
5433         (tramp-action-process-alive, tramp-action-out-of-band)
5434         (tramp-wait-for-regexp):
5435         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
5436         (tramp-adb-maybe-open-connection):
5437         * lisp/net/tramp-cache.el (tramp-get-connection-property):
5438         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
5439         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
5440         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
5441         * lisp/net/tramp-sh.el (tramp-process-sentinel)
5442         (tramp-sh-handle-file-notify-add-watch)
5443         (tramp-maybe-open-connection):
5444         * lisp/net/tramp-smb.el (tramp-smb-action-with-tar)
5445         (tramp-smb-handle-copy-directory, tramp-smb-action-get-acl)
5446         (tramp-smb-handle-process-file, tramp-smb-action-set-acl)
5447         (tramp-smb-get-cifs-capabilities)
5448         (tramp-smb-get-stat-capability)
5449         (tramp-smb-maybe-open-connection, tramp-smb-wait-for-output)
5450         (tramp-smb-kill-winexe-function): Use it.
5452 2016-08-29  Eli Zaretskii  <eliz@gnu.org>
5454         Avoid crashes for invalid value of key modifiers
5456         * src/keyboard.c (parse_solitary_modifier): If the argument SYMBOL
5457         is not a symbol, don't try to recognize it.  See
5458         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00502.html
5459         for the details.
5461         * test/src/keymap-tests.el (keymap-where-is-internal-test): New
5462         test, for testing the above fix.
5464 2016-08-29  Oleh Krehel  <ohwoeowho@gmail.com>
5466         Make dired-do-compress understand files with spaces in them
5468         * lisp/dired-aux.el (dired-compress-file): Add `shell-quote-argument'
5469           and `literal' flag to `replace-regexp-in-string'.
5471 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5473         * INSTALL.REPO: Suggest Texinfo 4.13 or later.
5475 2016-08-28  Simen Heggestøyl  <simenheg@gmail.com>
5477         Add tests for dom.el
5479         * test/lisp/dom-tests.el: New file with tests for dom.el.
5481 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5483         Memory allocator alignment fixes
5485         These changes remove some assumptions about heap allocator
5486         alignment that may not be true on unusual platforms.
5487         * src/alloc.c (POWER_OF_2): New macro.
5488         (ROUNDUP): Use it.
5489         (BLOCK_ALIGN): Verify that it is a power of 2.
5490         (aligned_alloc): Check that alignment passed to posix_memalign
5491         satisfies POSIX restrictions.
5492         (lisp_align_malloc): Check that size passed to aligned_alloc
5493         satisfies C11 restrictions.
5494         (MALLOC_IS_GC_ALIGNED): Check that GCALIGNMENT is 8, since the
5495         code has not been verified to work with other GCALIGNMENT values
5496         and the ice is thin here.  On GNU/Linux, malloc can return a value
5497         that is a multiple of 8 but not 16, even though __alignof__
5498         (max_align_t) is 16.  See:
5499         https://gcc.gnu.org/ml/gcc-patches/2016-08/msg01902.html
5500         (lmalloc) [USE_ALIGNED_ALLOC]: Use aligned_alloc only if size
5501         is a multiple of alignment, since C11 says the behavior is
5502         undefined otherwise.
5503         (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on size_t, as in
5504         general this macro is restricted to signed types.  Remove
5505         assertion that the result is a multiple of GCALIGNMENT, as that
5506         need not be true.
5508 2016-08-28  Paul Eggert  <eggert@cs.ucla.edu>
5510         Pacify --enable-gcc-warnings for lib-src/pop.c
5512         * lib-src/pop.c: Include c-ctype.h.
5513         (socket_connection): Pacify --enable-gcc-warnings by rewriting to
5514         avoid 'if (v = E) ...'.  Use c_tolower, instead of a combination
5515         of the (undeclared) isupper and tolower.  Fix pointer constness
5516         problem.
5518 2016-08-27  Alan Mackenzie  <acm@muc.de>
5520         Handle the C++ "identifiers" "final" and "override" correctly.
5522         This fixes bug #24319, allowing destructors affixed with these identifiers to
5523         be correctly fontified.
5525         * lisp/progmodes/cc-engine.el (c-forward-type, c-forward-decl-or-cast-1):
5526         After reaching the "end" of a type expression, skip over any occurrences of
5527         c-type-decl-suffix-ws-ids-key.
5529         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "override" and
5530         "final" from the C++ value.
5531         (c-type-decl-suffix-ws-ids-kwds, c-type-decl-suffix-ws-ids-key): New lang
5532         constants/variables for "final" and "override".
5534 2016-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
5536         * lisp/textmodes/page-ext.el (pages-directory-mode): Use special-mode.
5538 2016-08-27  Alan Mackenzie  <acm@muc.de>
5540         Handle template delimiters in C++ member init constructs.
5542         * lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Add
5543         handling for "<....>"s.
5545 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
5547         Fix etags test suite messed up by merges from emacs-25
5549         * test/manual/etags/go-src/test.go:
5550         * test/manual/etags/go-src/test1.go: Move from test/etags/.
5551         * test/manual/etags/ruby-src/test1.ru: Replace test1.ruby.
5552         * test/etags/: Directory deleted.
5554 2016-08-26  Simen Heggestøyl  <simenheg@gmail.com>
5556         Add "supports" to list of CSS at-rules
5558         * lisp/textmodes/css-mode.el (css-at-ids): Add "supports" at-rule.
5560 2016-08-26  Michael Albinus  <michael.albinus@gmx.de>
5562         * lisp/net/tramp-sh.el (tramp-get-remote-perl): Perform a basic check.
5564         (Bug#22478)
5566 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5568         Rename option to shell-command-dont-erase-buffer
5570         Suggested by Clément Pit--Claudel in:
5571         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00487.html
5572         * lisp/simple.el (shell-command-dont-erase-buffer):
5573         (shell-command--save-pos-or-erase):
5574         (shell-command--set-point-after-cmd):
5575         (shell-command-on-region):
5576         * doc/emacs/misc.texi (shell-command-dont-erase-buffer):
5577         * etc/NEWS (Changes in Emacs 25.2):
5578         Rename from shell-command-not-erase-buffer.
5580 2016-08-25  Alan Mackenzie  <acm@muc.de>
5582         Fix an infinite loop in C++ Mode when we have "{ .... [ .... }"
5584         * lisp/progmodes/cc-fonts.el (c-font-lock-c++-lambda-captures): In the inner
5585         `while' form's condition, check for "\\s)" rather than merely "\\]", so that
5586         the loop won't hang at a "terminating" paren of a different type (due to the
5587         c-syntactic-re-search-forward at the end of the loop stopping at such
5588         characters).
5590 2016-08-25  Tino Calancha  <tino.calancha@gmail.com>
5592         call-shell-region: New defun
5594         Suggested by Stefan Monnier in Bug#22679.
5595         * lisp/subr.el (call-shell-region): New defun; execute a command
5596         in an inferior shell with the buffer region as input.
5597         * lisp/simple.el (shell-command-on-region): Use it.
5598         * lisp/gnus/message.el (message-do-fcc): Idem.
5599         * doc/lispref/processes.texi: Document call-shell-region in the manual.
5600         ;* etc/NEWS: Add entry for this new function.
5602 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5604         In ‘clone-indirect-buffer’ fix argument mixup (Bug#24306)
5606         * lisp/simple.el (clone-indirect-buffer): Add value for ACTION
5607         argument in `pop-to-buffer' call (Bug#24306).
5609 2016-08-25  Martin Rudalics  <rudalics@gmx.at>
5611         Some fixes around `delete-other-frames' and `next-frame'
5613         * src/frame.c (Fdelete_frame): Clarify doc-string.
5614         * lisp/frame.el (delete-other-frames): Delete other frames on
5615         FRAME's terminal instead of the current terminal.  Delete
5616         non-minibuffer-only surrogate frames too.  See
5617         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00467.html
5618         * doc/lispref/frames.texi (Deleting Frames): Minor fixes for
5619         docs of `delete-frame' and `frame-live-p'.  Add entry for
5620         `delete-other-frames'.
5621         (Finding All Frames): Fix doc of `next-frame'.
5623 2016-08-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5625         Find message.el thumbnail toggling
5627         * lisp/gnus/message.el (message-toggle-image-thumbnails):
5628         Don't infloop when toggling thumbnails.
5630 2016-08-24  Alan Third  <alan@idiocy.org>
5632         Fix macOS 12 deprecation notices
5634         * src/nsterm.h: Add #defines to allow older versions of macOS to use the
5635         new constant names.
5636         * src/nsmenu.m: Replace old constant names with
5637         new.
5638         (fillWithWidgetValue): Remove calls to deprecated
5639         setMenuChangedMessagesEnabled.
5640         * src/nsterm.m: Replace old constant names with new.
5641         * src/nsfns.m: Replace old constant names with new.
5643 2016-08-23  Alan Mackenzie  <acm@muc.de>
5645         Analyze and fontify correctly a C++ `enum' with colon, but lacking a tag.
5647         * lisp/progmodes/cc-engine.el (c-backward-typed-enum-colon): Check for "enum"
5648         directly preceding the colon, and handle it.
5650 2016-08-23  Noah Friedman  <friedman@splode.com>
5652         * src/xfns.c (Fx_change_window_property): Modify previous change.
5653         Instead of forcing format to 8 for strings, check that the length of
5654         the string is appropriate for whatever format given.
5655         (Fx_window_property_attributes): If prop isn't found on frame's inner window,
5656         try its outer window.  This mimics the behavior of Fx_window_property.
5658 2016-08-23  Lars Ingebrigtsen  <larsi@gnus.org>
5660         Fix invalid image rotations
5662         * lisp/image.el (image-rotate): Limit rotation to 360 degrees.
5664 2016-08-23  Tino Calancha  <tino.calancha@gmail.com>
5666         call-process instead of call-process-region with empty region
5668         * lisp/calc/calc-graph.el (calc-graph-show-tty):
5669         Use call-process and shell-command-switch.
5671 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5673         Merge from origin/emacs-25
5675         927afa1 ; Update ChangeLog.2 and ldef-boot.el for Emacs 25.1 RC2
5676         6bf83b5 * etc/AUTHORS: Update the AUTHORS file
5677         73cbb81 ; ChangeLog spelling fixes
5678         9b99772 Some assorted documentation clarifications
5679         37d4723 Improve commentary in src/character.h
5680         5ccd593 ; Fix typo in /etc/NEWS
5681         96e3d16 * etc/NEWS: Mention the change in json-encode-string.
5682         2e524034 ; * etc/NEWS: Mention incompatible change in url-http-create...
5683         2e4e74e Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
5684         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5686         # Conflicts:
5687         #       ChangeLog.2
5688         #       lisp/ldefs-boot.el
5690 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5692         Merge from origin/emacs-25
5694         66dea65 ; * doc/lispref/windows.texi (Window Parameters): Grammar twe...
5696 2016-08-22  Paul Eggert  <eggert@cs.ucla.edu>
5698         Merge from origin/emacs-25
5700         8c2946e In NEWS describe new handling of window margins (Bug#24193)
5701         0cee66c Facultatively ignore margins when splitting and resizing wind...
5702         8d68147 Document CATEGORY arg to modify-category-entry
5703         8342e74 Document char-script-table's effect on word motion
5704         e9ff485 Further fix for 'url-http-create-request' and multibyte strings
5705         0695235 Fix docstring of eval-expression
5706         98b01dd Clarify when 'cursor' property is in effect
5707         75f1882 Convert the remaining strings to unibyte before concatenating
5708         d2db5dd Fix bug with handling the bidi cache
5709         ccd0e92 * doc/lispref/text.texi (Change Hooks): Minor copyedits.
5710         f785ff4 Clarify documentation of before/after-change-functions
5711         3c9cb57 Document use of vectors in keymaps
5713         # Conflicts:
5714         #       src/xdisp.c
5716 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5718         Handle remote file names in gdb-mi.el
5720         * lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer):
5721         If `default-directory' is remote, full file names are adapted
5722         accordingly.  (Bug#23608)
5724 2016-08-22  Eli Zaretskii  <eliz@gnu.org>
5726         Display mini-window resized even when there are several frames
5728         * src/xdisp.c (x_consider_frame_title): Bind inhibit-redisplay to
5729         t to avoid resizing back the mini-window as result of considering
5730         the title of other frames.  (Bug#24285)
5731         (redisplay_window): No need to bind inhibit-redisplay here.
5733 2016-08-22  Michael Albinus  <michael.albinus@gmx.de>
5735         Explain gdb warning on remote hosts
5737         * doc/misc/tramp.texi (Remote processes): Explain gdb warning
5738         on remote hosts.  (Bug#4604, Bug#6360, Bug#622569)
5740 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5742         Fix (next-frame nil t) crash (Bug#24281)
5744         * src/frame.c (candidate_frame): Check minibuf argument before
5745         comparing it to zero (Bug#24281).
5747 2016-08-21  Noah Friedman  <friedman@splode.com>
5749         Fix interpretation of signed vs unsigned values when retrieving X
5750         Window properties, and make sure the full value is returned when not
5751         parsed.
5753         New subr to export type and format information about X Window
5754         properties to lisp.
5756         * src/xselect.c (selection_data_to_lisp_data): Treat any data as
5757         unsigned unless its actual type is INTEGER.
5758         CARDINALs, in particular, are unsigned.
5760         * src/xfns.c (Fx_change_window_property): If value is a string, ignore
5761         any provided format and force to 8.
5762         (x_window_property_intern): If returning value as a string, the length
5763         is actual_size times the actual format of each element, which is not
5764         necessarily bytes.
5765         (Fx_window_property_attributes): New subr.
5766         (syms_of_xfns): Declare it.
5768 2016-08-21  Noam Postavsky  <npostavs@gmail.com>
5770         Improve error when installing non-package dirs
5772         * lisp/emacs-lisp/package.el (package-dir-info): Throw meaningful error
5773         when no file with package info is found (Bug #19851).
5775 2016-08-21  Alan Mackenzie  <acm@muc.de>
5777         Adapt CC Mode for C++11 uniform initialization.
5779         For fontification, introduce a new "context", 'non-decl, to be used for
5780         brace
5781         lists; also a new value for the property 'c-type, called 'c-not-decl.
5783         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): Check that
5784         an ostensible symbol we're going to move over isn't a keyword.
5785         (c-forward-decl-or-cast-1): CASE 1: Where we have two consecutive identifiers
5786         (hence a declaration), and an unmatched open paren, perform
5787         c-fdoc-shift-type-backwards to recognize the partial construct correctly.
5788         Whilst checking a type decl expression, check for and handle C++11's "copy
5789         initialization", where we have <type>(<constant>).  Recognize
5790         <id><id>(... (where the paren is unclosed) as a declaration.
5791         (c-looking-at-or-maybe-in-bracelist): New function, extracted from
5792         c-inside-bracelist-p.  Recognize as bracelists "{"s which are preceded by
5793         valid tokens other than "=".  Recognize a bracelist when preceded by a
5794         template declaration.
5795         (c-inside-bracelist-p): Call c-looking-at-or-maybe-in-bracelist in place of
5796         much inline code.
5797         (c-looking-at-inexpr-block): Amend so that it won't wrongly recognise an
5798         initialization starting "({" as an in-expression block, by checking for
5799         semicolons, as opposed to commas, separating elements inside it.
5800         (c-guess-continued-construct): (CASE B-2): Recognize a brace-list-open by
5801         calling c-looking-at-or-maybe-in-bracelist rather than checking for a
5802         preceding "=".  (CASE B-5): New code to recognize new construct "return {
5803         ...}".
5804         (c-guess-basic-syntax): (CASE 5A.3): Additionally recognize a "{" preceded by
5805         "return", or "{" preceded by <type><identifier> as a bracelist.
5807         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize brace
5808         lists, giving them `context' 'non-decl.  Pass over elements of one by regexp
5809         search for "," rather than calling c-forward-decl-or-cast-1.
5811         * lisp/progmodes/cc-langs.el (c-return-kwds, c-return-key): New lang
5812         constants/variables to recognize "return".
5813         (c-pre-id-bracelist-key): New lang constant/variable to recognize tokens
5814         which, when preceding an identifier followed by a brace, signify the brace as
5815         a bracelist.
5817         * lisp/progmodes/cc-mode.el (c-fl-decl-start): When searching outwards for
5818         the start of a "local" declaration, move out from an enclosing brace when
5819         that is the start of a brace list.
5821 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5823         Update from gnulib
5825         This incorporates:
5826         2016-08-17 maint: preprocessor changes to support z/OS
5827         2016-08-17 string: rename to avoid '__string'
5828         * doc/misc/texinfo.tex, lib/alloca.in.h, lib/string.in.h:
5829         Copy from gnulib.
5831 2016-08-21  Paul Eggert  <eggert@cs.ucla.edu>
5833         Minor text-quoting-style fixes
5835         * src/charset.c (check_iso_charset_parameter):
5836         * src/frame.c (store_frame_param):
5837         * src/xselect.c (x_fill_property_data):
5838         Use grave accent for left single quote in ‘error’ format strings.
5840 2016-08-21  Martin Rudalics  <rudalics@gmx.at>
5842         Fix semantics of 'minibuffer' frame parameter
5844         The 'minibuffer' frame parameter is now t for a normal frame
5845         (a frame with a root window plus a minibuffer window) and the
5846         frame's minibuffer window for a minibuffer-less frame (a frame
5847         whose minibuffer window is on another frame).  See also:
5848         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01259.html
5850         * src/frame.c (make_frame, make_frame_without_minibuffer)
5851         (make_minibuffer_frame): When assigning the frame's minibuffer
5852         window also store corresponding 'minibuffer' frame parameter.
5853         (store_frame_param): Move the 'minibuffer' parameter checks to
5854         the beginning so we can silently override the value before it
5855         gets stored in the parameter alist.  Fix error handling.
5856         (Fframe_parameters): Return value of 'minibuffer' parameter
5857         unmodified.
5859         * lisp/frameset.el (frameset-filter-minibuffer): When the cdr of
5860         the parameter is a minibuffer window, save (minibuffer . nil)
5861         instead of (minibuffer . t).
5862         (frameset--reuse-frame): To find a non-minibuffer-only frame
5863         look out for a frame whose 'minibuffer' parameter is t instead
5864         of that frame's minibuffer window.
5865         (frameset-minibufferless-first-p): To find a minibuffer-less
5866         frame look out for a frame whose 'minibuffer' parameter is a
5867         window instead of nil.
5869 2016-08-20  Alan Mackenzie  <acm@muc.de>
5871         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Resolve overelaborate "nil"
5873 2016-08-20  Alan Mackenzie  <acm@muc.de>
5875         In c-\(go-\)?-\(up-\|down-\)?list-\(forward\|backward\) check limit isn't nil
5877         Check the limit both at macro expansion time (for a hard coded nil) and at run
5878         time in the generated code.  Tidy up these macros generally.
5880         * lisp/progmodes/cc-defs.el (c-safe-scan-lists): Check `limit' is present and
5881         not identically nil before generating a narrow-to-region call.  Generate code
5882         to check `limit' is not nil at run time.
5883         (c-go-list-forward, c-go-list-backward): Remove the generation of redundant
5884         narrow-to-region, instead calling c-safe-scan-lists directly.
5885         (c-go-up-list-forward, c-go-up-list-backward, c-go-down-list-forward)
5886         (c-go-down-list-backward): Invoke the corresponding macros without the "go-"
5887         to determine the destination position instead of generating a redundant
5888         narrow-to-region.
5890 2016-08-19  Robert Cochran  <robert-git@cochranmail.com>
5892         * lisp/emacs-lisp/map.el (map--dispatch): Fix docstring
5894         The docstring referenced a non-existant parameter, as well as a
5895         parameter that has been renamed since the docstring was written. Fix
5896         both errors, fixing (Bug#24182).
5898 2016-08-19  Alan Mackenzie  <acm@muc.de>
5900         Amend hack-local-variables-prop-line not always to return any mode on line 1.
5902         This fixes bug #24266.
5904         * lisp/files.el (hack-local-variables-prop-line): Change the name of the
5905         parameter mode-only to handle-mode.  Change its meaning, such that it being
5906         set to a value non-nil and not t removes any mode parameter from the result
5907         list.  Leave its values nil and t with the same meanings they had.
5908         (hack-local-variables): Call hack-local-variables-prop-line appropriately.
5910 2016-08-19  Daiki Ueno  <ueno@gnu.org>
5912         Improve doc string of epg-*-program
5914         * lisp/epg-config.el (epg-gpg-program, epg-gpgsm-program):
5915         Suggest to use Customize when setting.  (Bug#24229)
5917 2016-08-19  Tino Calancha  <tino.calancha@gmail.com>
5919         Add tests for Bug#24264
5921         * test/lisp/emacs-lisp/cl-seq-tests.el (cl-seq-test-bug24264):
5922         Add test for Bug#24264.
5923         (cl-seq-fill-test, cl-seq-replace-test)
5924         (cl-seq-remove-test ,cl-seq-delete-test)
5925         (cl-seq-remove-duplicates-test, cl-seq-substitute-test)
5926         (cl-seq-nsubstitute-test, cl-seq-position-test)
5927         (cl-seq-count-test, cl-seq-mismatch-test)
5928         (cl-seq-search-test, cl-seq-test-bug24264):
5929         Add tests for all functions in the file; test all keywords.
5931 2016-08-18  Johan Bockgård  <bojohan@gnu.org>
5933         Fix bug in --eval reply message from server
5935         * lisp/server.el (server-reply-print): Fix check for truncated quote
5936         sequence at end of message. Problem reported in:
5937         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00101.html
5939 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
5941         Add tests for 'substitute-command-keys'
5943         * test/src/doc-tests.el (doc-test-substitute-command-keys): New
5944         tests.
5946 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5948         lisp/textmodes/table.el (table-generate-source): Fix completing-read call
5950         Doesn't make sense to pass '(("html") ("latex") ("cals")) to
5951         `completing-read'.
5953 2016-08-18  Oleh Krehel  <ohwoeowho@gmail.com>
5955         lisp/dired-aux.el (dired-compress-file-suffixes): Add entry for tgz
5957         The previous behavior resulted in a "tgz" -> "tar" -> "tgz" loop,
5958         without any files being extracted.
5960 2016-08-18  Andreas Politz  <politza@hochschule-trier.de>
5962         Don't let window start override window point in `window-state-put' (Bug#24240)
5964         * lisp/window.el (window--state-put-2): Set 'noforce argument
5965         when restoring a window's start position.  This avoids that the
5966         effect of `set-window-point' gets overidden by that of
5967         `set-window-start' (Bug#24240).
5969 2016-08-17  Alan Mackenzie  <acm@muc.de>
5971         Fontify constructs following "::" in C++ argument lists correctly - part 2.
5973         This fixes bug #24246.
5975         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): Put a
5976         `save-match-data' around the new `looking-at' introduced by the previous CC
5977         Mode patch this evening.
5979 2016-08-17  Alan Mackenzie  <acm@muc.de>
5981         Fontify constructs following "::" in C++ argument lists correctly.
5983         This fixes bug #24246.
5985         * lisp/progmodes/cc-engine.el (c-find-decl-prefix-search): In the "pseudo
5986         match" loop, test a found string for a match with c-opt-identifier-concat-key
5987         (e.g. with "::").
5989 2016-08-17  Paul Eggert  <eggert@cs.ucla.edu>
5991         * src/doc.c (Fsubstitute_command_keys): Clarify GC comments.
5993 2016-08-17  K. Handa  <handa@gnu.org>
5995         Fix hz encoding and decoding (bug#23814)
5997         * lisp/language/china-util.el (decode-hz-region): Pay
5998         attention to "~~}" sequence at the end of Chinese character
5999         range.
6000         (hz-category-table): New variable.
6001         (encode-hz-region): Convert non-encodable characters to
6002         \u... and \U...  Preserve ESC on ecoding.  Put
6003         `chinese-gb2312' `charset' text property in advance to force
6004         iso-2022-encoding to select chinese-gb2312 designation.
6006 2016-08-17  Tino Calancha  <tino.calancha@gmail.com>
6008         file-attribute-collect: New defun
6010         * lisp/files.el (file-attribute-collect):
6011         Return a sublist of the attributes returned by 'file-attributes'.
6012         Suggested by Ted Zlatanov in:
6014         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg01195.html
6016 2016-08-17  Michael Albinus  <michael.albinus@gmx.de>
6018         Fix Bug#24203
6020         * lisp/comint.el (comint-password-prompt-regexp): Relax regexp.  (Bug#24203)
6022 2016-08-16  Karl Fogel  <kfogel@red-bean.com>
6024         Improve doc string.
6026         * src/fileio.c (Ffile_name_as_directory): Be precise about the
6027         conditions under which a slash is appended.
6029 2016-08-16  Paul Eggert  <eggert@cs.ucla.edu>
6031         Omit substitute-command-keys code no longer needed
6033         * src/doc.c (Fsubstitute_command_keys):
6034         Remove duplicate initializations.
6036 2016-08-16  Tino Calancha  <tino.calancha@gmail.com>
6038         Allow not erase output buffer in shell commands
6040         * lisp/simple.el (shell-command-not-erase-buffer): New option to allow
6041         not erasing the output buffer between shell commands.  Defaults to nil.
6042         (shell-command-on-region): Use it.
6043         (shell-command--save-pos-or-erase): New defun; store a buffer position
6044         if 'shell-command-not-erase-buffer' is non-nil; otherwise
6045         erase the output buffer of the shell command.
6046         (shell-command, shell-command-on-region): Use it.
6047         (shell-command--set-point-after-cmd): New defun;
6048         if 'shell-command-not-erase-buffer' is non-nil, set point
6049         in the output buffer to the position in 'shell-command-saved-pos'.
6050         (shell-command-sentinel, shell-command-on-region): Use it.
6051         * doc/emacs/misc.texi (shell-command-not-erase-buffer):
6052         Document this feature in the manual.
6053         See discussion on:
6054         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00610.html
6056 2016-08-16  Michael Albinus  <michael.albinus@gmx.de>
6058         Rearrange Tramp manual title page
6060         * doc/misc/tramp.texi: Move @insertcopying out of the title
6061         page.  Do not use @ifnottex anymore.
6063 2016-08-15  Glenn Morris  <rgm@gnu.org>
6065         * doc/misc/tramp.texi: Adapt 2016-08-14 change for makeinfo 4.
6067 2016-08-15  Alan Mackenzie  <acm@muc.de>
6069         Fix minor bug in c-syntactic-re-search-forward.
6071         Bug was: when NOERROR is neither nil nor t, BOUND is non-nil, PAREN-LEVEL is
6072         non-nil, and the first internal search attempt fails, point wrongly ends up at
6073         BOUND, rather than just before the next closing paren.
6075         * lisp/progmodes/cc-engine.el (c-syntactic-re-search-forward): Guard against
6076         the above situation.
6078 2016-08-15  Alan Mackenzie  <acm@muc.de>
6080         Handle C++11 lambda functions.
6082         * lisp/progmodes/cc-engine.el (c-looking-at-inexpr-block): Enhance also to
6083         handle C++ lambda functions.
6084         (c-looking-at-c++-lambda-capture-list): New function.
6086         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Recognize the
6087         parameter list of a lambda function and set `context' and
6088         `c-restricted-<>-arglists' suitably for it.
6089         (c-font-lock-c++-lambda-captures): New function.
6090         (c-complex-decl-matchers): Insert c-font-lock-c++-lambda-captures into it.
6092         * lisp/progmodes/cc-langs.el (c-pre-lambda-tokens, c-pre-lambda-tokens-re):
6093         New language constants/variables.
6094         (c-paren-nontype-kwds): Include "noexcept" in the C++ value.
6096         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Handle being in a C++ lambda
6097         function capture list.
6099 2016-08-15  Michael Albinus  <michael.albinus@gmx.de>
6101         Fix stale cache problem in Tramp
6103         * lisp/net/tramp-cache.el (tramp-get-connection-property):
6104         Check, that a process as key is still running.  (Bug#22478)
6106 2016-08-14  Paul Eggert  <eggert@cs.ucla.edu>
6108         * doc/misc/tramp.texi (Configuration): Fix @xref typo.
6110 2016-08-14  Eli Zaretskii  <eliz@gnu.org>
6112         Another fix for scroll-conservatively and overlay strings
6114         * src/xdisp.c (redisplay_window): Handle also the case where the
6115         calculated window-start point has an overlay string touching it.
6116         (Bug#24179)
6118 2016-08-14  Michael Albinus  <michael.albinus@gmx.de>
6120         Improve handling of defcustoms in tramp
6122         * doc/misc/tramp.texi: Protect all multi-line examples by
6123         @group ... @end group.  Use proper `custom-set-variables'
6124         examples.  Use consequently @option for user options.  Remove
6125         superfluous @cindex and @vindex entries.
6126         (Top): Remove reference to outdated mail archives.
6127         (Configuration): Tune references.
6128         (Default Method): Make `tramp-default-method' and
6129         `tramp-default-method-alist' a @defopt.
6130         (Default User): Make `tramp-default-user' and
6131         `tramp-default-user-alist' a @defopt.
6132         (Default Host): Make `tramp-default-host' and
6133         `tramp-default-host-alist' a @defopt.
6135         * lisp/net/tramp.el (tramp-mode, tramp-verbose)
6136         (tramp-backup-directory-alist, tramp-auto-save-directory)
6137         (tramp-encoding-shell, tramp-encoding-command-switch)
6138         (tramp-encoding-command-interactive, tramp-default-method)
6139         (tramp-default-method-alist, tramp-default-user)
6140         (tramp-default-user-alist, tramp-default-host)
6141         (tramp-default-host-alist, tramp-default-proxies-alist)
6142         (tramp-save-ad-hoc-proxies)
6143         (tramp-restricted-shell-hosts-alist)
6144         (tramp-local-end-of-line, tramp-rsh-end-of-line)
6145         (tramp-login-prompt-regexp, tramp-shell-prompt-pattern)
6146         (tramp-password-prompt-regexp, tramp-wrong-passwd-regexp)
6147         (tramp-yesno-prompt-regexp, tramp-yn-prompt-regexp)
6148         (tramp-terminal-prompt-regexp)
6149         (tramp-operation-not-permitted-regexp)
6150         (tramp-copy-failed-regexp, tramp-process-alive-regexp)
6151         (tramp-syntax, tramp-chunksize)
6152         (tramp-process-connection-type, tramp-connection-timeout)
6153         (tramp-connection-min-time-diff)
6154         (tramp-completion-reread-directory-timeout):
6155         * lisp/net/tramp-adb.el (tramp-adb-program)
6156         (tramp-adb-connect-if-not-connected, tramp-adb-prompt):
6157         * lisp/net/tramp-cache.el (tramp-connection-properties)
6158         (tramp-persistency-file-name):
6159         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods)
6160         (tramp-gvfs-zeroconf-domain)
6161         (tramp-bluez-discover-devices-timeout):
6162         * lisp/net/tramp-sh.el (tramp-inline-compress-start-size)
6163         (tramp-copy-size-limit, tramp-terminal-type)
6164         (tramp-histfile-override)
6165         (tramp-use-ssh-controlmaster-options, tramp-remote-path)
6166         (tramp-remote-process-environment, tramp-sh-extra-args):
6167         * lisp/net/tramp-smb.el (tramp-smb-program, tramp-smb-acl-program)
6168         (tramp-smb-conf, tramp-smb-winexe-program)
6169         (tramp-smb-winexe-shell-command)
6170         (tramp-smb-winexe-shell-command-switch): Add :require 'tramp.
6172 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6174         Minor text-quoting-style fixes
6176         * lisp/cus-edit.el (custom-buffer-create-internal):
6177         * lisp/recentf.el (recentf-edit-list):
6178         Follow text-quoting-style preference when quoting in UI strings.
6179         * src/doc.c (Fsubstitute_command_keys): Don’t say that curved
6180         quotes are substituted for, as this is no longer true.
6182 2016-08-13  Paul Eggert  <eggert@cs.ucla.edu>
6184         Fix substitute-command-keys unibyte, alloc bugs
6186         * src/doc.c (Fsubstitute_command_keys): Fix some problems with
6187         unibyte strings and with buffer allocation.  Make strings
6188         multibyte, to avoid problems with unibyte strings that are not
6189         valid UTF-8 (Bug#24206).  Redo buffer allocation so that it is
6190         O(N), not O(N**2).  Avoid going past the end of the input string
6191         when given invalid input.  Avoid some unlikely problems in
6192         accessing the wrong storage after a GC.
6194 2016-08-13  Joakim Jalap  <joakim.jalap@fastmail.com>
6196         Fix "C-u" when an input method is active
6198         * lisp/international/quail.el (quail-input-method): Defer to the
6199         input method iff 'overriding-terminal-local-map' is
6200         'universal-argument-map' and the given key has no binding there.
6201         (Bug#22958)
6203 2016-08-13  Martin Rudalics  <rudalics@gmx.at>
6205         Fix docs on `display-buffer-below-selected' (Bug#24213)
6207         * lisp/window.el (display-buffer-below-selected): Fix
6208         doc-string (Bug#24213).
6209         * doc/lispref/windows.texi (Display Action Functions): Fix
6210         documentation of `display-buffer-below-selected'.
6212 2016-08-12  Tino Calancha  <tino.calancha@gmail.com>
6214         cl-fill: Rename arguments to cl-seq and cl-item
6216         * lisp/emacs-lisp/cl-seq.el (cl-fill):
6217         Rename arguments to 'cl-seq' and 'cl-item' as elsewhere.
6219 2016-08-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6221         Fix display.texi typo
6223         * doc/lispref/display.texi (Faces): Fix typo.
6225 2016-08-11  Paul Eggert  <eggert@cs.ucla.edu>
6227         Fix process leak with make-network-process
6229         This problem was introduced by the recent async changes (Bug#23808).
6230         * src/process.c (Fmake_process): Move USE_SAFE_ALLOCA later,
6231         so that it follows the start_process_unwind unwind-protect.
6232         Set pid to -1 while the process is being created.
6233         (start_process_unwind): Omit unnecessary emacs_abort test.
6234         (connect_network_socket): Simplify use of counts.  Unwind
6235         bind_polling_period a bit earlier, so that a remove_process
6236         unwind-protect can be added when needed; this is the heart of
6237         the fix.  Undo the unwind-protect just before returning.
6239 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
6241         Avoid annoying re-scroll when buffer has many overlay strings
6243         * src/xdisp.c (redisplay_window): Add better recovery from a
6244         situation where window-start is on buffer position which has a
6245         before-string that includes newlines, with the result that point
6246         is not visible in the window, because the display engine starts
6247         displaying with the before-string.  (Bug#24179)
6249 2016-08-10  Paul Eggert  <eggert@cs.ucla.edu>
6251         Omit unnecessary process initialization
6253         * src/process.c (make_process, Fmake_process)
6254         (Fmake_pipe_process, Fmake_serial_process)
6255         (Fmake_network_process, server_accept_connection):
6256         Omit unnecessary initialization of already-cleared storage.
6258 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6260         cl-delete-duplicates: Parse :if to have cl-if bound
6262         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6263         We need also to parse keyword :if, otherwise cl-if
6264         is unbound.
6265         This reverts commit:
6266         68fdbeb917b80e29e0b15506f18f7ed41d8ffdfd
6268 2016-08-10  Tino Calancha  <tino.calancha@gmail.com>
6270         cl-delete-duplicates: do not parse :if keyword
6272         * lisp/emacs-lisp/cl-seq.el (cl--delete-duplicates):
6273         Parse only the supported keywords.
6275 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6277         Add compatibility layer for `temporary-file-directory-function'
6279         * lisp/net/tramp-compat.el
6280         (tramp-compat-temporary-file-directory-function): New defalias.
6282         * lisp/net/tramp.el (tramp-handle-make-nearby-temp-file): Use it.
6284         * test/lisp/net/tramp-tests.el (tramp-test32-make-nearby-temp-file):
6285         Skip for older Emacs versions.
6287 2016-08-10  Michael Albinus  <michael.albinus@gmx.de>
6289         * lisp/comint.el (comint-password-prompt-regexp): Add "PEM" for OpenVPN.
6291         (Bug#24059)
6293 2016-08-10  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6295         Handle nil cell value in compiled printer functions.
6297         * doc/misc/ses.texi (Quick Tutorial): Minor clarification about the
6298         ses-range `!' modifier.
6299         (More on cell printing): Fix this that the fallback printer is
6300         `ses-prin1', not "%S".  That makes a difference for any cell value for
6301         which "%S" would insert a backslash characters.
6303         * lisp/ses.el (ses-local-printer-compile): Handle the nil cell value
6304         --- contrary to emacs-25 branches ses-call-printer does not handle
6305         prior to calling a function printer.  Not doing this would still work
6306         because the compiled function would throw and error and SES would in
6307         the end resort to the ses-prin1 fallback, however this way would not
6308         be in line with the raison d'être of compiling printer which is speed.
6310 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6312         Turn on lexical-binding in json.el
6314         Measuring with (benchmark-run 100 (json-read-file "foobar.json"))
6315         showed 12-31% reduction in execution time.
6316         * lisp/json.el: Turn on lexical-binding.
6318 2016-08-09  Mark Oteiza  <mvoteiza@udel.edu>
6320         Nudge WoMan toward lexical-binding
6322         * lisp/woman.el (woman-parse-man.conf, woman-manpath-add-locales):
6323         Use cl-pushnew instead of add-to-list.
6324         (woman-justify-list): Rename to woman-justify-styles.
6325         (woman-justify-styles): New array.
6326         (woman-justify, woman-decode-region, woman2-ad, woman2-na): Use it.
6327         (woman-cached-data): Use cl-pushnew instead of add-to-list.
6329 2016-08-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6331         Apply changes from commits 3c97b0f758 and 8a38e948b0 to master branch.
6333         Here follows the logs from the two commits which I apply to master.
6335         commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d
6336         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6337         Date:   Fri Jul 29 13:44:14 2016 +0200
6339         Fix ses-delete-blanks to delete only blanks + documentation.
6341         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
6342         'ses-range' modifier as an alternative to 'ses+'.
6343         (Advanced Features): Add a refernce to node 'Nonrelocatable
6344         references' concerning function 'ses-rename-cell'.
6345         (Standard formula functions): Mention the '!' 'ses-range'
6346         modifier as an alternative to 'ses-delete-blanks'.
6347         (More on cell printing): Fix fallback printer
6348         definition.  Minor editorial formatting changes.
6349         (Nonrelocatable references): Document the use of
6350         'ses-rename-cell' as a better way to make cell reference
6351         non-relocatable.
6352         (The data area): Document the presence of local printer
6353         definitions in the data area.
6355         * lisp/ses.el (ses-delete-blanks): Do not remove
6356         *error*.  Any error in an argument should propagate into the
6357         using formula rather than being silently hidden !
6359         commit 8a38e948b039516e70176ebe20c5349e2ade6ac5
6360         Author: Vincent Belaïche <vincentb1@users.sourceforge.net>
6361         Date:   Thu Jul 28 19:49:37 2016 +0200
6363         Fix local printer set to left aligned string formatter.
6365         * lisp/ses.el (ses-local-printer-compile): Add missing case
6366         for left-aligned string formatter.
6368 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6370         * .dir-locals.el (c-noise-macro-names): Remove NONVOLATILE.
6372 2016-08-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6374         * lisp/emacs-lisp/cconv.el: Fix λ-lifting in the presence of shadowing
6376         Change the code which detects and circumvents the case where one of the
6377         variables used in λ-lifting is shadowed, so that it also works when the
6378         shadowing comes before the λ-lifted function (bug#24171).
6380         (cconv--remap-llv): New function, extracted from cconv-convert.
6381         (cconv-convert): Use it, but differently for `let' and `let*'.
6383 2016-08-09  Alan Mackenzie  <acm@muc.de>
6385         CC Mode: check for and fix missing call to before_change_functions.
6387         Fixes bug #24094 and bug #24074.
6389         This can happen with `revert-buffer' or sometimes `find-file', when the file
6390         is already in a buffer, but the file has been changed outside of Emacs.
6392         * lisp/progmodes/cc-mode.el (c-after-change): When we detect a missing
6393         invocation of c-before-change-functions, we assume the changed region is the
6394         entire buffer, and call c-before-change explicitly before proceding.
6396 2016-08-09  Alan Mackenzie  <acm@muc.de>
6398         Make c-deprepertize-CPP work on deletion/insertion of "s.  Fixes bug #24132.
6400         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Rewrite function.
6402 2016-08-09  Michael Albinus  <michael.albinus@gmx.de>
6404         Support $ENV in Tramp
6406         * doc/misc/tramp.texi (Remote processes): Explain setting $ENV.
6408         * etc/NEWS: Explain the "ENV" environment variable in
6409         `tramp-remote-process-environment'.
6411         * lisp/net/tramp-sh.el (tramp-remote-process-environment): Add "ENV=''".
6412         (tramp-open-shell): Read $ENV value from
6413         `tramp-remote-process-environment'.
6414         (tramp-open-connection-setup-interactive-shell): Set values in
6415         proper order.
6417 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6419         Simplify exec_byte_code via moving decls etc.
6421         * src/bytecode.c (exec_byte_code): Simplify, mostly by moving
6422         initializers into decls, and by omitting some unnecessary
6423         changes to ‘top’.  This improves performance a bit on x86-64,
6424         as it happens.
6426 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6428         Remove interpreter’s byte stack
6430         This improves performance overall on my benchmark on x86-64,
6431         since the interpreted program-counter resides in a machine
6432         register rather than in RAM.
6433         * etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
6434         is no longer a byte stack to decode.
6435         * src/bytecode.c (struct byte_stack, byte_stack_list)
6436         (relocate_byte_stack): Remove.  All uses removed.
6437         (FETCH): Simplify now that pc is now local (typically, in a
6438         register) and no longer needs to be relocated.
6439         (CHECK_RANGE): Remove.  All uses now done inline, in a different way.
6440         (BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
6441         (exec_byte_code): Allocate a copy of the function’s bytecode,
6442         so that there is no problem if GC moves it.
6443         * src/lisp.h (struct handler): Remove byte_stack member.
6444         All uses removed.
6445         (SAFE_ALLOCA_LISP_EXTRA): New macro, a generalization of
6446         SAFE_ALLOCA_LISP.
6447         (SAFE_ALLOCA_LISP): Use it.
6449 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6451         Remove arbitrary limit on bytecode maxdepth
6453         * src/bytecode.c (exec_byte_code): Remove MAX_ALLOCA-based limit
6454         on bytecode maxdepth, by using SAFE_ALLOCA_LISP instead of alloca.
6456         pipeline is fuller.
6458 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6460         Tune bytecode quitting
6462         * src/bytecode.c (BYTE_CODE_QUIT): Check for GC, too.  Do the
6463         check only once every 256 times.  This should be good enough, and
6464         improves performance significantly on x86-64 as branch-prediction
6465         typically assumes checking will not be done so the instruction
6466         pipeline stays fuller.
6467         (exec_byte_code): Set up the quit counter.  Don’t call maybe_gc
6468         directly, as BYTE_CODE_QUIT does that now.
6470 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6472         Simplify BYTE_CODE_SAFE checking
6474         * src/bytecode.c (BYTE_CODE_SAFE): Default to false, so that it
6475         can be used outside #if.  All uses of ‘defined BYTE_CODE_SAFE’
6476         changed to ‘BYTE_CODE_SAFE’.  Use BYTE_CODE_SAFE in plain
6477         expressions instead of #if expressions when this is easy.
6478         (struct byte_stack) [BYTE_CODE_SAFE]: Remove member ‘bottom’,
6479         as it is no longer needed.
6480         (exec_byte_code): Omit #if BYTE_CODE_SAFE when this is easy.
6481         Simplify stack-overflow checking when BYTE_CODE_SAFE.
6483 2016-08-09  Paul Eggert  <eggert@cs.ucla.edu>
6485         Get BYTE_CODE_METER working again
6487         BYTE_CODE_METER hasn’t worked since 2013, and nobody seems to have
6488         noticed.  Perhaps we should remove it?
6489         * src/bytecode.c (METER_2) [BYTE_CODE_METER]:
6490         Use *aref_addr instead of AREF, since it needs to be an lvalue.
6492 2016-08-08  Eli Zaretskii  <eliz@gnu.org>
6494         Fix cursor position under scroll-conservatively and overlay strings
6496         * src/xdisp.c (try_scrolling): Handle the case where the last
6497         visible screen line of a window displays a before- or after-string
6498         that takes up the whole screen line, and therefore there's no
6499         place to display the cursor, even though the window does seem to
6500         include the position of point.  (Bug#24179)
6502 2016-08-08  Michael Albinus  <michael.albinus@gmx.de>
6504         * lisp/files.el (file-ownership-preserved-p): Fix docstring.  (Bug#23998)
6506 2016-08-07  Paul Eggert  <eggert@cs.ucla.edu>
6508         Tune interpretation of integer arglist descriptor
6510         * src/bytecode.c (exec_byte_code):
6511         Simplify and tune when INTEGERP (args_template).
6513 2016-08-07  Noam Postavsky  <npostavs@gmail.com>
6515         Fix debugging of string-match-p errors
6517         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
6518         that debugger code that needs to do regexp match won't break
6519         (Bug #23949, Bug #24166, Bug#16294).
6521 2016-08-07  Michael Albinus  <michael.albinus@gmx.de>
6523         Add `make-nearby-temp-file' and `temporary-file-directory'
6525         * doc/lispref/files.texi (Unique File Names):
6526         Introduce `make-nearby-temp-file' and `temporary-file-directory'.
6527         (Magic File Names): Mention `make-nearby-temp-file' and
6528         `temporary-file-directory'.
6530         * etc/NEWS (provided): Mention `make-nearby-temp-file' and
6531         `temporary-file-directory'.
6533         * lisp/files.el (mounted-file-systems): New defcustom.
6534         (temporary-file-directory, make-nearby-temp-file): New defuns.
6535         (normal-backup-enable-predicate): Fix docstring.
6537         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
6538         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
6539         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
6540         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist):
6541         <make-nearby-temp-file, temporary-file-directory>: Add handler.
6543         * lisp/net/tramp.el (tramp-file-name-for-operation):
6544         Add `make-nearby-temp-file' and `temporary-file-directory'.
6545         (tramp-get-remote-tmpdir): Remove compatibility code.
6546         (tramp-handle-temporary-file-directory)
6547         (tramp-handle-make-nearby-temp-file): New defuns.
6549         * lisp/org/ob-core.el (org-babel-local-file-name):
6550         * lisp/progmodes/gud.el (gud-common-init):
6551         * lisp/vc/vc-hooks.el (vc-user-login-name): Use `file-remote-p'.
6553         * lisp/vc/vc-git.el (vc-git-checkin): Handle remote log message.
6555         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
6556         Check `tramp--test-enabled'.
6557         (tramp-test18-file-attributes): Add tests for
6558         `file-ownership-preserved-p'.
6559         (tramp-test27-start-file-process, tramp-test28-shell-command):
6560         Reduce timeouts in `accept-process-output'.
6561         (tramp-test--shell-command-to-string-asynchronously): Add timeout.
6562         (tramp-test29-environment-variables): Remove additional sleep calls.
6563         (tramp-test32-make-nearby-temp-file): New test.
6564         (tramp--test-special-characters, tramp--test-utf8): Adapt docstring.
6565         (tramp-test33-special-characters)
6566         (tramp-test33-special-characters-with-stat)
6567         (tramp-test33-special-characters-with-perl)
6568         (tramp-test33-special-characters-with-ls, tramp-test34-utf8)
6569         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6570         (tramp-test34-utf8-with-ls)
6571         (tramp-test35-asynchronous-requests)
6572         (tramp-test36-recursive-load, tramp-test37-unload): Rename.
6573         (tramp--test-ftp-p): Simplify check.
6574         (tramp--test-sh-p): New defun.
6575         (tramp-test20-file-modes, tramp-test22-file-times)
6576         (tramp-test26-process-file, tramp-test27-start-file-process)
6577         (tramp-test28-shell-command)
6578         (tramp-test29-environment-variables)
6579         (tramp-test30-vc-registered)
6580         (tramp-test33-special-characters-with-stat)
6581         (tramp-test33-special-characters-with-perl)
6582         (tramp-test33-special-characters-with-ls)
6583         (tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
6584         (tramp-test34-utf8-with-ls)
6585         (tramp-test35-asynchronous-requests): Use it.
6587 2016-08-06  Michael Albinus  <michael.albinus@gmx.de>
6589         Add missing dcstrings in Tramp, remove chec for obsolee methods
6591         * lisp/net/tramp.el (tramp-progress-reporter-update)
6592         (tramp-unload-file-name-handlers, tramp-get-local-uid)
6593         (tramp-get-local-gid, tramp-get-local-locale):
6594         * lisp/net/tramp-adb.el (tramp-adb-ls-date-regexp)
6595         (tramp-adb-ls-toolbox-regexp, tramp-adb-get-ls-command):
6596         * lisp/net/tramp-compat.el (tramp-compat-funcall):
6597         * lisp/net/tramp-ftp.el (tramp-ftp-enable-ange-ftp):
6598         * lisp/net/tramp-gw.el (tramp-gw-process-filter):
6599         * lisp/net/tramp-sh.el (tramp-get-remote-path)
6600         (tramp-get-remote-locale, tramp-get-ls-command)
6601         (tramp-get-ls-command-with-dired)
6602         (tramp-get-ls-command-with-quoting-style)
6603         (tramp-get-ls-command-with-w-option)
6604         (tramp-get-test-nt-command, tramp-get-file-exists-command)
6605         (tramp-get-remote-ln, tramp-get-remote-perl)
6606         (tramp-get-remote-stat, tramp-get-remote-readlink)
6607         (tramp-get-remote-trash, tramp-get-remote-touch)
6608         (tramp-get-remote-gvfs-monitor-dir)
6609         (tramp-get-remote-inotifywait, tramp-get-remote-id)
6610         (tramp-get-remote-uid-with-id)
6611         (tramp-get-remote-uid-with-perl, tramp-get-remote-python)
6612         (tramp-get-remote-uid-with-python, tramp-get-remote-uid)
6613         (tramp-get-remote-gid-with-id)
6614         (tramp-get-remote-gid-with-perl)
6615         (tramp-get-remote-gid-with-python, tramp-get-remote-gid)
6616         (tramp-get-env-with-u-option): Add missing docstrings.
6618         * lisp/net/tramp.el (tramp-obsolete-methods)
6619         (tramp-warned-obsolete-methods): Remove.
6620         (tramp-find-method): Do not check for obsolete methods any longer.
6622 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6624         Make sh-mode always use p-s-lookup-properties
6626         This lets functions which rely on syntax-propertize for parsing
6627         work correctly even before font lock has a chance to run.
6629         * lisp/progmodes/sh-script.el (sh-set-shell): Set
6630         parse-sexp-lookup-properties unconditionally (Bug #4920).
6632 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6634         Fix cl-assert with atomp FORM, non-nil SHOW-ARGS
6636         * lisp/emacs-lisp/cl-macs.el (cl-assert): Don't require that FORM is a
6637         list when showing its (non-existent) arguments (Bug #18587).
6639 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6641         Don't delete selection after indent-rigidly
6643         * lisp/indent.el (indent-rigidly): Pass `deactivate-mark' as the ON-EXIT
6644         function to `set-transient-map', this prevents `delete-selection-mode'
6645         from deleting the text that was just indented (Bug #20408).
6647 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6649         Fix byte-compile of interactive closures
6651         * lisp/emacs-lisp/bytecomp.el (byte-compile--reify-function): Put
6652         bindings after docstring and `interactive' form, if any (Bug #24122).
6654 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6656         Error if --eval arg has text beyond 1 expression
6658         * lisp/startup.el (command-line-1): If --eval argument has more data
6659         than constitutes a single Lisp expression, signal an error (Bug #23159).
6661 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6663         Fix quoted lambda warning from lexical-let
6665         * lisp/emacs-lisp/cl.el (cl--function-convert): Quote the inner lambda
6666         with `function', not `quote' (Bug #11357).
6668 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
6670         Make emerge always use shell-quote-argument
6672         * lisp/vc/emerge.el (emerge-metachars): Obsolete.
6673         (emerge-protect-metachars): Delete.
6674         (emerge-make-diff-list, emerge-make-diff3-list): Replace all calls to
6675         `emerge-protect-metachars' with `shell-quote-argument' so that shell
6676         quoting is done the same on all system types (Bug #6136).  Also shell
6677         quote `emerge-diff-program' and `emerge-diff3-program'.
6679 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6681         Fix 'dired-diff' when backup file is in another directory
6683         * lisp/dired-aux.el (dired-diff): Clarify the doc string wrt how
6684         the default for FILE is computed, especially when backup files
6685         are involved.  Support backup files in another directory.
6686         Don't suggest the default FILE if it doesn't exist.  (Bug#24089)
6688 2016-08-06  Eli Zaretskii  <eliz@gnu.org>
6690         Fix the 'T' command in Dired with non_ASCII file names
6692         * lisp/dired-aux.el (dired-do-chxxx): Bind coding-system-for-write
6693         to correctly encode file names passed to the invoked PROGRAM.
6694         (Bug#24162)
6696 2016-08-05  Noam Postavsky  <npostavs@gmail.com>
6698         * lisp/files.el (version-control): Drop :group vc (Bug #14687)
6700 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6702         Merge from origin/emacs-25
6704         d841a03 ; Spelling fix
6705         a6ae479 Post AppDefined events from the main thread ONLY (bug#23934)
6706         d35d398 Update to the AUTHORS file for Bob Weiner
6707         4d2f4df Revert "Fix local printer set to left aligned string formatter."
6708         cd1b4d6 Revert "Fix ses-delete-blanks to delete only blanks + documen...
6709         f7ceb8e Revert "Fix English."
6710         baa7abd Improve doc strings of 'gud-gdb' and 'gdb'
6711         aa4271a Fix doc string of 'minibuffer-message-timeout'
6712         b275cc7 Fix English.
6713         3c97b0f Fix ses-delete-blanks to delete only blanks + documentation.
6714         272391f profiler: document prefix arg for tree expansion
6715         442cc39 Clarify usage of eshell-visual-options
6716         b443c3c Fix comment in files-in-below-directory
6717         8a38e94 Fix local printer set to left aligned string formatter.
6718         0f0b191 ; Fix typos in NEWS
6719         6bdf687 ; * etc/NEWS: Remove temporary marks
6721 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6723         Merge from origin/emacs-25
6725         d08afa1 * etc/AUTHORS: Update the AUTHORS file
6726         2668500 ;; * ChangeLog.2: ChangeLog update.
6727         7acfaea ; ChangeLog fixes
6728         97d28b4 * admin/authors.el (authors-valid-file-names): Addition.
6729         9ab52f6 * admin/authors.el: Additions.
6730         0e646c7 Warn about Cairo-related problems
6731         bc4c07f Don't let completion break `declare' handling
6732         66f95e0 Adjust match data before calling after-change-funs
6733         52cf0d5 Do not show string-rectangle preview if minibuffer is empty
6734         6a3d031 * etc/PROBLEMS: Add entry about selection problems under Plas...
6736         # Conflicts:
6737         #       ChangeLog.2
6738         #       src/lisp.h
6740 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6742         Merge from origin/emacs-25
6744         9a41cd1 ; Fix typo
6745         9356fe2 Expand FIXME near definition of fboundp
6746         219b39f kill-rectangle should mention killed-rectangle
6747         59fa4c3 Avoid assertion violations in nhexl-mode
6749 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6751         Merge from origin/emacs-25
6753         9ba51ed Document buffer-swap-text+save-excursion interaction
6754         452aa94 Fix eieio vs cl-generic incompatibilities found in Rudel (bug...
6755         248d5dd Include cl-generic in package--builtin-versions (bug#22817)
6756         8f5a8b6 Improve timing in `tramp-test29-environment-variables'
6757         05ba7a0 Add test for handling environment variables in Tramp
6758         e393d4f * lisp/emacs-lisp/package.el (describe-package-1) (package-st...
6759         5e38887 ; * lisp/net/tramp.el: Fix 2010-10-04 comment typo.  (Bug#23913)
6760         90f2169 ; Spelling fixes
6761         069fc05 Improve documentation of search functions
6762         0a0144a Delete environment variables in Tramp when needed
6763         f624671 Add "New in Emacs 25" section to the FAQ
6764         658daf9 Fix 'vertical-motion' in non-interactive sessions
6765         686b520 Fix memory leak in imagemagick-types
6766         4069b71 Update ELisp manual to match 'string-collate-equalp' doc string
6767         1b2d6a6 Clarify docstring of find-feature-regexp
6768         aac62a6 Add details to cl-lib defining macros' docstrings
6769         d6aa4da Clarify doc string of 'save-buffer'
6770         03bcf11 Un-confuse doc string of 'string-collate-equalp'
6771         c53135b Clarify documentation of 'mouse-on-link-p'
6773         # Conflicts:
6774         #       lisp/emacs-lisp/eieio-core.el
6776 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6778         Merge from origin/emacs-25
6780         6f285d9 Amend last addition to etc/PROBLEMS
6781         7067890 * etc/PROBLEMS: Mention GTK+ problem with unexpected frame wi...
6783 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6785         Merge from origin/emacs-25
6787         d4c6774 Fix missing point information in undo
6788         3a9d629 Avoid crashes when buffer modification hooks clobber match data
6789         178b2f5 Note combine-and-quote-strings doesn't shell quote
6790         dec7567 Explain when package-initialize isn't called
6791         113d1e2 Fix escaping in sh-indent-after-continuation docstr
6792         80e2044 ; * etc/NEWS: Improve previous change.
6793         5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
6794         38f4b8e Clarify the documentation of back-references in replacements
6796 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6798         Merge from origin/emacs-25
6800         850ba44 Clarify lexical binding with symbol args behavior
6801         f981b31 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
6802         68fc964 * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23...
6803         21110af Avoid assertion violations when rendering some fonts
6804         6192b6c Document more details of package activation
6805         272ddc6 Fixup warning message regarding HOME a bit more
6806         43206d6 * lisp/leim/quail/indian.el ("bengali-probhat"): Change indic...
6807         d41f7ff Fix input method "probhat" for Bengali
6808         c150a64 ; Fix typo in commit before last
6809         ebf0472 Add to elisp-completion-at-point's docstring
6810         fd9fad0 Give more helpful warning about setting HOME
6811         ea6b01d ; * lisp/term.el (term-mode): FIXME comment about bidi reorde...
6813         # Conflicts:
6814         #       lisp/term.el
6816 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6818         Merge from origin/emacs-25
6820         26d4da0 New input method "probhat" for Bengali
6821         4f445bf ; Spelling fix
6822         f403f03 ; Fix typo
6824 2016-08-05  Paul Eggert  <eggert@cs.ucla.edu>
6826         Spelling and minor grammar fixes
6828         * test/file-organization.org: Rename from test/file-organisation.org.
6830 2016-08-04  Alan Mackenzie  <acm@muc.de>
6832         Widen in certain low level CC Mode functions.  This fixes bug #24148.
6834         * lisp/progmodes/cc-engine.el (c-state-semi-pp-to-literal)
6835         (c-state-full-pp-to-literal): Widen around the functionality.
6836         (c-parse-ps-state-below): Correct the order of save-excursion and
6837         save-restriction.
6839 2016-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6841         Fix Bug#24149
6843         * lisp/subr.el (set-transient-map): Don't wait if MAP not present in
6844         overriding-terminal-local-map.  (Bug#24149)
6846 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6848         Update from gnulib
6850         This incorporates:
6851         2016-07-03 mktime: call tzset as per POSIX
6852         * doc/misc/texinfo.tex, lib/mktime.c, m4/mktime.m4:
6853         Copy from gnulib.
6855 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6857         Fix GnuTLS includes
6859         * src/gnutls.c [HAVE_GNUTLS]: Don’t include gnutls/gnutls.h
6860         a second time; although it doesn’t hurt, it’s not needed.
6861         * src/sysdep.c [!HAVE_GNUTLS]: Don’t include gnutls/crypto.h,
6862         as it may not be available.  Problem reported by Glenn Morris in:
6863         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00100.html
6865 2016-08-03  Michal Nazarewicz  <mina86@mina86.com>
6867         Fix accessing regex-resources in out-of-tree test runs in regex-tests
6869         [82a487d: Fix reading of regex-resources in regex-tests] attempted to
6870         fix regex-tests failing when run from the source tree (i.e. via make)
6871         by hard-coding path to regex-resources directory relative to the test
6872         directory.
6874         This fixed runs from the tree but broke the test when run using other
6875         methods.
6877         Fix by trying ‘load-file-name’ or ‘buffer-file-name’, whichever is set.
6879         * test/src/regex-tests.el (regex-tests--resources-dir): New variable
6880         storing path to the regex-resources directory.
6881         (regex-tests-generic-line): Use aforementioned variable.
6883 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6885         Simplify by assuming GnuTLS 2.12.2 or later
6887         * src/gnutls.c (gnutls_certificate_details):
6888         * src/sysdep.c: Assume GnuTLS 2.12.2 or later.
6890 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6892         Port to systems lacking GNUTLS_NONBLOCK
6894         Problem reported by Colin Baxter in:
6895         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00096.html
6896         * src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
6898 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6900         Fix non-blocking GnuTLS with slow connection
6902         Although the problem is reported for OS X (Bug#23982), it seems to
6903         be possible on other POSIXish platforms.
6904         * src/gnutls.c (emacs_gnutls_nonblock_errno) [!WINDOWSNT]:
6905         New function.
6906         (emacs_gnutls_handshake) [!WINDOWSNT]:
6907         Use it as the errno function, if non-blocking.
6908         (Fgnutls_boot): Use GNUTLS_NONBLOCK if non-blocking.
6910 2016-08-03  Paul Eggert  <eggert@cs.ucla.edu>
6912         Require GnuTLS 2.12.2 or later
6914         * configure.ac, etc/NEWS: Require GnuTLS 2.12.2 or later,
6915         instead of merely 2.6.6 or later (Bug#23982#20).
6916         * src/gnutls.c (init_gnutls_functions, emacs_gnutls_handshake)
6917         [WINDOWSNT]: Don’t bother with gnutls_check_version or
6918         gnutls_transport_set_lowat, as they are no longer needed now that
6919         we require gnutls 2.12.2 or later.
6921 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6923         * src/window.c (sanitize_window_sizes): Remove unused arg `frame'
6925         * src/window.h (sanitize_window_sizes): Adjust prototype.
6926         * src/frame.c (adjust_frame_size): Adjust calls.
6928 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6930         Fix (mapcar F S) crash when F alters S’s length
6932         * src/fns.c (mapcar1): Return number of elements computed,
6933         which can be less than LENI if the function alters the list.
6934         All callers changed.  (Bug#24118)
6936 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6938         Port window changes to --enable-gcc-warnings
6940         * src/window.c (sanitize_window_sizes): Return void.
6941         This pacifies GCC, and no caller uses the return value anyway.
6943 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6945         * src/window.c: Fix bootstrap failure due to window.el changes
6947         (sanitize_window_sizes): Adjust to new calling convention of
6948         window--sanitize-window-sizes and only call it if defined.
6949         (Fwindow__sanitize_window_sizes): Remove.
6950         (syms_of_window): Don't defsubr it.
6952 2016-08-02  Michael Albinus  <michael.albinus@gmx.de>
6954         Fix Bug#23883
6956         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
6957         Call `process-actions' with adapted position.  The connection
6958         buffer might have been cleaned up already.  (Bug#23883)
6960 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
6962         Port regex changes to strict ISO C
6964         * src/regex.c (regex_compile): Redo casts.
6966 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
6968         * lisp/window.el: Use lexical-binding
6970         (window--min-size-ignore-p): Remove unused arg `horizontal'.
6971         (window--sanitize-window-sizes): Remove unused arg `frame'.
6972         (window-edges): Remove unused vars left-off and right-off.
6973         (display-buffer-reuse-mode-window): Remove unused var `frame?'.
6974         Avoid extraneous setq and do a bit of CSE.
6975         (fit-frame-to-buffer): Remove unused vars `window', `fit-width',
6976         and `toolbar-extra-height'.
6977         (window-adjust-process-window-size): Remove unused arg `process'.
6979 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6981         Fix unused lexical variable
6983         This fixes the following warning:
6985             In toplevel form:
6986             src/regex-tests.el:416:1:Warning: Unused lexical variable ‘newline’
6988         * test/src/regex-tests.el (regex-tests-BOOST): Remove unused lexical
6989         variable.
6991 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
6993         Remove unused STREQ macro
6995         This fixes the following compilation warning:
6997             regex.c:516:0: warning: macro "STREQ" is not used [-Wunused-macros]
6998              #define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
6999              ^
7001         * src/regex.c (STREQ): Remove unused macro.  It should have been removed
7002         in a [4538a5e: Refactor regex character class parsing in [:name:]]
7003         commit but was mistakenly left out.
7005 2016-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
7007         * lisp/emacs-lisp/cl-generic.el: Fix problems introduced by new
7008         load-history format
7010         * lisp/emacs-lisp/cl-generic.el (cl--generic-load-hist-format): New function.
7011         (cl-generic-define-method, cl--generic-describe): Use it.
7012         (cl--generic-search-method): Adjust for new format.
7014         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
7015         * test/lisp/progmodes/elisp-mode-tests.el:
7016         Use cl--generic-load-hist-format rather than hard-coding cl-generic's
7017         internal format.
7019 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7021         Hardcode regex syntax to remove dead code handling different syntax
7023         Emacs only ever uses its own regex syntax so support for other syntaxes
7024         is never used.  Hardcode the syntax so that the compilar can detect such
7025         dead code and remove it from compiled code.
7027         The only exception is RE_NO_POSIX_BACKTRACKING which can be separatelly
7028         specified.  Handle this separatelly with a function argument (replacing
7029         now unnecessary syntax argument).
7031         With this patchset, size of Emacs binary on x86_64 machine is reduced by
7032         around 60 kB:
7034                 new-sizes:-rwx------ 3 mpn eng 30254720 Jul 27 23:31 src/emacs
7035                 old-sizes:-rwx------ 3 mpn eng 30314828 Jul 27 23:29 src/emacs
7037         * src/regex.h (re_pattern_buffer): Don’t define syntax field #ifdef emacs.
7038         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7040         * src/regex.c (print_compiled_pattern): Don’t print syntax #ifdef emacs.
7041         (regex_compile): #ifdef emacs, replace syntax argument with
7042         posix_backtracking which is now used instead of testing for
7043         RE_NO_POSIX_BACKTRACKING syntax.
7044         (re_match_2_internal): Don’t access bufp->syntax #ifndef emacs.
7045         (re_compile_pattern): Replace syntax with posix_backtracking argument.
7047         * src/search.c (compile_pattern_1): Pass boolean posix_backtracking
7048         instead of syntax to re_compile_pattern.
7050 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7052         Get rid of re_set_whitespace_regexp
7054         * src/regex.h (re_set_whitespace_regexp): Delete.
7055         (re_compile_pattern): Add whitespace_regexp argument #ifdef emacs.
7057         * src/regex.c (re_set_whitespace_regexp, whitespace_regexp): Delete.
7058         (regex_compile): Add whitespace_regexp argument #ifdef emacs and wrap
7059         whitespace_regexp-related code in an #ifdef emacs so it’s compiled out
7060         unless building Emacs.
7061         (re_compile_pattern): Pass whitespace_regexp argument to regex_compile
7063         * src/search.c (compile_pattern_1): Don’t use re_set_whitespace_regexp,
7064         pass the regex as argument to re_compile_pattern instead.
7066 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7068         Get rid of re_set_syntax
7070         Instead of using a global variable for storing regex syntax, pass it
7071         to re_compile_pattern.  This is only enabled when compiling Emacs (i.e.
7072         ‘#ifdef emacs’).
7074         * src/regex.h (re_set_syntax): Declare only #ifndef emacs.
7075         (re_compile_pattern): Now takes syntax argument #ifdef emacs.
7077         * src/regex.c (re_syntax_options): Define only #ifndef emacs.
7078         (re_compile_pattern): Use the new syntax argument #ifdef emacs.
7080         * src/search.c (compile_pattern_1): Don’t use re_set_syntax and
7081         instead pass syntax to re_compile_pattern directly.
7083 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7085         Remove dead opcodes in regex bytecode
7087         There is no way to specify before_dot and after_dot opcodes in a regex
7088         so code handling those ends up being dead.  Remove it.
7090         * src/regex.c (print_partial_compiled_pattern, regex_compile,
7091         analyze_first, re_match_2_internal): Remove handling and references to
7092         before_dot and after_dot opcodes.
7094 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7096         Refactor regex character class parsing in [:name:]
7098         re_wctype function is used in three separate places and in all of
7099         those places almost exact code extracting the name from [:name:]
7100         surrounds it.  Furthermore, re_wctype requires a NUL-terminated
7101         string, so the name of the character class is copied to a temporary
7102         buffer.
7104         The code duplication and unnecessary memory copying can be avoided by
7105         pushing the responsibility of parsing the whole [:name:] sequence to
7106         the function.
7108         Furthermore, since now the function has access to the length of the
7109         character class name (since it’s doing the parsing), it can take
7110         advantage of that information in skipping some string comparisons and
7111         using a constant-length memcmp instead of strcmp which needs to take
7112         care of NUL bytes.
7114         * src/regex.c (re_wctype): Delete function.  Replace it with:
7115         (re_wctype_parse): New function which parses a whole [:name:] string
7116         and returns a RECC_* constant or -1 if the string is not of [:name:]
7117         format.
7118         (regex_compile): Use re_wctype_parse.
7119         * src/syntax.c (skip_chars): Use re_wctype_parse.
7121 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7123         Split regex glibc test cases into separet tests
7125         * test/src/regex-tests.el (regex-tests): Remove and split into multiple
7126         tests cases.
7127         (regex-tests-glbic-BOOST, regex-tests-glibc-PCRE,
7128         regex-tests-glibc-PTESTS, regex-tests-glibc-TESTS): New test cases split
7129         from ‘regex-tests’.
7131 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7133         Don’t (require 'cl)
7135         * test/src/regex-tests.el: Don’t (require 'cl).
7136         (regex-tests-PCRE): s/loop/cl-loop/
7138 2016-08-02  Michal Nazarewicz  <mina86@mina86.com>
7140         Fix reading of regex-resources in regex-tests
7142         * test/src/regex-tests.el (regex-tests-generic-line): Referring to
7143         ‘buffer-file-name’ does not work when running the test from command
7144         line, i.e. via make, which results in (wrong-type-argument stringp nil)
7145         failures.  Replace it with hard-coded path.
7146         (regex-tests-BOOST, regex-tests-PCRE, regex-tests-PTESTS-whitelist,
7147         regex-tests-TESTS-whitelist): ‘regex-tests-generic-line’ now  includes
7148         the ‘regex-resources’ path component so the tests don’t need to specify
7149         it explicitly.
7151 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7153         Added driver for the regex tests
7155         * test/src/regex-tests.el (regex-tests): Test executing glibc tests
7156         cases.
7158         [mina86@mina86.com: merged test with existing file]
7160 2016-08-02  Dima Kogan  <dima@secretsauce.net>
7162         New regex tests imported from glibc 2.21
7164         * test/src/regex-resources/BOOST.tests:
7165         * test/src/regex-resources/PCRE.tests:
7166         * test/src/regex-resources/PTESTS:
7167         * test/src/regex-resources/TESTS:
7168         New test data files
7170         [mina86@mina86.com: Moved files from test/src/regex/* to test/src/*.]
7172 2016-08-02  Paul Eggert  <eggert@cs.ucla.edu>
7174         Fix use-after-close in connect_network_socket
7176         * src/process.c (connect_network_socket):
7177         Reverse sense of previous fix.  Problem reported by Ken Brown in:
7178         https://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00004.html
7180 2016-08-01  Glenn Morris  <rgm@gnu.org>
7182         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
7183         Respect autoload-timestamps for "actual autoloads are elsewhere" case.
7185 2016-07-31  Stefan Merten  <stefan@merten-home.de>
7187         * lisp/textmodes/rst.el: Major refactoring, minor changes, minor fixes
7189         (rst-Ado, rst-Hdr, rst-Ttl, rst-Stn): Introduce classes
7190         representing reStructuredText section header concepts.
7191         (rst-mode-map, rst-new-preferred-hdr)
7192         (rst-update-section, rst-classify-adornment)
7193         (rst-ttl-at-point, rst-all-ttls-cache)
7194         (rst-hdr-hierarchy-cache, rst-reset-section-caches)
7195         (rst-all-ttls, rst-infer-hdr-hierarchy, rst-hdr-hierarchy)
7196         (rst-all-ttls-with-level, rst-get-previous-hdr)
7197         (rst-adornment-complete-p, rst-next-hdr, rst-adjust)
7198         (rst-adjust-section, rst-promote-region)
7199         (rst-display-hdr-hierarchy, rst-straighten-sections)
7200         (rst-all-stn, rst-remaining-stn, rst-toc-insert)
7201         (rst-toc-insert-node, rst-toc-node, rst-toc)
7202         (rst-forward-section, rst-adornment-level)
7203         (rst-font-lock-handle-adornment-pre-match-form)
7204         (rst-imenu-convert-cell, rst-imenu-create-index): Refactor
7205         using classes.
7206         (rst-compare-adornments, rst-get-adornment-match): Remove
7207         functions now in classes.
7208         (rst-re-alist-def, rst-toc-mode)
7209         (rst-font-lock-extend-region-extend): Minor improvements.
7210         (rst-mode, rst-compile): Use `setq-local'.
7211         (rst-cvs-header, rst-svn-rev, rst-svn-timestamp)
7212         (rst-official-version, rst-official-cvs-rev)
7213         (rst-package-emacs-version-alist): Maintain version tags.
7215 2016-07-30  Martin Rudalics  <rudalics@gmx.at>
7217         Fix calculation of tool bar width reported by `frame-geometry' (Bug#24107)
7219         * src/w32fns.c (Fw32_frame_geometry): Fix calculation of tool
7220         bar width (Bug#24107).  Reindent.
7221         * src/xfns.c (frame_geometry): Fix calculation of tool bar
7222         width on non-GTK builds.
7224 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7226         Fix region display while dragging mouse
7228         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
7229         buffer of the drag event, to allow mark to be set and the region
7230         be shown as we drag the mouse.  (Bug#24030)
7232 2016-07-30  Tino Calancha  <tino.calancha@gmail.com>
7234         Copy just non-empty strings to kill-ring
7236         * lisp/dired.el (dired-copy-filename-as-kill):
7237         Do not change the kill ring when the string is empty (Bug#24103).
7239 2016-07-30  Eli Zaretskii  <eliz@gnu.org>
7241         Avoid warnings about undo list while decoding
7243         * src/coding.c (coding_restore_undo_list): New function.
7244         (decode_coding_gap, decode_coding_object): Temporarily set the
7245         buffer's undo list to t, to avoid warnings when decoding changes
7246         the buffer many times, e.g. due to post-read-conversion.  Use
7247         coding_restore_undo_list to make sure the undo list is restored.
7248         (Bug#23813)
7250 2016-07-28  Noam Postavsky  <npostavs@gmail.com>
7252         profiler: Add mouse-1 binding for tree expansion
7254         (profiler-report-mode-map): Add mouse-1 binding for
7255         profiler-report-toggle-entry (Bug #13455).
7257 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
7259         Enable addition of local printers from a mode hook.
7261         * doc/misc/ses.texi (Printer functions): Split the node into 5
7262         sub-nodes + add some extra documentation.
7263         (Various kinds of printer functions): Make an itemisation to
7264         disintguish better the 3 types of printers, give an example of
7265         lambda printer definition.
7266         (Standard printer functions): Add documentation for ses-prin1
7267         printer function.
7268         (Local printer functions): Add documentation for creating
7269         local printers programmatically from a hook.
7270         (Writing a lambda printer function): Add documentation about
7271         anti-stackoverflow precautions to take when you call the
7272         standard printer functions from inside a local printer.
7274         * lisp/ses.el (ses-standard-printer-functions): Add ses-prin1
7275         among standard printer function, and update docstring
7276         accordingly.
7277         (ses-call-printer, ses-export-tab): Call `ses-prin1' instead
7278         of prin1-to-string.
7279         (ses-define-local-printer): Add definition to arguments so
7280         that a local printer can be defined programmatically from a
7281         mode hook.  Make docstring more substantial.  Use completing
7282         read for local printer name input.  Plus some minor
7283         optimization.
7284         (ses-define-if-new-local-printer): New defsubst.
7285         (ses-center, ses-center-span, ses-dashfill)
7286         (ses-dashfill-span, ses-tildefill-span): Allow to pass printer
7287         as an optional argument to superseed column printer/default
7288         spreadsheet printer.
7289         (ses-prin1): New defun.
7291 2016-07-27  Ted Zlatanov  <tzz@lifelogs.com>
7293         Prompt to save gnus-cloud-method.
7295         Since `gnus-cloud-method' is a defcustom, when it's set, we should
7296         prompt the user to save it, so the customization is not lost on
7297         restart.
7299         * lisp/gnus/gnus-srvr.el (gnus-server-toggle-cloud-method-server):
7300         Prompt to save the customization of `gnus-cloud-method'.
7302 2016-07-27  Ken Brown  <kbrown@cornell.edu>
7304         Fix dired-test-bug22694
7306         * test/lisp/dired-tests.el (dired-test-bug22694): Delete the
7307         "bug22694" directory, if it exists, before running the test.  It
7308         might be left over from a previous aborted run of the test.
7310 2016-07-27  Michal Nazarewicz  <mina86@mina86.com>
7312         Fix ‘is multibyte’ test regex.c’s mutually_exclusive_p (bug#24020)
7314         * src/regex.c (mutually_exclusive_p): Fix how whether character is
7315         unibyte is tested when calling execute_charset function.  This bug has
7316         been introduced by [6dc6b00: Fix ‘[[:cc:]]*literal’ regex failing to
7317         match ‘literal’] which dropped a call to IS_REAL_ASCII (c) macro.
7318         Reinstitute it.
7320 2016-07-27  Tino Calancha  <tino.calancha@gmail.com>
7322         Remove hook when disabling ibuffer-auto-mode
7324         * lisp/ibuf-ext.el (ibuffer-auto-mode):
7325         Remove 'ibuffer-auto-update-changed' from 'post-command-hook'.
7327 2016-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
7329         * lisp/subr.el (cancel-change-group): Reset cell in case of error
7331         Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
7332         to make sure we properly undo the temporary change even in case of error.
7334 2016-07-26  Eli Zaretskii  <eliz@gnu.org>
7336         Avoid segfaults in compute_motion
7338         * src/indent.c (compute_motion): Don't turn on and don't use the
7339         width cache unless the buffer's width-table is non-nil.  This
7340         avoids segfaults because code that uses the width cache assumes
7341         the width-table exists.  (Bug#24064)
7343 2016-07-26  Nicolas Petton  <nicolas@petton.fr>
7345         Do not sharp-quote lambdas
7347         * lisp/progmodes/sql.el: Remove sharp-quotes in lambdas.
7349 2016-07-25  Ted Zlatanov  <tzz@lifelogs.com>
7351         * lisp/gnus/gnus-cloud.el (gnus-cloud-encode-data): Fix
7352         'base64-gzip encoding.
7354 2016-07-25  Andrew Hyatt  <ahyatt@gmail.com>
7356         Add warning to format-alist docs.
7358         */doc/lispref/files.texi (format-alist) Change documentation for
7359         format-alist to warn against file modifications when formatting, which
7360         leads to incorrect results.  (Bug#5440)
7362         Changes suggested by Eli.
7364 2016-07-25  Katsumi Yamaoka  <yamaoka@jpl.org>
7366         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7367         Preserve key bindings that shr adds (bug#23964).
7369 2016-07-25  Michal Nazarewicz  <mina86@mina86.com>
7371         Fix ‘[[:cc:]]*literal’ regex failing to match ‘literal’ (bug#24020)
7373         The regex engine tries to optimise Kleene star by avoiding backtracking
7374         when it can detect that star’s operand cannot match what follows it in
7375         the pattern.
7377         For example, when ‘[[:alpha:]]*1’ tries to match a ‘foo’, the engine
7378         will test the longest match for ‘[[:alpha:]]*’, namely ’foo’ which is
7379         the entire string.  Literal digit one still present in the pattern will
7380         however not match the remaining empty string.
7382         Normally, backtracking would be performed trying a shorter match for the
7383         character class (namely ‘fo’ leaving ‘o’ in the string), but since the
7384         engine knows whatever would be put back into the string cannot possibly
7385         match literal digit one so no backtracking will be attempted.
7387         In the regexes of the form ‘[[:CC:]]*X’, the optimisation can be applied
7388         if the character class CC does not match character X.  In the above
7389         example, this holds because digit one is not in alpha character class.
7391         This test is performed by mutually_exclusive_p function but it did not
7392         check class bits of a charset opcode.  This resulted in an assumption
7393         that character classes do not match multibyte characters.  For example,
7394         it would incorrectly conclude that [[:alpha:]] doesn’t match ‘ż’.
7396         This, in turn, led to the aforementioned Kleene star optimisation being
7397         incorrectly applied in patterns such as ‘[[:graph:]]*☠’ (which should
7398         match ‘☠’ but doesn’t as can be tested by executing
7399             (string-match-p "[[:graph:]]*☠" "☠")
7400         which should return 0 but instead yields nil.
7402         This issue affects any class witch matches multibyte characters, i.e.
7403         if ‘[[:cc:]]’ matches a multibyte character X then ‘[[:cc:]]*X’ will
7404         fail to match ‘X’.
7406         * src/regex.c (executing_charset): A new function for executing the
7407         charset and charset_not opcodes.  It performs check on the character
7408         taking into consideration existing bitmap, range table and class bits.
7409         It also advances the pointer in the regex bytecode past the parsed
7410         opcode.
7411         (CHARSET_LOOKUP_RANGE_TABLE_RAW, CHARSET_LOOKUP_RANGE_TABLE): Removed.
7412         Code now included in executing_charset.
7413         (mutually_exclusive_p, re_match_2_internal): Changed to take advantage
7414         of executing_charset function.
7416         * test/src/regex-tests.el: New file with tests for the character class
7417         matching.
7419 2016-07-25  Nicolas Petton  <nicolas@petton.fr>
7421         Fix auto-reverting image-mode buffer (bug#21598)
7423         When auto-reverting an image buffer, `image-mode' is not called since
7424         `revert-buffer' is called with `preserve-modes' set to non-nil.
7426         * lisp/image-mode.el (image-after-revert-hook): Check if there is an
7427         image display property for the current buffer before updating it.
7429 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7431         ‘signal’ no longer returns
7433         Although for decades ‘signal’ has been documented to not return,
7434         a corner case in the Lisp debugger causes ‘signal’ to return.
7435         Remove the corner case and adjust Emacs internals accordingly.
7436         An alternative would be to document the corner case, but this
7437         would complicate the Lisp API unnecessarily.  (Bug#24047)
7438         * src/eval.c (signal_or_quit): New function, with most of the
7439         old contents of Fsignal.
7440         (quit): New function, which uses signal_or_quit and which
7441         might return.  All keyboard-based callers of Fsignal (Qquit,
7442         Qnil) changed to use this new function instead.
7443         (Fsignal): Use signal_or_quit.  Now _Noreturn.  All callers
7444         changed.
7445         (xsignal): Move to lisp.h.
7446         * src/lisp.h (xsignal): Now an inline function, as it's now
7447         just an alias for Fsignal.
7449 2016-07-24  Paul Eggert  <eggert@cs.ucla.edu>
7451         Require libgnutls unless --with-gnutls=no
7453         * configure.ac: Report an error if the gnutls library is missing,
7454         unless --with-gnutls=no is specified.
7456 2016-07-23  Alan Mackenzie  <acm@muc.de>
7458         Fontify C++ parameter packs.
7460         This fixes debbugs #23610.
7462         * lisp/progmodes/cc-langs.el (c-pack-ops, c-pack-key): New
7463         c-lang-defconsts/defvars.
7464         (c-type-decl-prefix-key): Add "..." and "&&" into the C++ version.
7466         * lisp/progmodes/cc-engine.el (c-forward-type): Handle matches of c-pack-key.
7468 2016-07-23  Alan Mackenzie  <acm@muc.de>
7470         Java Mode: Handle strings as case labels correctly.
7472         This fixes debbugs #23901.
7474         * lisp/progmodes/cc-langs.el (c-nonlabel-token-key): Remove "\"" from the
7475         Java value.
7477 2016-07-22  Kaushal Modi  <kaushal.modi@gmail.com>
7479         Avoid repeated warnings while restoring desktop
7481         * lisp/desktop.el (desktop-restore-file-buffer): Do not print warnings
7482         when files are being opened during desktop restore.
7484 2016-07-22  Eli Zaretskii  <eliz@gnu.org>
7486         Fix compilation warning in the MinGW build
7488         * nt/inc/ms-w32.h: Include stdint.h.
7489         (_execvp, execve): Provide prototypes.
7491         * lib-src/emacsclient.c [WINDOWSNT]: Remove prototype for execvp,
7492         it is now in nt/inc/ms-w32.h.
7493         * lib-src/ntlib.c (getppid): Avoid compiler warnings due to format
7494         mismatch.
7495         (sys_ctime): Remove, not used.
7497 2016-07-22  Lars Ingebrigtsen  <larsi@gnus.org>
7499         Move read-multiple-choice to subr-x.el
7501         * lisp/faces.el (read-multiple-choice-face): Fix doc string.
7503         * lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
7504         from subr.el.
7506         * lisp/gnus/message.el (subr-x): Ditto.
7508         * lisp/net/nsm.el: Require subr-x for read-multiple-choice.
7510         read-multiple-choice doesn't need to be in the dumped Emacs, so move
7511         it to a less central file.
7513 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7515         Update define-ibuffer-op doc string
7517         * lisp/ibuf-macs.el (define-ibuffer-op):
7518         Mention that BODY is evaluated with 'buf' bound to the actual
7519         marked buffer being processed.
7521 2016-07-22  Tino Calancha  <tino.calancha@gmail.com>
7523         Update define-ibuffer-op doc string
7525         * lisp/ibuf-macs.el (define-ibuffer-op): Document arg COMPLEX
7526         instead of refer the reader to the source code.
7527         Document arg BODY.
7529 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7531         Fix shell-command[-on-region] doc strings
7533         * lisp/simple.el (shell-command, shell-command-on-region):
7534         Drop the sentence saying that the command may delete the buffer
7535         '*Shell Command Output*': the command never delete such
7536         buffer (Bug#23936).
7538 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7540         ;Revert ";Partially revert 2649105a"
7542         This reverts commit b7651649c2b1321a0c510116c1ac2442599d9a2e.
7544 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
7546         ;Partially revert 2649105a
7548         * lisp/textmodes/tex-mode.el (tex-common-initialization): Use
7549         setq-local to modify prettify-symbols-compose-predicate.
7551 2016-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7553         * src/bytecode.c: Fix compilation with BYTE_CODE_SAFE
7555         (struct byte_stack): Re-add `bottom'.
7556         (exec_byte_code): Initialize it.
7558 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7560         Ibuffer: Use default output buffer for shell commands
7562         * lisp/ibuf-ext.el (shell-command-pipe): Insert the output in buffer
7563         '*Shell Command Output*', as command 'shell-command-file'.
7565 2016-07-21  Tino Calancha  <tino.calancha@gmail.com>
7567         Fix failing test
7569         * test/lisp/erc/erc-track-tests.el (erc-track--erc-faces-in):
7570         Enable Font Lock mode in order to initialize
7571         'char-property-alias-alist' (Bug#23954).
7573 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
7575         Fix use-after-close in connect_network_socket
7577         * src/process.c (connect_network_socket): Don’t use
7578         external_sock_fd after closing it.  Problem found by Coverity Scan.
7580 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
7582         * lisp/net/shr.el (shr-fill-line):
7583         Preserve text properties in folded lines (bug#24034).
7585 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7587         Fix lifetime bug in tzlookup
7589         * src/editfns.c (tzlookup): Fix storage lifetime bug when
7590         INTEGERP (zone) && settz.  Problem found by Coverity Scan.
7592 2016-07-20  Lars Ingebrigtsen  <larsi@gnus.org>
7594         Fix shr.el/image build problem
7596         (Bug#24035)
7598         * lisp/net/shr.el: Require image, since some builds seem to
7599         break without it (bug#24035).
7601 2016-07-20  Ted Zlatanov  <tzz@lifelogs.com>
7603         Bring the Gnus Cloud package into working order.
7605         * lisp/gnus/gnus-sync.el: Removed in favor of gnus-cloud.el.
7607         * lisp/gnus/gnus-cloud.el: Autoload EPG functions. Change storage format to
7608         simplify non-file data.
7609         (gnus-cloud-storage-method): New defcustom to support nil, Base64,
7610         Base64+gzip, or EPG encoding on the Gnus Cloud IMAP server. Defaults to
7611         EPG if that's available, Base64+gzip otherwise.
7612         (gnus-cloud-interactive): New defcustom to make Gnus Cloud operations
7613         interactive, defaults to enabled.
7614         (gnus-cloud-group-name): New variable for the Gnus Cloud group name.
7615         (gnus-cloud-make-chunk): Tag with "Gnus-Cloud-Version" instead of just
7616         "Version".
7617         (gnus-cloud-insert-data): Simplify and support :newsrc-data entries.
7618         (gnus-cloud-encode-data, gnus-cloud-decode-data): Support various
7619         storage methods as per gnus-cloud-storage-method.
7620         (gnus-cloud-parse-chunk): Look for "Gnus-Cloud-Version" marker.
7621         (gnus-cloud-parse-version-1): Fix parsing loop bug. Handle :newsrc-data
7622         entries.
7623         (gnus-cloud-update-all): Handle :newsrc-data entries and dispatch to
7624         file and data handlers.
7625         (gnus-cloud-update-newsrc-data): New function to handle :newrsc-data
7626         entries.
7627         (gnus-cloud-update-file): Rework to support gnus-cloud-interactive and
7628         be more careful.
7629         (gnus-cloud-delete-file): Remove; merged into gnus-cloud-update-file.
7630         (gnus-cloud-file-covered-p, gnus-cloud-all-files)
7631         (gnus-cloud-files-to-upload, gnus-cloud-ensure-cloud-group)
7632         (gnus-cloud-add-timestamps, gnus-cloud-available-chunks)
7633         (gnus-cloud-prune-old-chunks): Fix indentation.
7634         (gnus-cloud-timestamp): New function to make a standard Gnus Cloud
7635         timestamp.
7636         (gnus-cloud-file-new-p): Use it.
7637         (gnus-cloud-upload-all-data): Add interactive convenience function to
7638         upload all data.
7639         (gnus-cloud-upload-data): Make interactive; collect files and newsrc
7640         data separately; refresh Gnus Cloud group after insert.
7641         (gnus-cloud-download-all-data): Add interactive convenience function to
7642         download all data.
7643         (gnus-cloud-download-data): Rework to support "Gnus-Cloud-Version"
7644         marker and different storage methods.
7645         (gnus-cloud-host-server-p): New function to check if a server is the
7646         Gnus Cloud host.
7647         (gnus-cloud-collect-full-newsrc): Tag entries with :newsrc-data.
7648         (gnus-cloud-host-acceptable-method-p): New function so
7649         other code can check if a server method can host the Gnus cloud.
7650         (gnus-cloud-storage-method): Use 'radio instead of 'choice for better UI.
7651         (gnus-cloud-method): Make this a defcustom and note how to set it.
7653         * lisp/gnus/gnus-group.el (gnus-group-cloud-map): Add Gnus Cloud autoloaded
7654         keybindings under the `~' prefix.
7656         * lisp/gnus/gnus-srvr.el (gnus-server-mode-map, gnus-server-make-menu-bar)
7657         (gnus-server-cloud, gnus-server-cloud-host)
7658         (gnus-server-font-lock-keywords, gnus-server-insert-server-line)
7659         (gnus-server-toggle-cloud-method-server): Support Gnus Cloud
7660         synchronized servers and synchronization host server toggling (`i' and
7661         `I') and visual display.
7662         (gnus-server-toggle-cloud-method-server): Use
7663         gnus-cloud-host-acceptable-method-p.
7664         (gnus-server-toggle-cloud-method-server): Use custom-set-variables to
7665         set the gnus-cloud-method. Ask the user if it's OK to upload the data
7666         right now.
7668         * doc/misc/gnus.texi: Document Gnus Cloud package.
7670 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7672         Remove CHECK_FRAME_FONT cruft from bytecode.c
7674         * src/bytecode.c [CHECK_FRAME_FONT]: Do not include frame.h, xterm.h.
7675         Remove some old ‘#if 0’ code.
7677 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7679         Work around GCC bug 54561 in a better way
7681         The new approach is less selective, but also less intrusive on C code.
7682         * src/bytecode.c, src/image.c, src/keyboard.c: Ignore -Wclobbered.
7683         * src/conf_post.h (NONVOLATILE): Remove.  All uses removed.
7685 2016-07-20  Paul Eggert  <eggert@cs.ucla.edu>
7687         Fix port to glibc 2.24 (pre-release) + ppc64
7689         * src/callproc.c (child_setup): Use emacs_exec_file
7690         so that ASLR is enabled in the child process.
7691         * src/emacs.c: Move some personality details into sys/sysdep.c.
7692         Do not include <sys/personality.h>.
7693         (main): Disable ASLR earlier, so that we don’t chdir twice.
7694         * src/lisp.h (disable_address_randomization): New decl.
7695         * src/sysdep.c (disable_address_randomization)
7696         [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]: Move personality details
7697         here from emacs.c.
7698         (emacs_exec_file): New function.
7700 2016-07-19  Alan Third  <alan@idiocy.org>
7702         Prevent bar cursor overwriting next glyph (bug#16856)
7704         * src/nsterm.m (ns_draw_window_cursor): Test glyph width vs cursor width
7705         before setting final size.
7707 2016-07-19  Eli Zaretskii  <eliz@gnu.org>
7709         Fix 'transpose-regions' when LEAVE-MARKERS arg is non-nil
7711         * src/insdel.c (adjust_markers_bytepos): New function.
7712         * src/lisp.h (adjust_markers_bytepos): Add prototype.
7713         * src/insdel.c (replace_range, replace_range_2):
7714         * src/editfns.c (Ftranspose_regions): Call
7715         adjust_markers_bytepos.  (Bug#5131)
7717         * test/src/editfns-tests.el (transpose-test-reverse-word)
7718         (transpose-test-get-byte-positions): New functions.
7719         (transpose-ascii-regions-test)
7720         (transpose-nonascii-regions-test-1)
7721         (transpose-nonascii-regions-test-2): New tests.
7723 2016-07-19  Katsumi Yamaoka  <yamaoka@jpl.org>
7725         Make gif animation work (bug#24004)
7727         * lisp/image.el (image-animate-timeout): Fix the logic that tests if
7728         an animation is too big (bug#24004).
7730 2016-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
7732         * lisp/simple.el (undo-amalgamate-change-group): New function
7734         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Use it.
7735         (viper-set-complex-command-for-undo): Save current state with
7736         prepare-change-group.
7737         * lisp/emulation/viper-init.el (viper-undo-needs-adjustment)
7738         (viper-buffer-undo-list-mark): Remove.
7740 2016-07-18  Noam Postavsky  <npostavs@gmail.com>
7742         Keep w32 environment settings internal only
7744         * src/emacs.c (main) [WINDOWSNT]: Move init_environment calls after the
7745         set_initial_environment call.  This prevents Emacs' modifications to the
7746         environment from contaminating Vprocess_environment and
7747         Vinitial_environment (Bug #10980).
7748         * src/callproc.c (getenv_internal) [WINDOWSNT]: Consult Emacs' internal
7749         environment in as a fallback to Vprocess_environment.
7750         * test/src/callproc-tests.el (initial-environment-preserved): New Test.
7752 2016-07-18  Nicolas Petton  <nicolas@petton.fr>
7754         Better documentation for cl-reduce (bug#24014)
7756         * lisp/emacs-lisp/cl-seq.el (cl-reduce): Explain what reducing means.
7758 2016-07-17  Alan Third  <alan@idiocy.org>
7760         Remove separate pool for popup dialogs (bug#23856)
7762         * src/nsmenu.m (pop_down_menu, ns_popup_dialog): Remove references to
7763         autorelease pool and Popdown_data struct.
7765 2016-07-17  Mark Oteiza  <mvoteiza@udel.edu>
7767         Use eldoc-documentation-functions
7769         * lisp/hexl.el (hexl-mode):
7770         * lisp/ielm.el (inferior-emacs-lisp-mode):
7771         * lisp/progmodes/cfengine.el (cfengine3-mode):
7772         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
7773         * lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
7774         * lisp/progmodes/python.el (python-mode):
7775         * lisp/simple.el (read--expression): Add buffer-locally to hook
7776         eldoc-documentation-functions.
7778 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7780         Optimize ucs-normalize.el compilation
7782         * lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
7783         (quick-check-list-to-regexp): Use regexp-opt-charset instead of
7784         regexp-opt.
7785         * lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
7786         temp buffer for the whole loop.
7788 2016-07-16  Noam Postavsky  <npostavs@gmail.com>
7790         Add tests for ucs-normalize.el
7792         Some tests are marked as expected to fail.
7794         * test/lisp/international/ucs-normalize-tests.el: New tests.
7795         * admin/unidata/NormalizationTest.txt: Add data for tests.
7796         * admin/unidata/README: Add URL for NormalizationTest.txt.
7797         * admin/notes/unicode: Add note about running (and updating the data
7798         for) the new tests.  Remove note about normalization being unsupported.
7800 2016-07-16  Alan Third  <alan@idiocy.org>
7802         Fix cursor display (bug#23993)
7804         * src/xdisp.c (get_phys_cursor_geometry): Fix invalid C operator.
7806 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7808         Stop worrying about Alliant in bytecode.c
7810         * src/bytecode.c (PUSH): Remove workaround for long-obsolete compiler.
7812 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7814         Remove BYTE_MAINTAIN_TOP
7816         It is no longer needed now that we assume GC_MARK_STACK ==
7817         GC_MAKE_GCPROS_NOOPS.
7818         * src/bytecode.c (BYTE_MAINTAIN_TOP): Remove.
7819         All uses removed, and code simplified accordingly.
7820         (BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Remove, since they
7821         are always no-ops now.  All uses removed.
7822         (MAYBE_GC): Remove.  All uses replaced by maybe_gc,
7823         since it is now equivalent.
7825 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7827         Remove now-inaccurate bytecode comments
7829         * src/bytecode.c: Remove comments that are no longer accurate.
7830         Most of these are actually old ChangeLog entries.
7832 2016-07-15  Paul Eggert  <eggert@cs.ucla.edu>
7834         Port to glibc 2.24 (pre-release) + ppc64
7836         Inspired by a suggestion by Florian Weimer in:
7837         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
7838         * configure.ac (HAVE_PERSONALITY_ADDR_NO_RANDOMIZE):
7839         Rename from HAVE_PERSONALITY_LINUX32, and check for
7840         ADDR_NO_RANDOMIZE (the crucial thing) instead of for LINUX32.
7841         All uses changed.
7842         * src/emacs.c (main) [HAVE_PERSONALITY_ADDR_NO_RANDOMIZE]:
7843         Use ADDR_NO_RANDOMIZE from personality.h rather than inventing the
7844         flag ourselves.  Just set that flag, rather than also setting the
7845         persona.  When doing it, avoid functions like putenv that may
7846         allocate memory.
7848 2016-07-14  Mark Oteiza  <mvoteiza@udel.edu>
7850         Revert "Add a couple cells to lisp-prettify-symbols-alist"
7852         This reverts commit bdda4855c635ecf4135e23321bdba023e9ae65c9.
7854 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7856         * lisp/simple.el (shell-command): Add save-match-data comment
7858 2016-07-14  Alan Mackenzie  <acm@muc.de>
7860         CC Mode: correct incorrect invocation of parse-partial-sexp.
7862         Fixes bug #23944.
7864         * lisp/progmodes/cc-engine.el (c-literal-limits): make the sixth argument of
7865         an invocation of parse-partial-sexp 'syntax-table, not the fourth.
7867 2016-07-14  Andreas Schwab  <schwab@suse.de>
7869         Fix configure summary for hybrid malloc configurations
7871         * configure.ac ("$hybrid_malloc" = yes): Set GNU_MALLOC to no,
7872         parenthesize value of GNU_MALLOC_reason.
7874 2016-07-14  Stephen Berman  <stephen.berman@gmx.net>
7876         Fix delete-duplicate-lines
7878         * lisp/sort.el (delete-duplicate-lines): Delete duplicate
7879         first line when operating backward (bug#23863).
7881 2016-07-14  Andreas Schwab  <schwab@suse.de>
7883         Remove unused SHEAP_OBJ
7885         * Makefile.in (base_obj): Remove $(SHEAP_OBJ).
7887 2016-07-13  Katsumi Yamaoka  <yamaoka@jpl.org>
7889         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
7890         Use shr-image-map instead of shr-map (bug#23964).
7892 2016-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7894         * lisp/mouse.el (mouse): Consolidate group definition here
7896         * lisp/cus-edit.el (mouse): Remove both group definitions.
7898 2016-07-13  Chris Feng  <chris.w.feng@gmail.com>
7900         Include versioned preloaded libraries in `package--builtin-versions'
7902         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Do not
7903         exclude preloaded libraries or remove entries generated for them.
7904         (autoload-generate-file-autoloads): Do not generate autoload
7905         statements for preloaded libraries.
7907 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7909         Omit unnecessary #includes from xwidget.c
7911         * src/xwidget.c: Remove #include directives that are not needed.
7912         Also, don’t conditionalize #includes on HAVE_X_WINDOWS, since this
7913         file is compiled only if the X interface is available.
7915 2016-07-13  Paul Eggert  <eggert@cs.ucla.edu>
7917         Port xwidget.c to GCC 6 with --enable-gcc-warnings
7919         * src/xwidget.c (x_draw_xwidget_glyph_string, xwidget_end_redisplay):
7920         Adjust to pacify GCC.  Add a couple of FIXME comments, suggesting
7921         possible bugs found by GCC.
7923 2016-07-12  Tino Calancha  <tino.calancha@gmail.com>
7925         Escape meta chars in commands processed by shell
7927         * lisp/progmodes/grep.el (grep-compute-defaults): Quote braces
7928         in all commands to be passed to a shell (Bug#23959).
7930 2016-07-12  John Wiegley  <johnw@newartisans.com>
7932         Revert "Cleanup tooltips"
7934         This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921.
7936         I am reverting this change because it was applied without prior discussion
7937         on emacs-devel, and has been found to break the NS port.  It needs more
7938         testing and review before it should be applied here.
7940 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7942         * lisp/emacs-lisp/cl-macs.el (cl--prog): New function
7944         (cl-prog, cl-prog*): New macros.
7946 2016-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7948         * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic
7950         * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Make docstring dynamic.
7951         (cl--generic-make-defmethod-docstring): New function for that.
7952         (cl-defmethod, cl-generic-generalizers): Tweak docstrings accordingly.
7953         (cl-generic-define-method, cl--generic-describe): Change `load-history'
7954         format of cl-defmethods, so as not to confused methods with equal
7955         specializers but different qualifiers.
7956         * lisp/emacs-lisp/eieio-core.el (cl-generic-generalizers): Provide docstrings.
7958 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
7960         Don't install keyboard hook when debugged on MS-Windows
7962         * src/w32fns.c (setup_w32_kbdhook): Don't install the keyboard
7963         hook if we are being debugged.  This avoids hosing the debugger,
7964         because the hook is global, and is called in the context of the
7965         thread which installed it, and that thread is stopped when GDB has
7966         control.  Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
7968 2016-07-12  Alan Mackenzie  <acm@muc.de>
7970         Amend CC Mode to handle big C++ raw strings correctly.
7972         Problems were caused by such a string spanning jit-lock chunks, and by a flaw
7973         in the +-500 bytes boundaries imposed for macros.
7975         * lisp/progmodes/cc-mode.el (c-extend-region-for-CPP): Check the +-500 byte
7976         macro boundaries here.
7977         (c-extend-font-lock-region-for-macros): Remove the check on the +-500 byte
7978         lower boundary.  Fix the check on the upper boundary.
7980         * lisp/progmodes/cc-fonts.el (c-font-lock-raw-strings): Handle the starting
7981         point already being within a raw string.
7983         * lisp/progmodes/cc-engine.el (c-raw-string-pos)
7984         (c-depropertize-raw-strings-in-region, c-after-change-re-mark-raw-strings):
7985         Modify regexp element "\\{,16\\}" to "\\{0,16\\}" for greater compatibility
7986         with other Emacsen.
7988 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
7990         * lisp/mouse.el (mouse-select-region-move-to-beginning): Add :group.
7992 2016-07-11  Dmitry Antipov  <dmantipov@yandex.ru>
7994         Cleanup tooltips
7996         * src/dispextern.h (toplevel): Remove 'tip_frame' and 'tip_window' decls.
7997         * src/frame.h (struct frame): New bitfield to indicate tooltip frame.
7998         (FRAME_TOOLTIP_P): New macro.
7999         * src/frame.c (make_frame): Mark new frame as regular frame by default.
8000         (Fframe_list, delete_frame): Redesign to use FRAME_TOOLTIP_P.
8001         (syms_of_frame): Don't DEFSYM 'Qtooltip' but use 'Qtooltip_timer'
8002         and 'Qtooltip_parameters' instead.
8003         * src/gtkutil.h (toplevel): Add 'xg_hide_tip' decl.
8004         * src/gtkutil.c (xg_hide_tip): New function.
8005         (xg_hide_tooltip): Adjust to cancel GTK event loop timeout if needed.
8006         * src/menu.c (Fx_popup_menu): Adjust call to Fx_hide_tip.
8007         * src/nsfns.m (toplevel): Remove 'tip_frame' leftover.
8008         * src/w32fns.c (unwind_create_tip_frame): Remove.
8009         (w32_display_monitor_attributes_list)
8010         (w32_display_monitor_attributes_list_fallback): Use FRAME_TOOLTIP_P.
8011         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8012         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8013         as a tooltip frame and record it using appropriate display info.
8014         (x_hide_tooltip): Add frame arg.
8015         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8016         base frame parameters, store tooltip hide timer among tooltip frame
8017         parameters.
8018         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8019         (syms_of_w32fns): Don't DEFSYM 'Qtip_frame', don't initialize
8020         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8021         * src/w32term.c (w32_read_socket): Extract tooltip window id from
8022         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8023         (x_new_font): Use FRAME_TOOLTIP_P.
8024         (x_free_frame_resources): Reset pointer to tooltip frame.
8025         * src/w32term.h (struct w32_display_info): New member 'w32_tooltip_frame'.
8026         * src/xdisp.c (init_iterator, x_consider_frame_title, prepare_menu_bars):
8027         Use FRAME_TOOLTIP_P.
8028         * src/xfns.c (x_make_monitor_attribute_list)
8029         (Fx_display_monitor_attributes_list): Likewise.
8030         (unwind_create_tip_frame): Remove.
8031         (toplevel): Remove 'tip_frame', 'tip_window' and 'last_show_tip_args'.
8032         (x_create_tip_frame): Use do_unwind_create_frame.  Mark new frame
8033         as a tooltip frame and record it using appropriate display info.
8034         (x_hide_tooltip): Add frame arg.
8035         (Fx_show_tip): Adjust to avoid globals, store tooltip parameters among
8036         base frame parameters, store tooltip hide timer among tooltip frame
8037         parameters.  To hide GTK system tooltip, use timeout hooked into GTK
8038         event loop.
8039         (Fx_hide_tip): Add frame arg, hide tooltips on all displays by default.
8040         (syms_of_xfns): Don't DEFSYM 'Qtip_frame', don't initialize
8041         and GC-protect 'tip_timer', 'tip_frame' and 'last_show_tip_args'.
8042         * src/xterm.c (handle_one_xevent): Extract tooltip window id from
8043         per-display data.  Use FRAME_TOOLTIP_P where appropriate.
8044         (x_new_font, x_set_window_size): Use FRAME_TOOLTIP_P.
8045         (x_free_frame_resources): Reset pointer to tooltip frame.
8046         * src/xterm.h (struct x_display_info): New member 'x_tooltip_frame'.
8047         (struct x_output) [USE_GTK_TOOLTIP]: New member 'ttip_timeout'.
8049 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8051         * src/fns.c (syms_of_fns): Leave `features' lexically scoped
8053 2016-07-11  Mario Lang  <mlang@delysid.org>
8055         Test mapcan
8057         * test/src/fns-tests.el (fns-tests-mapcan): New test.
8059 2016-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8061         Prevent to apply funcall on t
8063         * lisp/vc/ediff-util.el (ediff-really-quit): Ignore the global part of
8064         'ediff-after-quit-hook-internal' hook (Bug#23933).
8066 2016-07-11  Tino Calancha  <tino.calancha@gmail.com>
8068         Ignore angle mode while simplifying units
8070         * lisp/calc/calc-forms.el (math-to-hms, math-from-hms):
8071         Ignore value of 'calc-angle-mode' when 'math-simplifying-units'
8072         is non-nil (Bug#23889).
8073         * lisp/calc/calc-math.el (math-to-radians, math-from-radians)
8074         (math-from-radians-2, math-to-radians-2): Idem.
8076 2016-07-11  Eli Zaretskii  <eliz@gnu.org>
8078         Fix display of composed characters
8080         * src/xdisp.c (x_produce_glyphs): Fix off-by-one error in
8081         iteration through composition glyphs.  (Bug#23938)
8083 2016-07-11  Paul Eggert  <eggert@cs.ucla.edu>
8085         Fix composition bug caused by off-by-1 typo
8087         * src/xdisp.c (x_produce_glyphs): Fix off-by-one typo when
8088         computing composition glyph (Bug#23938).
8090 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8092         Dired always read file system
8094         * lisp/dired.el (dired-always-read-filesystem): Add new option.
8095         (dired-mark-files-containing-regexp): Use it (Bug#22694).
8096         * doc/emacs/dired.texi: Mention it in the manual.
8097         * test/lisp/dired-tests.el (dired-test-bug22694): Add test.
8098         ;* etc/NEWS: Add entry for this change.
8100 2016-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8102         * src/macfont.m (mac_font_shape): Make sure that total_advance is increasing.
8104 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8106         Avoid 'unused var' 'not left unused var' warnings
8108         * lisp/ibuffer.el (ibuffer-locked-buffer-p): Remove unused var 'char'.
8109         Rename used var '_buffer' to 'cbuffer'.
8111         * lisp/ibuf-ext.el (ibuffer-unmark-all): Rename used var '_mark'
8112         to cmark'.
8114 2016-07-10  Tino Calancha  <tino.calancha@gmail.com>
8116         * lisp/simple.el (shell-command, shell-command-on-region): Fix doc strings
8118 2016-07-10  Michael Albinus  <michael.albinus@gmx.de>
8120         Add a note how to use `tramp-own-remote-path'
8122         * doc/misc/tramp.texi (Inline methods, External methods)
8123         (Remote shell setup, Android shell setup)
8124         (Frequently Asked Questions, Frequently Asked Questions):
8125         Use @command and @samp consequently.
8126         (Remote programs): The remote shell must support the -l
8127         argument, in order to use `tramp-own-remote-path'.  (Bug#23914)
8129 2016-07-10  Alan Third  <alan@idiocy.org>
8131         Remove App Nap setting from Info.plist (bug#22993)
8133         * nextstep/templates/Info.plist.in: Remove LSAppNapIsDisabled key since
8134         it doesn't actually disable app nap.
8136 2016-07-09  Mario Lang  <mlang@delysid.org>
8138         An efficient built-in mapcan
8140         A built-in version of `mapcan' avoids consing up (and GC'ing) the
8141         intermediate list.
8143         * src/fns.c (Fmapcan): New built-in.
8144         (syms_of_fns): Define.
8146         * lisp/emacs-lisp/cl.el (mapcan): Remove defalias.
8148         * lisp/emacs-lisp/cl-extra.el (cl-mapcan): Use built-in `mapcan'
8149         if only one sequence is provided.
8151         * lisp/progmodes/hideif.el (hif-delimit):
8152         * lisp/dired-aux.el (dired-do-find-regexp):
8153         * lisp/woman.el (woman-parse-colon-path): Use `mapcan' instead of
8154         `cl-mapcan'.
8156         * lisp/woman.el (eval-when-compile): Require 'cl-lib only when
8157         compiling.
8159         * lisp/mouse.el (mouse-buffer-menu-map):
8160         * lisp/net/pop3.el (pop3-uidl-dele):
8161         * lisp/progmodes/gud.el (gud-jdb-build-source-files-list):
8162         * lisp/cedet/semantic/db-find.el (semanticdb-fast-strip-find-results):
8163         * lisp/cedet/semantic/symref/grep.el (semantic-symref-derive-find-filepatterns):
8164         * lisp/gnus/nnmail.el (nnmail-split-it):
8165         * lisp/gnus/gnus-sum.el (gnus-articles-in-thread):
8166         * lisp/gnus/gnus-registry.el (gnus-registry-sort-addresses):
8167         * lisp/gnus/gnus-util.el (gnus-mapcar): Use `mapcan'.
8169 2016-07-09  Tino Calancha  <tino.calancha@gmail.com>
8171         Detect aliases to built-in functions
8173         * lisp/help-fns.el (describe-function-1): Check for aliases
8174         defined with (defalias alias (symbol-function built-in)) (Bug#23887).
8176         * test/lisp/help-fns-tests.el (help-fns-test-bug23887): Untag as
8177         failing this test.
8179 2016-07-09  Michael Albinus  <michael.albinus@gmx.de>
8181         Avoid recursive detection of remote uid and gid in tramp-gvfs.el
8183         * lisp/net/tramp-gvfs.el (tramp-gvfs-get-remote-uid-gid-in-progress):
8184         New variable.
8185         (tramp-gvfs-maybe-open-connection): Use it.
8187         * test/lisp/net/tramp-tests.el (tramp-test18-file-attributes):
8188         Reorder test.
8190 2016-07-09  Jürgen Hötzel  <juergen@archlinux.org>
8192         Wrap around error in coreutil's ls
8194         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory): Add switch
8195         "--quoting-style=literal" if remote host supports quoting style.
8196         Recent versions of coreutils changed default quoting style to
8197         "--quoting=shell-escape".
8199 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
8201         Minor tweaks of copying text properties when padding strings
8203         * src/editfns.c (styled_format): Don't include padding on the left
8204         in the properties at the beginning of the string.  (Bug#23897)
8206         * test/src/editfns-tests.el (format-properties): Add tests for
8207         faces when the string is padded on the left or on the right.
8209 2016-07-08  Mario Lang  <mlang@delysid.org>
8211         No need to require the same feature twice.
8213         * lisp/dired-aux.el (require 'cl-lib): Remove.
8215 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8217         Turn on lexical binding
8219         * lisp/net/secrets.el (secrets-collection-handler): Use cl-pushnew.
8220         (secrets-search-items, secrets-create-item): Use append.
8221         (secrets-show-secrets): Remove unused binding.
8222         (secrets-expand-item, secrets-tree-widget-after-toggle-function):
8223         Ignore unused arguments.
8225 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8227         Derive secrets-mode from special-mode
8229         * lisp/net/secrets.el: Remove top-level secrets-mode hack.
8230         (secrets-mode-map): New variable.  Add key bindings to n and p for
8231         navigating lines.
8232         (secrets-mode): Derive from special-mode.  Remove keymap code and
8233         initialization code.  Do not record undo information.  Make
8234         secrets-show-collections the local revert-buffer-function.
8235         (secrets-show-collections): Change signature to satisfy revert-buffer.
8237 2016-07-08  Mark Oteiza  <mvoteiza@udel.edu>
8239         Add a couple cells to lisp-prettify-symbols-alist
8241         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist): Add
8242         "sqrt" and "not".
8244 2016-07-08  Michael Albinus  <michael.albinus@gmx.de>
8246         Detect remote uid and gid in tramp-gvfs.el
8248         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
8249         (tramp-gvfs-handler-mounted-unmounted)
8250         (tramp-gvfs-connection-mounted-p):
8251         Make "default-location" a connection property.
8252         (tramp-gvfs-get-remote-uid, tramp-gvfs-get-remote-gid): New defuns.
8253         (tramp-gvfs-maybe-open-connection): Use them.
8255 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
8257         Yet another fix for copying properties by 'format'
8259         * src/textprop.c (extend_property_ranges): Accept an additional
8260         argument OLD_END, and only extend the end of a property range if
8261         its original end is at OLD_END; all the other ranges are left
8262         intact.  (Bug#23897)
8263         * src/editfns.c (styled_format): Pass the original length of the
8264         string to 'extend_property_ranges'.
8265         * src/intervals.h (extend_property_ranges): Adjust prototype.
8267         * test/src/editfns-tests.el (format-properties): Add tests for
8268         bug#23897.
8270 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8272         Allow selecting region with mouse to move point to beginning
8274         * etc/NEWS: Mention new user option
8275         `mouse-select-region-move-to-beginning'.
8277         * doc/emacs/frames.texi (Mouse Commands): Add cross-reference
8278         to the following.
8279         (Word and Line Mouse): Describe how double-clicking mouse-1 to
8280         activate region and `mouse-select-region-move-to-beginning'
8281         affect point.
8283         * lisp/mouse.el (mouse-select-region-move-to-beginning): New defcustom.
8284         (mouse-set-point): Use it.  (Bug#23478)
8286 2016-07-08  Stephen Berman  <stephen.berman@gmx.net>
8288         Fix menu bar breakage
8290         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu): Use backquoting
8291         to prevent void variable errors, and fix typo (bug#23918).
8293 2016-07-08  Tino Calancha  <tino.calancha@gmail.com>
8295         Copy buffer names to kill ring
8297         * lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): New command.
8298         * lisp/ibuffer.el (ibuffer-mode-map): Bound it to 'B'.
8299         ;* etc/NEWS: Add entry for this new feature.
8301 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8303         Remove just input mark
8305         * lisp/ibuffer.el (ibuffer-unmark-all): When MARK is not ?\r remove
8306         just MARK.
8308 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8310         Ibuffer change marks
8312         * lisp/ibuffer.el (ibuffer-change-marks): New command.
8313         (ibuffer-mode-map): Bind it to '* c'.
8314         (ibuffer-mode-groups-popup): Update menus.
8315         (ibuffer-mode): Update mode doc.
8317 2016-07-07  Alan Third  <alan@idiocy.org>
8319         Prevent NS event loop being re-entered (bug#11049)
8321         * src/nsterm.m (ns_read_socket, ns_select): Return -1 if already
8322         in event loop instead of aborting.
8324 2016-07-07  Alan Third  <alan@idiocy.org>
8326         Fix some deprecated functions
8328         * src/nsterm.m (firstRectForCharacterRange): In OS X >10.6 replace
8329         convertBaseToScreen with convertRectToScreen.
8330         * src/nsmenu.m (ns_update_menubar): Remove attachedMenu, deprecated in
8331         OS X 10.2, and always seems to return nil.
8333 2016-07-07  Aaron Jensen  <aaronjensen@gmail.com>  (tiny change)
8335         Disable App Nap (bug#22993)
8337         * nextstep/templates/Info.plist.in: Insert AppNap disable code.
8339 2016-07-07  Michael Albinus  <michael.albinus@gmx.de>
8341         Fix an error in Tramp for rsync
8343         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
8344         Make it work for "rsync".
8345         (tramp-make-copy-program-file-name): Apply `directory-file-name'.
8347 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8349         Ibuffer: Mark locked buffers
8351         * lisp/ibuf-ext.el (ibuffer-locked-buffer-p): New defun.
8352         (ibuffer-mark-by-locked): New command.
8353         (ibuffer-mode-map): Bind it to '% L'; update menus.
8354         (ibuffer-mode): Update mode doc.
8355         ;* etc/NEWS: Add NEWS entry for these changes and previous two commits.
8357 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8359         * lisp/ibuffer.el: Add face for locked buffers
8361         * lisp/ibuffer.el: Add mark for locked buffers
8363         ;* etc/NEWS (Ibuffer): Update entry according with last commit
8365 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8367         Remove duplicate binding
8369         * lisp/ibuffer.el (ibuffer-mode-map): 'ibuffer-mark-by-content-regexp'
8370         just bound to '% g'.
8371         As suggested in:
8372         https://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00165.html
8374 2016-07-07  Tino Calancha  <tino.calancha@gmail.com>
8376         Ibuffer: Drop needless binding
8378         * lisp/ibuffer.el (ibuffer-mark-interactive): 'inhibit-read-only'
8379         already bound to 't' inside 'ibuffer-set-mark'.
8381 2016-07-07  Phillip Lord  <phillip.lord@russet.org.uk>
8383         Run tests from non-byte compiled files
8385         * test/Makefile.in: Eval non-byte-compiled files for tests.
8387 2016-07-06  Mark Oteiza  <mvoteiza@udel.edu>
8389         Replace eldoc-documentation-function with a hook
8391         * lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): New hook.
8392         (eldoc-documentation-function): Make into obsolete alias.
8393         (eldoc-echo-area-use-multiline-p, eldoc-highlight-function-argument):
8394         (eldoc-argument-case, global-eldoc-mode): Update docstrings.
8395         (eldoc-print-current-symbol-info): Use run-hook-with-args-until-success
8396         on eldoc-documentation-functions.
8397         (eldoc-supported-p): New function.
8398         (eldoc-mode, global-eldoc-mode, eldoc-schedule-timer): Use eldoc-supported-p.
8399         * etc/NEWS: Mention eldoc-documentation-functions.
8400         * doc/lispref/modes.texi: Update reference.
8402 2016-07-06  Simen Heggestøyl  <simenheg@gmail.com>
8404         Complete "initial" and "unset" in CSS mode
8406         * lisp/textmodes/css-mode.el (css--complete-property-value): Make
8407         "initial" and "unset" completion candidates for all CSS properties,
8408         just like "inherit".
8410         * test/lisp/textmodes/css-mode-tests.el
8411         (css-test-complete-property-value): Update test to reflect the above
8412         change.
8414 2016-07-06  Michael Albinus  <michael.albinus@gmx.de>
8416         * lisp/net/tramp-gvfs.el (tramp-gvfs-mount-spec): Fix typo.
8418 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
8420         Simplify rfc1345.el a bit
8422         * lisp/leim/quail/rfc1345.el: Omit commented-out codes for ASCII
8423         that would no longer parse.  Replace control characters with
8424         escapes in character constants.  Omit unnecessary \ after ?.
8425         This does not change behavior.
8427 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8429         Prefer 'frame-parameter' where it is expected to be a bit faster
8431         * lisp/international/mule-diag.el (mule-diag):
8432         * lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
8433         * lisp/mouse.el (mouse-drag-line, font-menu-add-default):
8434         * lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
8435         * lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
8437 2016-07-05  Dmitry Antipov  <dmantipov@yandex.ru>
8439         Reduce consing caused by vertical motion commands
8441         * src/frame.c (Fframe_parameter): Avoid call to Fframe_parameters for the
8442         parameters frequently requested by calls to 'next-line' and 'previous-line'.
8444 2016-07-05  Michael Albinus  <michael.albinus@gmx.de>
8446         Make all Tramp tests pass for "gdrive" method
8448         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-delete-directory)
8449         * lisp/net/tramp-compat.el (tramp-compat-copy-directory)
8450         (tramp-compat-delete-directory):
8451         * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
8452         Use `directory-files-no-dot-files-regexp'.
8454         * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted)
8455         (tramp-gvfs-send-command): Call `tramp-flush-file-property' in
8456         case of problems.
8458         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8459         Adapt docstring.
8460         (tramp-test14-delete-directory): Make further tests.
8462 2016-07-05  Eli Zaretskii  <eliz@gnu.org>
8464         Fix redisplay with window-start on continuation lines
8466         * src/xdisp.c (pos_visible_p): Return false if the window starts
8467         after CHARPOS.
8468         (compute_window_start_on_continuation_line): Don't return
8469         window-start position that is after point in the buffer, as the
8470         callers don't expect this to happen, and will generally display an
8471         empty window with the cursor in its middle.  (Bug#23871)
8473 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8475         Add :expected-result :failed for unfixed bug test
8477         * test/lisp/help-fns-tests.el (help-fns-test-bug23887):
8479 2016-07-05  Tino Calancha  <tino.calancha@gmail.com>
8481         * test/lisp/help-fns-tests.el: Add several tests for 'describe-function'.
8483 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8485         Don’t create unnecessary marker in ‘delete-trailing-whitespace’
8487         * lisp/simple.el (delete-trailing-whitespace): If END argument is nil,
8488         there is no need for the end-marker to be created.
8490 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8492         Simplify ‘delete-trailing-whitespace’ by not treating \n as whitespace
8494         * lisp/simple.el (delete-trailing-whitespace): Set newline’s character
8495         syntax to non-whitespace so that ‘\s-’ regular expression does not match
8496         it.
8498         This simplifies the loop slightly since a simple ‘\s-+$’ can be used and
8499         as a consequence ‘line-beginning-position’ function does not need to be
8500         called any longer.
8502         Furthermore, when newline has whitespace syntax, ‘\s-$’ regular
8503         expression ends up matching empty lins since ‘\s-’ matches newline
8504         characetr of proceeding line.  This leads to needless loop iterations.
8506         Since previous change to ‘delete-trailing-whitespace’ already introduced
8507         ‘with-syntax-table’, take advantage of it and also overwrite newline’s
8508         character syntax.
8510 2016-07-04  Michal Nazarewicz  <mina86@mina86.com>
8512         Make ‘delete-trailing-whitespace’ delete spaces after form feed
8514         * lisp/simple.el (delete-trailing-whitespace): Treat form fead as
8515         a non-whitespace character (regradless of whether it’s character syntax
8516         is whitespace) and delete any whitespace following it instead of leaving
8517         lines with form feeds completely unchanged.  I.e. a line like "\f " will
8518         now became "\f".
8520 2016-07-04  Dmitry Antipov  <dmantipov@yandex.ru>
8522         Cleanup XEditRes hack
8524         * configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if
8525         _XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be
8526         linked with -lXmu.  This should work with any non-ancient Xmu library.
8527         * src/xfns.c (toplevel): Remove old cruft.
8528         (x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES.
8529         * src/xterm.c (toplevel): Remove old cruft.
8530         (handle_one_xevent): Use X_TOOLKIT_EDITRES.
8531         * src/xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
8533 2016-07-04  Michael Albinus  <michael.albinus@gmx.de>
8535         Add Google Drive support to Tramp
8537         * doc/misc/tramp.texi: Add `gdrive' method.
8539         * doc/misc/trampver.texi:
8540         * lisp/net/trampver.el: Change version to "2.3.1-pre".
8542         * etc/NEWS: Add Tramp connection method "gdrive".
8544         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <gdrive>: Add.
8545         (tramp-default-user-alist, tramp-default-host-alist): Add rule
8546         for "gdrive".
8547         (tramp-gvfs-file-attributes): Add "name", remove "standard::icon".
8548         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp): Simplify regexp.
8549         (tramp-gvfs-get-directory-attributes): Improve loop.  Use
8550         "standard::display-name" as file name, if available.
8551         (tramp-gvfs-handle-file-name-all-completions): Simplify.
8552         (tramp-gvfs-url-file-name, tramp-gvfs-handler-mounted-unmounted)
8553         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec):
8554         Map between "gdrive" and "google-drive".
8556         * lisp/net/tramp.el (tramp-call-process): Do not signal error.
8558         * test/lisp/net/tramp-tests.el (tramp--instrument-test-case):
8559         Do not enable `tramp-message-show-message'.
8560         (tramp-test13-make-directory, tramp-test14-delete-directory):
8561         Do not specify error type.
8563 2016-07-04  Tino Calancha  <tino.calancha@gmail.com>
8565         Calc: Update mode line after change mode
8567         * lisp/calc/calc-ext.el (calc-change-mode): Call 'calc-set-mode-line'.
8569 2016-07-03  Mark Oteiza  <mvoteiza@udel.edu>
8571         * lisp/simple.el (save-mark-and-excursion): Add declare forms.
8573 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8575         Re-fix open-network-stream responsiveness
8577         Problem reported by Christer Ekholm (Bug#23864).
8578         * src/process.c (wait_reading_process_output): Further fix for
8579         typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu when
8580         wait == INFINITY and got_output_end_time is invalid.  See:
8581         https://bugs.gnu.org/23864#20
8583 2016-07-03  Alan Mackenzie  <acm@muc.de>
8585         Remove redundant forms from CC Mode for faster fontification
8587         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove four arms of
8588         the "main" cond form in the function, which have been redundant since the
8589         extraction of c-font-lock-cut-off-declarators from the function on
8590         2016-06-15/16.
8592 2016-07-03  Alan Mackenzie  <acm@muc.de>
8594         Speed up CC Mode fontification with less accurate functions extending region
8596         * lisp/progmodes/cc-fonts.el (c-font-lock-cut-off-declarators)
8597         (c-font-lock-enclosing-decls)
8598         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Replace invocations of
8599         c-beginning-of-decl-1 with less accurate invocations of
8600         c-syntactic-skip-backwards to speed up fontification.
8602 2016-07-03  Tino Calancha  <tino.calancha@gmail.com>
8604         Ibuffer: unmark all buffers without confirmation
8606         * lisp/ibuffer.el (ibuffer-unmark-all-marks): New command (Bug#23680).
8607         (ibuffer-mouse-popup-menu): Use it.
8608         (ibuffer-mode): Update mode doc.
8609         (ibuffer-mode-map): Bind 'ibuffer-unmark-all-marks' to 'U'.
8610         Rebind 'ibuffer-do-replace-regexp' to 'r'.
8612 2016-07-03  Paul Eggert  <eggert@cs.ucla.edu>
8614         Fix open-network-stream responsiveness
8616         Problem reported by Constantin Kulikov (Bug#23684).
8617         * src/process.c (wait_reading_process_output):
8618         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
8619         when wait == INFINITY and got_output_end_time is invalid.
8620         In this case the code should break, not continue.
8622 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8624         Ibuffer: Mark buffers by content
8626         * lisp/ibuf-ext.el (ibuffer-mark-by-content-regexp): New command.
8627         (ibuffer-never-search-content-name): New option.
8628         (ibuffer-never-search-content-mode): Idem.
8629         (ibuffer-mark-by-content-regexp): Use them (Bug#23734).
8631         * lisp/ibuffer.el (ibuffer-mode-map): Bind new command to '% c' and '% g'.
8632         (ibuffer-mode): Update mode documentation.
8634 2016-07-02  Tino Calancha  <tino.calancha@gmail.com>
8636         ibuffer-copy-filename-as-kill verbosity increase
8638         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill):
8639         Use shorter name, result, for a local bound var.
8640         Show the string result in the echo area.
8642 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8644         Fix cursor positioning on TTY frames after stretch glyph
8646         * src/term.c (append_glyph, append_composite_glyph)
8647         (append_glyphless_glyph): Set the avoid_cursor_p and multibyte_p
8648         members of the produced 'struct glyph'.  Fixes cursor positioning
8649         on the first character after a stretch glyph produced from
8650         line-prefix, wrap-prefix, etc. on TTY frames.
8652 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8654         Fix vertical-movement in buffers with wrap-prefix
8656         * src/indent.c (Fvertical_motion): Zero the current_y coordinate
8657         whenever we zero the vpos vertical position of the iterator.
8658         * src/xdisp.c (move_it_in_display_line_to): Handle line-prefix and
8659         wrap-prefix regardless of whether the current Y coordinate is
8660         inside the window dimensions.  (Bug#23879)
8662 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
8664         Rename FACE_OPT_FROM_ID to FACE_FROM_ID_OR_NULL
8666         * src/dispextern.h (FACE_FROM_ID_OR_NULL): Renamed from
8667         FACE_OPT_FROM_ID; all callers changed.
8668         * src/xdisp.c (extend_face_to_end_of_line): Call FACE_FROM_ID, not
8669         FACE_FROM_ID_OR_NULL, as the resulting face is immediately
8670         dereferenced.
8671         (fill_gstring_glyph_string): Call FACE_FROM_ID, not
8672         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8673         when the glyph string is drawn.
8674         (BUILD_COMPOSITE_GLYPH_STRING): Call FACE_FROM_ID, not
8675         FACE_FROM_ID_OR_NULL, as the resulting face will be dereferenced
8676         in fill_composite_glyph_string.
8677         (calc_line_height_property): Call FACE_FROM_ID_OR_NULL rather that
8678         FACE_FROM_ID, since the function and its caller can cope with that
8679         situation.  Conflate 3 tests of missing face or font into just
8680         one.
8681         * src/xfaces.c (Fx_list_fonts, Fface_font, lookup_face): Call
8682         FACE_FROM_ID_OR_NULL rather that FACE_FROM_ID, since these
8683         functions can cope with that situation.
8684         (lookup_derived_face): Don't call FACE_FROM_ID if the result will
8685         not be used.
8686         * src/w32console.c (w32_face_attributes): Remove redundant 'eassert'.
8688 2016-07-01  Mark Oteiza  <mvoteiza@udel.edu>
8690         * lisp/gnus/gnus-art.el (gnus-article-send-map): Remove extra quote.
8692 2016-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8694         * lisp/auth-source.el (auth-source--symbol-keyword): Fix namespace
8696         i.e. rename from auto-source--symbol-keyword.
8698 2016-07-01  Dmitry Antipov  <dmantipov@yandex.ru>
8700         Avoid yet another possible NULL pointer dereference found by GCC 6.1.1
8702         * lwlib/lwlib.c (lw_get_all_values): Always check the value returned by
8703         get_widget_info.
8705 2016-06-30  Alan Mackenzie  <acm@muc.de>
8707         CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
8709         This applies to applying or removing syntax-table text properties in raw
8710         strings which affect the stringiness of a piece of text.  This fixes the
8711         bug
8712         reported in
8713         https://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00695.html.
8715         * lisp/progmodes/cc-engine.el (c-truncate-semi-nonlit-pos-cache): new
8716         defsubst.
8717         (c-invalidate-state-cache-1): Call new function in place of inline
8718         manipulation.
8719         (c-depropertize-raw-string, c-propertize-raw-string-opener): truncate the
8720         semi-nonlit cache when pertinent syntax-table text properties get applied to
8721         the text.
8723 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8725         Minor tweaks to openp
8727         * src/lread.c (openp): Move invariant code out of the loop
8728         and thus avoid redundant calls to memcpy.  Adjust comments.
8730 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8732         Simplify handling of frame parameters
8734         * src/frame.c (x_set_frame_parameters): Avoid extra loop processing
8735         foreground color, background color and font parameters.  Adjust
8736         comments.
8738 2016-06-29  Dmitry Antipov  <dmantipov@yandex.ru>
8740         Cleanup around mature character manipulation functions
8742         * lisp/international/mule-diag.el (decode-codepage-char): Remove.
8744         * lisp/ldefs-boot.el (toplevel): Adjust accordingly.
8746         * lisp/subr.el (toplevel): Do not advertise calling conventions
8747         for 'decode-char' and 'encode-char'.
8749         * src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
8751 2016-06-29  Alan Mackenzie  <acm@muc.de>
8753         Fix C-M-a in a C function finding the start of a macro preceding it.
8755         Also amend some pertinent documentation.  This fixes bug #23818.
8757         * lisp/progmodes/cc-engine.el (c-beginning-of-decl-1): Also check for a
8758         virtual semicolon at a place where we check for other types of statement ends.
8760         * lisp/progmodes/cc-vars.el (c-macro-nacmes-with-semicolon): Remove from the
8761         doc string the bit saying that the variable is a prototype and liable to
8762         change.
8764         * doc/misc/cc-mode.texi (Macros with ;): Enhance, stating that configuring
8765         macros with semicolon can prevent C-M-a missing the beginning of defun.
8767 2016-06-28  Dmitry Antipov  <dmantipov@yandex.ru>
8769         Avoid possible NULL pointer dereference found by GCC 6.1.1
8771         * src/xfns.c (x_get_monitor_attributes_xrandr): Always check
8772         the value returned by XRRGetOutputInfo.
8774 2016-06-28  Tino Calancha  <tino.calancha@gmail.com>
8776         Dired recognize dirs when file size in human units
8778         * lisp/dired.el (dired-re-inode-size): Update 'dired-re-inode-size'
8779         to match when Dired displays the allocated file size column
8780         in human readable units (Bug#22255).
8782 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8784         Fix breakage from previous change
8786         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
8787         * lisp/vc/log-view.el (log-view-font-lock-keywords): Quote face.
8789 2016-06-28  Mark Oteiza  <mvoteiza@udel.edu>
8791         Fix breakage from previous change.
8793         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords): Quote face.
8795 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8797         Add tests for copying properties by 'format'
8799         * test/src/editfns-tests.el (format-properties): New test.
8801 2016-06-28  Eli Zaretskii  <eliz@gnu.org>
8803         Fix copying properties in 'format' when it produces padding
8805         * src/textprop.c (extend_property_ranges): Correct range extension
8806         when the new end is beyond the old end.  (Bug#23859)
8808 2016-06-27  Alan Third  <alan@idiocy.org>
8810         Enable dividers in NS (bug#22973)
8812         src/nsfns.m: Add colour settings functions to ns_frame_park_handlers.
8813         src/nsterm.m (ns_draw_window_divider): ns_focus has to go before the
8814         attempt to set the colour.
8815         src/nsterm.m (ns_draw_vertical_window_border): This had the same bug as
8816         above, although I didn't see any errors.
8818 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8820         Fix the prefix action of shr-copy-url
8822         * lisp/net/shr.el (shr-copy-url): Make the command really copy
8823         the image url if given a prefix.
8825 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8827         New functions svg-text and svg-remove
8829         * doc/lispref/display.texi (SVG Images): Document svg-remove.
8831         * doc/lispref/display.texi (SVG Images): Document svg-text.
8833         * lisp/svg.el (svg-remove): New function.
8834         (svg-text): New function.
8836 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8838         Add new function dom-remove-node
8840         * doc/lispref/text.texi (Document Object Model): Document
8841         dom-remove-node.
8843         * lisp/dom.el (dom-remove-node): New function.
8845 2016-06-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8847         Add a new function `svg-embed'
8849         * doc/lispref/display.texi (SVG Images): Document `svg-embed'.
8851         * lisp/svg.el (svg-embed): New function.
8852         (svg--image-data): Ditto.
8854 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8856         * lisp/descr-text.el (describe-char-unicode-data): Fix copy/paste errors.
8858 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
8860         Fix 'move-to-window-line' when EOB is on last screen line
8862         * src/window.c (displayed_window_lines): Fix an off-by-one error
8863         when the bottom of the last display line is exactly at window's
8864         last pixel.  Remove kludgey fix for TTY frames that is no longer
8865         needed.  (Bug#15760)
8866         (Fmove_to_window_line): Doc fix.
8868         * doc/lispref/positions.texi (Screen Lines): Clarify and make more
8869         accurate the documentation of 'move-to-window-line'.
8871 2016-06-27  Alan Mackenzie  <acm@muc.de>
8873         Amend a cache so that typing into C++ raw strings has no undue delay.
8875         Also amend the code so that low-level searches to the end of literals are done
8876         only when these positions get used.
8878         * lisp/progmodes/cc-engine.el (c-crosses-statement-barrier-p): Use the new
8879         c-literal-start instead of c-literal-limit.
8880         (c-state-semi-nonlit-pos-cache): Change the structure of this cache, such that
8881         it stores details of the literal at a point, rather than merely points outside
8882         of literals.
8883         (c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
8884         (c-cache-to-parse-ps-state, c-parse-ps-state-to-cache, c-ps-state-cache-pos)
8885         (c-parse-ps-state-below, c-literal-start): New functions.
8886         (c-state-semi-safe-place): Removed.
8887         (c-in-literal): Use c-state-semi-pp-to-literal, so as not to scan to its end.
8888         (c-literal-limits, c-determine-limit-get-base): consequential amendments.
8889         (c-find-decl-spots, c-before-change-check-<>-operators, c-raw-string-pos)
8890         (c-guess-basic-syntax (CASE 2)): Avoid needless scans to end of literals.
8892         * lisp/progmodes/cc-fonts.el (c-font-lock-doc-comments): Avoid needless scans
8893         to end of literals.
8895         * lisp/progmodes/cc-mode.el (c-fl-decl-start): Avoid needless scans to end of
8896         literals.
8898         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun)
8899         (c-defun-name, c-declaration-limits): Avoid needless scans to end of literals.
8901 2016-06-26  Dmitry Gutov  <dgutov@yandex.ru>
8903         Also handle escaping when string begins with a quote
8905         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8906         Handle quoting of the first character in the string.
8908         * test/lisp/progmodes/ruby-mode-tests.el
8909         (ruby-toggle-string-quotes-quotes-correctly): Update.
8911 2016-06-26  Sriram Thaiyar  <sriram.thaiyar@gmail.com>  (tiny change)
8913         Fix quote escaping in ruby-toggle-string-quotes
8915         * lisp/progmodes/ruby-mode.el (ruby-toggle-string-quotes):
8916         Change logic to quote based on the current quote of the string.
8918         * test/lisp/progmodes/ruby-mode-tests.el
8919         (ruby-toggle-string-quotes-quotes-correctly): Add test.
8921 2016-06-26  Noam Postavsky  <npostavs@gmail.com>
8923         Fix test-completion with completion-regexp-list
8925         * src/minibuf.c (Ftest_completion): Handle alist COLLECTION with non-nil
8926         completion-regexp-list (Bug #23533).
8928 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8930         Try other addresses when connecting to multihomed
8932         Problem reported by Juliusz Chroboczek (Bug#17976)
8933         and by Artur Malabarba (Bug#23620).
8934         Patch from a suggestion by Andreas Schwab in:
8935         https://bugs.gnu.org/17976#39
8936         This patch is for non-MS-Windows platforms.
8937         I don't know the situation on MS-Windows.
8938         * src/process.c (connecting_status):
8939         New function, for (connect . ADDRINFOS).
8940         (connect_network_socket, check_for_dns, wait_for_socket_fds)
8941         (wait_while_connecting, wait_reading_process_output, status_notify):
8942         Use it.
8943         (decode_status, Fmake_network_process):
8944         Support (connect . ADDRINFOS) status.
8945         (connect_network_socket) [!WINDOWSNT]:
8946         If the connection failed and there are other addresses to try, do not
8947         signal an error; instead, loop around to try the next address.
8948         (wait_reading_process_output): Advance to the next address
8949         if there are multiple addresses and the first remaining address
8950         failed.
8951         * src/process.h (struct Lisp_Process.status): Adjust comment
8952         to describe (connect . ADDRINFOS).
8954 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8956         Fix GNUC_PREREQ for GCC 2.8.1 etc.
8958         Problem reported by Eli Zaretskii in:
8959         https://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00608.html
8960         * src/conf_post.h (GNUC_PREREQ): Port to GCC versions like GCC
8961         2.8.1 (1998), which come before GCC 3.0 and which have nonzero
8962         patchlevel numbers.
8964 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
8966         Don't set 'bidi-paragraph-direction' in 'ansi-term'
8968         * lisp/term.el (ansi-term): Remove unnecessary setting of
8969         'bidi-paragraph-direction'.  The underlying problem is solved in
8970         bidi.c by changing the regexps that define the paragraph beginning
8971         and end.  (Bug#20611)
8973 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8975         Sync with Tramp 2.3.0
8977         * doc/misc/trampver.texi:
8978         * lisp/net/trampver.el: Change version to "2.3.0".
8980 2016-06-26  Paul Eggert  <eggert@cs.ucla.edu>
8982         Fix GNUC_PREREQ off-by-1 typo
8984         Problem reported by Martin Rudalics in:
8985         https://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00587.html
8986         * src/conf_post.h (GNUC_PREREQ) [__GNUC_PATCHLEVEL__]:
8987         Fix < vs <= typo.
8989 2016-06-26  Michael Albinus  <michael.albinus@gmx.de>
8991         Fix some oddities in Tramp's rsync and smb methods
8993         * lisp/net/tramp-sh.el (tramp-methods) <rsync>: Add "-p" and
8994         "-s" arguments.
8995         (tramp-do-copy-or-rename-file-out-of-band):
8996         Call `file-name-directory' also for remote NEWNAME.
8998         * test/lisp/net/tramp-tests.el (tramp-test15-copy-directory):
8999         Do not skip for tramp-smb.el.  Test als COPY-CONTENTS case.
9000         (tramp-test24-file-name-completion): Improve check for
9001         hostname completion.
9002         (tramp--test-rsync-p): New defun.
9003         (tramp-test31-special-characters)
9004         (tramp-test31-special-characters-with-stat)
9005         (tramp-test31-special-characters-with-perl)
9006         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
9007         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
9008         (tramp-test32-utf8-with-ls): Skip for "rsync".
9010         * lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory):
9011         Check also for CIFS capabilities.
9013 2016-06-26  Ury Marshak  <ury.marshak@gmail.com>  (tiny change)
9015         Fix FRAME_INTERNAL_BORDER_WIDTH use (Bug#23841)
9017         * src/nsfns.m (x_set_internal_border_width): Replace assignments to
9018         FRAME_INTERNAL_BORDER_WIDTH.
9020 2016-06-25  Leo Liu  <sdl.web@gmail.com>
9022         Deprecations (bug#23850)
9024         * lisp/subr.el (string-to-unibyte, string-as-unibyte,
9025         string-to-multibyte, string-as-multibyte): Make obsolete.
9027 2016-06-25  Tino Calancha  <tino.calancha@gmail.com>
9029         Do not prompt twice to save a buffer
9031         * lisp/hilit-chg.el (highlight-markup-buffers): (Bug#23824).
9033 2016-06-25  Alan Third  <alan@idiocy.org>
9035         Move text line right when in box (bug#23755)
9037         * src/nsterm.m (ns_draw_glyph_string_foreground): Create to take
9038         CHAR_GLYPH specific code and move glyphs right if within a box.
9039         (ns_draw_glyph_string): Move CHAR_GLYPH specific code into above
9040         function.
9042 2016-06-25  Paul Eggert  <eggert@cs.ucla.edu>
9044         Merge from origin/emacs-25
9046         0377fe2 ; Spelling fixes
9047         f253695 Update docs for `customize-mode'
9048         4395aaa Fix documentation of 'assoc-string' and 'compare-strings'
9049         ab0ebb9 ; Only load .elc file in tests.
9050         a98aa02 Error on multibyte characters in HTTP request
9051         ea512a7 * lisp/gnus/mm-decode.el (mm-convert-shr-links): Mask keys th...
9052         8297331 ; Revert "Ensure undo-boundary after insert-file-contents."
9053         dc5e65b Unset GIT_DIR when calling Git commands
9054         6cdd8f7 Ensure undo-boundary after insert-file-contents.
9055         4793f5f Clarify documentation of 'line-spacing' and 'line-height'
9056         5f37572 Fix removal of variables from process-environment
9057         e5e886d * admin/authors.el (authors-ignored-files, authors-valid-file...
9058         db0777b * admin/authors.el (authors-aliases, authors-fixed-case): Add...
9060         # Conflicts:
9061         #       doc/lispref/modes.texi
9062         #       lisp/gnus/mm-decode.el
9064 2016-06-25  Mark Oteiza  <mvoteiza@udel.edu>
9066         Teach net-utils more iproute2 and nl80211 tools
9068         * lisp/net/net-utils.el (iwconfig-program): Add iw(8).
9069         (iwconfig-program-options): Add "dev" argument for iw.  Another useful
9070         option is "phy"; beyond that one needs to know the interface name.
9071         (netstat-program): Add ss(8).
9072         (route-program): Add ip(8).
9073         (route-program-options): Add "route" argument for ip.
9075 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9077         Use use-region-p in prolog.el
9079         * lisp/progmodes/prolog.el (region-exists-p): Remove.
9080         * lisp/progmodes/prolog.el (prolog-edit-menu-runtime,
9081         prolog-edit-menu-insert-move): Use use-region-p.
9083 2016-06-24  Leo Liu  <sdl.web@gmail.com>
9085         Remove compatibility with Emacs 24.3 in octave-mode
9087         * lisp/progmodes/octave.el: Clean up and remove compatibility with
9088         Emacs 24.3.
9090 2016-06-24  Alan Mackenzie  <acm@muc.de>
9092         Ensure hack-local-variables is run in a fundamental mode buffer.
9094         This fixes bug #23827.
9096         * src/buffer.c (set-buffer-major-mode): Run `fundamental-mode' when the buffer
9097         gets set to that mode, so that `run-mode-hooks', and thus
9098         `hack-local-variables' get run.
9100 2016-06-24  Tino Calancha  <tino.calancha@gmail.com>
9102         Fix caller to ediff-setup
9104         * lisp/hilit-chg.el (hilit-chg-get-diff-info): #Bug23820.
9106 2016-06-24  Alan Mackenzie  <acm@muc.de>
9108         Implement ' separators in C++ integer literals.
9110         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): insert
9111         c-before-after-change-digit-quote into the C++ value.
9112         (c-before-font-lock-functions): Insert c-depropertize-new-text into the values
9113         for all languages.  Insert c-before-after-change-digit-quote into the C++
9114         value.
9116         * lisp/progmodes/cc-mode.el (c-depropertize-CPP): Wrap the function in
9117         c-save-buffer-state.
9118         (c-depropertize-new-text, c-before-after-change-digit-quote): New functions.
9120 2016-06-24  Paul Eggert  <eggert@cs.ucla.edu>
9122         Update from gnulib
9124         This incorporates:
9125         2016-06-24 intprops: port better to GCC 7
9126         2016-06-13 xalloc-oversized: port to GCC 7; fewer warnings
9127         * doc/misc/texinfo.tex, lib/xalloc-oversized.h, lib/intprops.h:
9128         Copy from gnulib.
9130 2016-06-24  Martin Rudalics  <rudalics@gmx.at>
9132         Remove two uses of 'min' in Fwindow_text_pixel_size
9134         * src/xdisp.c (Fwindow_text_pixel_size): Don't use 'min' since
9135         it calls move_it_to twice.  Suggested by Eli Zaretskii.
9137 2016-06-23  Paul Eggert  <eggert@cs.ucla.edu>
9139         Clarify intent of FACE_FROM_ID and IMAGE_FROM_ID
9141         * src/dispextern.h (FACE_OPT_FROM_ID): Don’t use FACE_FROM_ID,
9142         since it is intended to be used only when it returns a non-null
9143         pointer, and here the pointer might be null.
9144         (IMAGE_OPT_FROM_ID): Don’t use IMAGE_FROM_ID, for similar reasons.
9146 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9148         Remove some more face aliases obsoleted in 22.1
9150         * lisp/eshell/em-ls.el (eshell-ls-directory-face, eshell-ls-symlink-face,
9151         eshell-ls-executable-face, eshell-ls-readonly-face,
9152         eshell-ls-unreadable-face, eshell-ls-special-face,
9153         eshell-ls-missing-face, eshell-ls-archive-face, eshell-ls-backup-face,
9154         eshell-ls-product-face, eshell-ls-clutter-face): Remove.
9155         * lisp/isearch.el (isearch-lazy-highlight-face, lazy-highlight-face): Remove.
9156         (isearch-lazy-highlight-update): Use face symbol.
9157         * lisp/net/sieve-mode.el (sieve-control-commands-face,
9158         sieve-action-commands-face, sieve-test-commands-face,
9159         sieve-tagged-arguments-face): Remove.
9160         (sieve-font-lock-keywords): Use non-obsolete faces.
9161         * lisp/progmodes/sh-script.el (sh-heredoc-face): Remove.
9162         (sh-get-indent-info, sh-prev-line): Use face symbol.
9163         * lisp/textmodes/tex-mode.el (tex-font-lock-keywords-1):
9164         Use non-obsolete face.
9165         (tex-math-face, tex-verbatim-face): Remove.
9166         (tex-font-lock-syntactic-face-function): Use face symbols.
9168 2016-06-23  Mark Oteiza  <mvoteiza@udel.edu>
9170         Remove some face aliases obsoleted in 22.1
9172         * lisp/faces.el (modeline-inactive, modeline-highlight, modeline-buffer-id):
9173         * lisp/hilit-chg.el (highlight-changes-face, highlight-changes-delete-face):
9174         * lisp/info.el (Info-title-1-face, Info-title-2-face, Info-title-3-face,
9175         Info-title-4-face, info-menu-5):
9176         * lisp/obsolete/old-whitespace.el (whitespace-highlight-face):
9177         * lisp/paren.el (show-paren-match-face, show-paren-mismatch-face):
9178         * lisp/progmodes/make-mode.el (makefile-space-face):
9179         * lisp/textmodes/texinfo.el (texinfo-heading-face): Remove.
9180         (texinfo-font-lock-keywords): Use texinfo-heading face.
9181         * lisp/vc/add-log.el (change-log-date-face, change-log-name-face,
9182         change-log-email-face, change-log-file-face, change-log-list-face,
9183         change-log-conditionals-face, change-log-function-face,
9184         change-log-acknowledgement-face):
9185         * lisp/vc/diff-mode.el (diff-header-face, diff-file-header-face,
9186         diff-index-face, diff-hunk-header-face, diff-removed-face, diff-added-face,
9187         diff-changed-face, diff-function-face, diff-context-face,
9188         diff-nonexistent-face): Remove.
9189         (diff-use-changed-face, diff-font-lock-keywords): Use non-obsolete face
9190         symbols.
9191         (diff-hunk-file-names): Fix comment.
9192         (diff-refine-change): Remove.
9193         (diff-refine-removed, diff-refine-added, diff-refine-hunk): Use
9194         non-obsolete face.
9195         * lisp/vc/log-view.el (log-view-file-face, log-view-message-face): Remove.
9196         (log-view-font-lock-keywords): Use non-obsolete face names.
9197         * lisp/vc/pcvs-info.el (cvs-header-face, cvs-filename-face, cvs-unknown-face,
9198         cvs-handled-face, cvs-need-action-face, cvs-marked-face, cvs-msg-face):
9199         * lisp/wid-edit.el (widget-documentation-face, widget-button-face,
9200         widget-field-face, widget-single-line-field-face, widget-inactive-face,
9201         widget-button-pressed-face):
9202         * lisp/woman.el (woman-italic-face, woman-bold-face, woman-unknown-face,
9203         woman-addition-face): Remove.
9205 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9207         * lisp/international/characters.el (standard-case-table): Improve last change.
9209 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9211         Improve results of 'upcase' for characters with title-case
9213         * lisp/international/characters.el (standard-case-table): Swap the
9214         order of some lines, to have 'upcase' return the upper-case
9215         variant, not the title-case, for some characters whose lower-case
9216         map to the same codepoints.  (Bug#23833)
9218 2016-06-23  Alan Mackenzie  <acm@muc.de>
9220         Make typing into incomplete C++ raw strings work, and make it work fast enough
9222         * lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-state-pp-to-literal):
9223         Put `save-match-data' around calls to `looking-at' to enable the use of the
9224         match data in higher level functions.
9226         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations)
9227         (c-font-lock-cut-off-declarators): Use `limit' rather than `(point-max)' as a
9228         limit to speed up handling of C++ raw strings.
9230 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
9232         Fix handling of LWINDOW key on MS-Windows
9234         * src/w32fns.c (funhook): Correct a typo which broke handling of
9235         the LWINDOW key.  (Bug#23830)
9237 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9239         Update Unicode data files from Unicode 9.0.0
9241         * admin/unidata/copyright.html:
9242         * admin/unidata/BidiBrackets.txt:
9243         * admin/unidata/UnicodeData.txt: Update from Unicode 9.0.0, just
9244         released.
9246 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9248         Fix test for whether the '.el' file is newer than '.elc'
9250         * src/lread.c (Fload): Don't overwrite the last character of the
9251         file name in FOUND with 'c', unless the file name ended in ".elc"
9252         to begin with.  Don't treat empty files as byte-compiled.  See
9253         https://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00463.html
9254         for more details of the problem this caused.
9256 2016-06-22  Eli Zaretskii  <eliz@gnu.org>
9258         Fix 'insert-file-contents' when REPLACE is non-nil
9260         * src/fileio.c (maybe_move_gap): New function to move the gap to
9261         the end of a buffer, if it isn't there already.
9262         (Finsert_file_contents): Call 'maybe_move_gap' before using
9263         conversion_buffer's text as a C 'char' array.  (Bug#23659)
9264         * src/coding.c (decode_eol): Compute the byte increment before
9265         calling del_range_2, because the latter can invalidate the pointer
9266         to buffer text.
9268 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9270         Avoid compiler warning
9272         * src/w32fns.c (Fx_show_tip): Don’t jump over auto initialization.
9274 2016-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
9276         * lisp/emacs-lisp/syntax.el (syntax-propertize): Flush extended region.
9278 2016-06-22  Ken Brown  <kbrown@cornell.edu>
9280         Fix last change to FRAME_INTERNAL_BORDER_WIDTH
9282         * src/w32fns.c (x_set_internal_border_width): Don’t use
9283         FRAME_INTERNAL_BORDER_WIDTH(), which is now a function call, as an
9284         lvalue.
9286 2016-06-21  Paul Eggert  <eggert@cs.ucla.edu>
9288         Improve --without-x GCC pacification
9290         * src/composite.c (autocmp_chars):
9291         * src/conf_post.h (DebPrint) [HAVE_NTGUI && !DebPrint && !EMACSDEBUG]:
9292         Use simpler ((void) 0) for no-op expression returning void.
9293         * src/dispextern.h [HAVE_WINDOW_SYSTEM]:
9294         Include fontset.h, for face_for_char.
9295         (FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_FOR_CHAR):
9296         Now inline functions instead of macros.  This avoids the need for
9297         all those casts to void.
9298         (FACE_SUITABLE_FOR_ASCII_CHAR_P): Omit 2nd (unused) arg.
9299         All uses changed.
9300         * src/frame.c (Ficonify_frame, Fset_frame_position):
9301         * src/xdisp.c (Fmove_point_visually, show_mouse_face):
9302         * src/xdisp.c (note_mode_line_or_margin_highlight)
9303         (note_mouse_highlight):
9304         Assume HAVE_WINDOW_SYSTEM for simplicity, since the code should
9305         now work either way without generating warnings.
9306         * src/frame.c (display_available) [HAVE_WINDOW_SYSTEM]: New function.
9307         (window_system_available) [HAVE_WINDOW_SYSTEM]: Move to frame.h.
9308         (decode_window_system_frame): Use check_window_system instead of
9309         rolling the code ourself.  Return needed only if HAVE_WINDOW_SYSTEM.
9310         (decode_window_system_frame, check_window_system):
9311         Merge the HAVE_WINDOW_SYSTEM and !HAVE_WINDOW_SYSTEM versions into one.
9312         * src/frame.c (Ficonify_frame, Fset_frame_position):
9313         * src/xdisp.c (show_mouse_face, define_frame_cursor1)
9314         (note_mouse_highlight):
9315         Narrow the scope of the HAVE_WINDOW_SYSTEM #ifdef;
9316         this is a better way to pacify GCC.
9317         * src/xdisp.c (x_set_left_fringe, x_set_right_fringe)
9318         (x_set_right_divider_width, x_set_bottom_divider_width):
9319         * src/xfns.c (x_set_internal_border_width):
9320         Don’t use what are now function calls as lvalues.
9321         * src/frame.h (WINDOW_SYSTEM_RETURN): New macro.
9322         (decode_window_system_frame, check_window_system):
9323         Use it, to avoid the need for duplicate declarations.
9324         (window_system_available): Now an inline function.
9325         (display_available): New decl.
9326         (frame_dimension): New inline function.
9327         (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
9328         (FRAME_RIGHT_FRINGE_WIDTH, FRAME_TOTAL_FRINGE_WIDTH)
9329         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9330         (FRAME_BOTTOM_DIVIDER_WIDTH):
9331         Use it, to avoid the need for duplicate definitions.
9332         Now inline functions instead of macros.
9333         * src/gnutls.c (gnutls_log_function2i): Remove.
9334         * src/gnutls.h (GNUTLS_LOG2i): Use ‘message’ directly.
9335         This avoids complaints about gnutls_log_function2i being defined
9336         and not used on older platforms that do not need to call GNUTLS_LOG2i.
9337         * src/image.c (DefaultDepthOfScreen) [0]: Remove unused macro.
9338         * src/lisp.h (AUTO_STRING_WITH_LEN): Revert change from ‘type id =
9339         expr’ to ‘type id; id = expr’, as this would suppress valid
9340         jump-misses-init diagnostics.  Let’s find a better way to address
9341         the problem.
9342         * src/vm-limit.c (__MALLOC_HOOK_VOLATILE):
9343         Define only if needed.
9344         * src/xdisp.c (handle_single_display_spec):
9345         Simplify fringe_bitmap computation.
9346         (define_frame_cursor1): Do nothing unless in a window system.
9347         All callers changed and simplified.
9348         * src/xfaces.c (realize_default_face):
9349         Use a simpler way to pacify GCC when a return value is not used
9350         on some platforms.
9352 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
9354         Ensure undo-boundary after all commands
9356         * lisp/simple.el (undo-auto--boundaries): Ensure an undo-boundary after
9357           every command whether it (apparently) changes the buffer or not.
9359         See Bug#23785 for discussion.
9361 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
9363         Fix vertical layout calculations when newline has line-height property
9365         * src/xdisp.c (move_it_in_display_line_to): Reset the iterator's
9366         'constrain_row_ascent_descent_p' flag after processing the
9367         newline, similar to what 'display_line' does.  Without this, the
9368         flag remains set once set by x_produce_glyphs, and causes the
9369         vertical layout calculations to go awry, because Emacs thinks the
9370         screen lines have zero height.  (Bug#23850)
9372 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9374         Fix compiler warnings in Cygwin-w32 build
9376         * src/conf_post.h (DebPrint) [!EMACSDEBUG]: Add empty do-while
9377         loop to avoid compiler warnings about empty body of 'if'
9378         statement.
9380         * src/image.c [HAVE_NTGUI] (DefaultDepthOfScreen): Disable unused
9381         macro.
9382         (x_create_bitmap_from_data): Declare 'frame'.
9383         (x_create_bitmap_from_file): Don't declare unused variable
9384         'dpyinfo'.
9386         * src/lisp.h (AUTO_STRING_WITH_LEN): Avoid initialization to
9387         prevent "jump-misses-init" compiler warnings.
9389         * src/w32fns.c (check_w32_winkey_state): Define and use only if
9390         WINDOWSNT.
9391         (Fx_show_tip): Declare 'f'.
9392         (Fx_file_dialog): Declare 'filter_a' only if not NTGUI_UNICODE.
9393         (w32_strerror): Use format specifier %d for sprintf argument of
9394         type int.
9395         (emacs_abort): Cast sprintf argument of type DWORD to unsigned
9396         int, and use format specifier %x, for compatibility with Cygwin.
9397         (unicode_append_menu) [NTGUI_UNICODE]:
9398         * src/w32menu.c [NTGUI_UNICODE] (get_menu_item_info)
9399         (set_menu_item_info, unicode_append_menu)
9400         (unicode_message_box):
9401         * src/menu.c [NTGUI_UNICODE] (unicode_append_menu): Define as
9402         functions rather than macros to avoid "address will always
9403         evaluate as true" compiler warnings.
9405         * src/w32font.c (w32_to_x_charset): Use format specifier %d for
9406         sprintf argument of type int.
9408         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Cast
9409         sprintf argument of type int to unsigned int to match %X format
9410         specifier.
9411         (w32_scroll_bar_handle_click):
9412         (w32_horizontal_scroll_bar_handle_click): Declare 'f'.
9414         * src/w32term.h (FRAME_DISPLAY_INFO): Explicitly discard unused
9415         argument.
9417 2016-06-20  Ken Brown  <kbrown@cornell.edu>
9419         Fix compiler warnings in no-window-system-build
9421         * src/composite.c (autocmp_chars): Declare and set 'f' only if
9422         HAVE_WINDOW_SYSTEM.
9424         * src/dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P)
9425         (FACE_FOR_CHAR): Explicitly discard unused arguments.
9427         * src/font.c (font_open_entity): Declare 'min_width' where it is
9428         first set, and only if HAVE_WINDOW_SYSTEM.
9430         * src/frame.c [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame):
9431         Define _Noreturn version to avoid "suggest attribute noreturn"
9432         compiler warning.
9433         (check_window_system): Declare as _Noreturn.
9434         (Ficonify_frame):
9435         (Fset_frame_position): Don’t declare and set 'f'.
9437         * src/frame.h [!HAVE_WINDOW_SYSTEM] (decode_window_system_frame)
9438         (check_window_system):  Add _Noreturn prototypes.
9439         (FRAME_FRINGE_COLS, FRAME_TOTAL_FRINGE_WIDTH)
9440         (FRAME_LEFT_FRINGE_WIDTH, FRAME_RIGHT_FRINGE_WIDTH)
9441         (FRAME_INTERNAL_BORDER_WIDTH, FRAME_RIGHT_DIVIDER_WIDTH)
9442         (FRAME_BOTTOM_DIVIDER_WIDTH): Explicitly discard unused argument.
9444         * src/xdisp.c (handle_single_display_spec): Declare
9445         'fringe_bitmap' only if HAVE_WINDOW_SYSTEM.
9446         (append_space_for_newline): Declare 'g' where it is first set.
9447         (Fmove_point_visually): Declare and set 'target_is_eol_p' only if
9448         HAVE_WINDOW_SYSTEM.
9449         (show_mouse_face): Declare and set 'f' and 'phys_cursor_on_p' only
9450         if HAVE_WINDOW_SYSTEM.
9451         (note_mode_line_or_margin_highlight):
9452         (note_mouse_highlight): Declare and set 'cursor' and 'pointer'
9453         only if HAVE_WINDOW_SYSTEM.
9455         * src/xfaces.c (realize_default_face): Declare and set 'face' only
9456         if HAVE_X_WINDOWS.  Remove redundant #ifdef.
9458 2016-06-20  Michael Albinus  <michael.albinus@gmx.de>
9460         Weaken test conditions in filenotify-tests.el
9462         * test/lisp/filenotify-tests.el (file-notify--test-with-events):
9463         Fix thinko in test.
9464         (file-notify-test02-events, file-notify-test04-file-validity)
9465         (file-notify-test07-backup)
9466         (file-notify-test08-watched-file-in-watched-dir): Make test
9467         conditions more weak.  (Bug#23618)
9469 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
9471         Minor ABLOCKS_BUSY cleanups in alloc.c
9473         * src/alloc.c (ABLOCKS_BUSY): Rename arg to avoid potential clash
9474         with member ‘abase’ in definiens.
9475         (lisp_align_malloc, lisp_align_free): Use bool for boolean.
9476         Avoid compiler warning with fewer casts.
9477         (lisp_align_free): Check busy-field values; this can help the
9478         compiler a bit when optimizing, too.
9480 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9482         ASCII-fy coding-system-for-read used for Git commands
9484         * lisp/vc/vc-git.el (vc-git--asciify-coding-system):
9485         New function.
9486         (vc-git-diff, vc-git-annotate-command): Use it.
9488 2016-06-19  Dmitry Gutov  <dgutov@yandex.ru>
9490         Prohibit multibyte characters in url-http-data
9492         It didn't work anyway, but this makes any such errors more obvious
9493         by catching them earlier.
9495         * lisp/url/url-http.el (url-http-create-request):
9496         Use string-to-unibyte (bug#23750).
9498 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
9500         Fix setting a range of char-table slots in a singular case
9502         * src/chartab.c (char_table_set_range): Start the loop from the
9503         first character of the block to which FROM belongs.  (Bug#23797)
9505         * test/src/chartab-tests.el: New test file.
9507 2016-06-19  Alan Mackenzie  <acm@muc.de>
9509         Fix CC Mode fontification problem apparent in test file decls-6.cc.
9511         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Recognize
9512         "bar (gnu);" as a declarator only when the construct is directly inside a
9513         class (etc.) called "bar".
9514         (c-directly-in-class-called-p): New function.
9516 2016-06-19  Alan Mackenzie  <acm@muc.de>
9518         c-renarrow-state-cache: take care when new point is inside old brace pair.
9520         Also add display of point-min to the c-parse-state debugging output.
9522         * lisp/progmodes/cc-engine.el (c-renarrow-state-cache): When the new
9523         point is inside an old recorded brace pair, clear the cache.
9524         (c-debug-parse-state): Output the value of point-min.
9526 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9528         Rename ALIGN to pointer_align
9530         * src/alloc.c (pointer_align): Rename from ALIGN.
9531         This fixes Bug#23764 in a simpler way.
9533 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9535         Merge from origin/emacs-25
9537         d1efbaf Fix documentation of completion functions
9538         65c96cc Clarify documentation of 'font-lock-maximum-decoration'
9539         2ad3d01 * doc/misc/cl.texi (Usage): Add some more details.
9540         b49cb0a Fbackward_prefix_chars: stay within buffer bounds
9542 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9544         Merge from origin/emacs-25
9546         2317c61 Fix last todo-mode change
9547         5d4d8a3 Improve last todo-mode fix
9548         d7084f2 Fix todo-mode use of minibuffer completion keymap (bug#23695).
9549         27dec52 * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23...
9550         f526191 * lisp/emacs-lisp/nadvice.el (advice--make-docstring): Avoid ...
9551         e881070 * lisp/help-fns.el (describe-function-1): Avoid reporting adv...
9552         d308aa1 Minor grammar fix (bug#23746)
9553         20de667 Doc fixes for grammar and typos (bug#23746)
9554         a67a4e5 * doc/lispref/processes.texi (Process Buffers): Minor rewordi...
9555         27f440e Add cross-reference to ELisp manual
9556         10802d8 ; make change-history-commit
9557         4b2d77d * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bu...
9558         12e009e Restore initial undo boundary with viper
9559         291fe0a Revert "Fix viper undo breakage from undo-boundary changes"
9560         6921f4a Fix dbus crash on 32-bit Cygwin
9562 2016-06-18  Paul Eggert  <eggert@cs.ucla.edu>
9564         Merge from origin/emacs-25
9566         9ae514a * etc/AUTHORS: Update the AUTHORS file
9567         3ca428e add entries to authors.el
9568         66d556b Fix eldoc-related freezes in python mode
9569         d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
9570         27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
9571         a813487 Fix undo boundary in recursive edit (Bug#23632)
9572         1f85b7c Doc fixes re alist-get.  (Bug#23548)
9573         ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
9574         56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
9575         4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
9576         a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
9577         601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
9579 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9581         * lisp/emacs-lisp/map.el (map-contains-key): Better docstring
9583 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9585         Fix seq-contains
9587         Make sure seq-contains return the element of the sequence instead of t.
9589         * lisp/emacs-lisp/seq.el (seq-contains): Fix the function.
9590         * test/lisp/emacs-lisp/seq-tests.el: Add a regression test.
9592 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9594         Add new function map-do
9596         * lisp/emacs-lisp/map.el (map-do, map--do-alist, map--do-array): New
9597           functions.
9598         * test/lisp/emacs-lisp/map-tests.el: Add a unit test for map-do.
9600 2016-06-18  Nicolas Petton  <nicolas@petton.fr>
9602         Add seq-do-indexed
9604         * lisp/emacs-lisp/seq.el (seq-do-indexed): New function.
9605         * test/lisp/emacs-lisp/seq-tests.el: Add a unit test for seq-do-indexed.
9607 2016-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9609         map.el (map-merge*): Use `map-into' at beginning rather than end
9611         * lisp/emacs-lisp/map.el (map-merge): Use `map-into' for the first map,
9612         and don't use of an intermediate alist.
9613         (map-merge-with): Same, plus use `cl-callf' to try and avoid performing
9614         3 lookups per inner iteration.
9616 2016-06-16  Mark Oteiza  <mvoteiza@udel.edu>
9618         * lisp/window.el (switch-to-buffer-preserve-window-point): Bump :version.
9620 2016-06-15  Alan Mackenzie  <acm@muc.de>
9622         Speed up CC Mode's font locking by taking some code out of a hot loop.
9624         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Remove code which
9625         tests for bare declarators.
9626         (c-font-lock-cut-off-declarators): New function.
9627         (c-complex-decl-matchers): insert c-font-lock-cut-off-declarators.
9629 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9631         Automatically find vars and functions via definition-prefixes
9633         * lisp/help-fns.el (help-definition-prefixes): New var and function.
9634         (help--loaded-p, help--load-prefixes, help--symbol-completion-table):
9635         New functions.
9636         (describe-function, describe-variable): Use them.
9638         * lisp/emacs-lisp/radix-tree.el (radix-tree--prefixes)
9639         (radix-tree-prefixes, radix-tree-from-map): New functions.
9641 2016-06-15  Michal Nazarewicz  <mina86@mina86.com>
9643         Automatically detect whether .h file is C or C++
9645         * lisp/progmodes/cc-mode.el (c-or-c++-mode): A new function which
9646         analyses contents of the buffer to determine whether it looks like C++
9647         source code and based on that enables c-mode or c++-mode.
9648         (c-or-c++-mode--regexp): Regular expression which, when matches
9649         a buffer, signals file is C++.
9651 2016-06-15  Alan Mackenzie  <acm@muc.de>
9653         Parse compound identifiers in C++ member initialization lists.
9655         * lisp/progmodes/cc-engine.el (c-back-over-compound-identifier): New function.
9656         (c-back-over-member-initializer-braces, c-back-over-list-of-member-inits)
9657         (c-back-over-member-initializers): Call c-back-over-compound-identifier rather
9658         than c-simple-skip-symbol-backward.
9660 2016-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
9662         Advertize set-keymap-parent as replacement for copy-keymap
9664         * doc/lispref/keymaps.texi (Creating Keymaps):
9665         * src/keymap.c (Fcopy_keymap): Advertize set-keymap-parent as replacement.
9667 2016-06-15  Ted Zlatanov  <tzz@lifelogs.com>
9669         * lisp/generic-x.el (ansible-inventory-generic-mode): Warn if
9670         value is missing
9672 2016-06-15  Tim Chambers  <tbc@alum.mit.edu>  (tiny change)
9674         Add new ansible-inventory-generic-mode (Bug#23762)
9676         * lisp/generic-x.el (ansible-inventory-generic-mode): Add new mode.
9678 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9680         Fix ifdef-vs-if typo with RANDR13_LIBRARY
9682         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
9683         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
9684         https://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
9686 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9688         Port to platforms where char * has top bit set
9690         This fixes a five-year-old FIXME comment.  Although I don’t know
9691         of a platform where this is a problem in practice, better safe
9692         than sorry.
9693         * src/doc.c (Fdocumentation): If SUBRP, simply use doc as integer,
9694         as it is now an integer, not char *.
9695         (store_function_docstring): Offset is now EMACS_INT, not ptrdiff_t;
9696         this is a file offset and EMACS_INT is better if --with-wide-int.
9697         If SUBRP, simply store the offset rather than negating it and
9698         converting it to char *.
9699         * src/lisp.h (struct Lisp_Subr.doc): Now EMACS_INT, not char *.
9701 2016-06-14  Paul Eggert  <eggert@cs.ucla.edu>
9703         Remove recursion from store_function_docstring
9705         * src/doc.c (store_function_docstring):
9706         Refactor to avoid the need for C-level recursion.
9708 2016-06-14  Ken Brown  <kbrown@cornell.edu>
9710         Remove system-specific -I switch from Cygwin-w32 build
9712         Suggested by Eli Zaretskii in discussion of bug#18302.
9714         * src/image.c [HAVE_NTGUI]: Remove the unused macro
9715         PIXEL_ALREADY_TYPEDEFED.  On Cygwin, include "noX/xpm.h" instead of
9716         "X11/xpm.h".
9718         * configure.ac [CYGWIN && HAVE_W32]: Change the xpm test to use
9719         "noX/xpm.h".  Don't add a -I switch to CPPFLAGS.
9721 2016-06-14  Noam Postavsky  <npostavs@gmail.com>
9723         Make python.el work in Emacs 24
9725         * lisp/progmodes/python.el: Bump version.
9726         (python-define-auxiliary-skeleton): Only use format-message if
9727         fbound (Bug#23126).
9729 2016-06-13  Ken Brown  <kbrown@cornell.edu>
9731         Avoid compiler warning
9733         * src/w32fns.c (deliver_wm_chars): Add 'const' to declaration of
9734         'type_CtrlAlt'.
9736 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9738         Call tzset after setting TZ
9740         * src/editfns.c (tzlookup): Call tzset after setting TZ, so that
9741         the setting change propagates into Emacs local time (Bug#23600).
9742         (emacs_setenv_TZ): Clarify comments.
9744 2016-06-13  Paul Eggert  <eggert@cs.ucla.edu>
9746         Update texinfo.tex
9748         * doc/misc/texinfo.tex: Update from gnulib.
9750 2016-06-12  Paul Eggert  <eggert@cs.ucla.edu>
9752         New macro GNUC_PREREQ for GCC version
9754         * src/conf_post.h (GNUC_PREREQ): New macro.
9755         Change uses of __GNUC_MINOR__ and __GNUC_PATCHLEVEL__ to use this
9756         macro instead, for clarity and consistency.
9757         (PRINTF_ARCHETYPE): New macro.  Define it to __gnu_printf__ only
9758         if glibc, since non-GNU platforms don’t necessarily support GNU
9759         printf formats.
9760         (ATTRIBUTE_FORMAT_PRINTF): Use it.
9762 2016-06-12  Nicolas Petton  <nicolas@petton.fr>
9764         * lisp/emacs-lisp/seq.el (seq-drop): Better list implementation
9766 2016-06-12  Eli Zaretskii  <eliz@gnu.org>
9768         Fix printf-related compilation warnings on MinGW
9770         * src/conf_post.h (ATTRIBUTE_FORMAT_PRINTF) [__MINGW32__]: Use
9771         '__ms_printf__', not '__gnu_printf__', as the latter is not what
9772         MS 'printf' supports, and causes bogus compilation warnings.
9773         * src/lisp.h (pI) [__MINGW32__]: Define to "I64", as MS 'printf'
9774         doesn't support the "ll" modifier.
9776 2016-06-11  Paul Eggert  <eggert@cs.ucla.edu>
9778         emacs_strerror cleanups
9780         * src/buffer.c, src/emacs.c, src/lread.c: Don’t include coding.h;
9781         no longer needed, now that emacs_strerror is declared by lisp.h.
9782         * src/coding.c (emacs_strerror): Remove; moved to emacs.c.
9783         * src/coding.h (emacs_strerror) [emacs]: Remove decl; moved
9784         to lisp.h.
9785         * src/emacs.c (emacs_strerror): Move here from coding.c.  Do not
9786         convert result string; this is now the caller’s responsibility,
9787         as some need conversion and others don’t.
9788         * src/fileio.c (report_file_errno, report_file_notify_error):
9789         Use emacs_strerror rather than rolling it ourselves.
9790         * src/lisp.h (emacs_strerror): Move decl here from coding.h.
9791         * src/lread.c (dir_warning): Just call emacs_strerror rather than
9792         both strerror and emacs_strerror.  Convert its result from
9793         locale-coding-system, since it no longer does that conversion.
9794         * src/sound.c (sound_perror):
9795         * src/sysdep.c (emacs_perror, str_collate):
9796         Use emacs_strerror, not strerror.
9798 2016-06-10  David Reitter  <david.reitter@gmail.com>
9800         Prevent compiler warning for unused arguments
9802         * lisp/international/ucs-normalize.el
9803         (ucs-normalize-hfs-nfd-pre-write-conversion):
9804         Prevent compiler warning for unused arguments, add coment.
9806 2016-06-10  Paul Eggert  <eggert@cs.ucla.edu>
9808         Catch malloc_get_state, malloc_set_state failure
9810         This should help insulate Emacs better from configuration screwups.
9811         Future versions of the GNU C library are planned to deprecate
9812         these functions, but will continue to support them in
9813         already-built-and-dumped Emacs executables.
9814         * src/alloc.c (malloc_initialize_hook) [DOUG_LEA_MALLOC]:
9815         Abort if malloc_set_state fails.
9816         (alloc_unexec_pre) [DOUG_LEA_MALLOC]:
9817         Report malloc_get_state failure, and exit.
9819 2016-06-10  Eli Zaretskii  <eliz@gnu.org>
9821         Show returned value after gdb-mi "finish" command
9823         * lisp/progmodes/gdb-mi.el (gdb-stopped): Display the expected
9824         "Value returned" message in response to "finish", when not
9825         produced by GDB/MI.  (Bug#23720)
9827 2016-06-10  David Reitter  <david.reitter@gmail.com>
9829         Simplify pre-write-conversion for utf-8-hfs coding system
9831         * lisp/international/ucs-normalize.el
9832         (ucs-normalize-hfs-nfd-pre-write-conversion): Refactor.
9834         May address an issue where Emacs consumed large amounts of CPU
9835         because of neverending toolbar updating (which was caused
9836         by, but also called this function).
9838 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
9840         Revert "Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2"
9842         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
9843         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
9844         Monnier.  (Bug#19185, Bug#20398)
9846         This reverts commit 72166f2f3dba18f1217c666574032f5a0351ed65.
9848         That commit did more harm than good (Bug#23571).
9850 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9852         Port __builtin_assume_aligned to Sun C 5.13
9854         * src/conf_post.h (__builtin_assume_aligned):
9855         Fix typo: the extra arg did not conform to C99.
9857 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9859         Prefer getsockopt to getpeername on non-MS-Windows
9861         * admin/CPP-DEFINES: Remove HAVE_GETPEERNAME.
9862         * configure.ac: Don’t check for getpeername.
9863         * src/process.c (wait_reading_process_output) [!WINDOWSNT]:
9864         Use getsockopt even if not GNU/Linux, as the platforms where
9865         getsockopt used to hang are no doubt long dead.
9867 2016-06-09  Paul Eggert  <eggert@cs.ucla.edu>
9869         Fix XFASTINT of non-fixnum in process status
9871         * src/process.c (decode_status): 3rd arg is now Lisp_Object *,
9872         not int *, and is not decoded.  All uses changed.
9873         (status_message): Do not assume ‘failed’ code is an integer.
9874         * src/process.h: Document codes better.
9876 2016-06-09  Glenn Morris  <rgm@gnu.org>
9878         Make messcompat.el obsolete.
9880         * lisp/obsolete/messcompat.el: Move here from lisp/gnus.
9881         * doc/misc/message.texi (Compatibility): Remove section.
9883 2016-06-09  Glenn Morris  <rgm@gnu.org>
9885         Leading "*" in the doc of defvars is long obsolete.
9887         * lisp/plstore.el (plstore-encrypt-to):
9888         * lisp/cedet/semantic/lex-spp.el
9889         (semantic-lex-spp-macro-max-length-to-save):
9890         * lisp/cedet/semantic/symref.el (semantic-symref-tool):
9891         * lisp/cedet/semantic/bovine/el.el
9892         (semantic-elisp-store-documentation-in-tag):
9893         * lisp/cedet/semantic/wisent/comp.el (wisent-verbose-flag)
9894         (wisent-expected-conflicts):
9895         * lisp/cedet/semantic/wisent/wisent.el (wisent-parse-verbose-flag):
9896         * lisp/gnus/gnus-agent.el (gnus-category-menu-hook):
9897         * lisp/gnus/gnus-group.el (gnus-group-listing-limit):
9898         * lisp/gnus/gnus-srvr.el (gnus-server-menu-hook)
9899         (gnus-browse-menu-hook):
9900         * lisp/gnus/message.el (message-shoot-gnksa-feet):
9901         * lisp/gnus/mm-decode.el (mm-path-name-rewrite-functions):
9902         * lisp/gnus/mm-util.el (mm-extra-numeric-entities):
9903         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
9904         * lisp/gnus/mml.el (mml-generate-multipart-alist):
9905         * lisp/gnus/nndraft.el (nndraft-required-headers):
9906         * lisp/gnus/nnheader.el (nnheader-max-head-length)
9907         (nnheader-head-chop-length, nnheader-file-name-translation-alist)
9908         (nnheader-directory-separator-character)
9909         (nnheader-pathname-coding-system):
9910         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system)
9911         (nnmail-active-file-coding-system):
9912         * lisp/gnus/nnrss.el (nnrss-file-coding-system):
9913         * lisp/gnus/nntp.el (nntp-record-commands):
9914         * lisp/gnus/score-mode.el (gnus-score-edit-done-hook)
9915         (gnus-score-mode-hook, gnus-score-menu-hook):
9916         * lisp/mail/rfc2047.el (rfc2047-header-encoding-alist)
9917         (rfc2047-allow-irregular-q-encoded-words)
9918         (rfc2047-allow-incomplete-encoded-text):
9919         * lisp/mh-e/mh-alias.el (mh-alias-system-aliases):
9920         * lisp/mh-e/mh-e.el (mh-mail-header-separator, mh-x-mailer-string):
9921         * lisp/mh-e/mh-scan.el (mh-scan-format-mh, mh-scan-format-nmh):
9922         * lisp/net/pop3.el (pop3-password):
9923         * lisp/play/animate.el (animate-n-steps):
9924         * lisp/progmodes/cc-vars.el (c-old-style-variable-behavior):
9925         Convert from defvar with leading * to defcustom.
9928         * lisp/emulation/viper-init.el (viper-heading-end):
9929         * lisp/gnus/mm-url.el (mm-url-html-entities):
9930         * lisp/gnus/nnmaildir.el (nnmaildir-article-file-name):
9931         * lisp/mh-e/mh-e.el (mh-invisible-header-fields-compiled):
9932         * lisp/net/tramp-adb.el (tramp-adb-method): Remove leading * from doc.
9934         * lisp/gnus/messcompat.el: Mark (pointless) file not for compilation.
9935         (message-from-style, message-interactive, message-indentation-spaces)
9936         (message-signature, message-signature-file):
9937         Remove settings that match the defaults.
9938         (message-setup-hook, message-mode-hook, message-default-headers)
9939         (message-send-hook, message-send-mail-function):
9940         Just use setq rather than redefining.
9942         * lisp/gnus/nnrss.el (nnrss):
9943         * lisp/mail/rfc2047.el (rfc2047):
9944         * lisp/play/animate.el (animate): New custom groups.
9946 2016-06-09  Glenn Morris  <rgm@gnu.org>
9948         Remove obsolete leading * from defcustom, defface doc strings.
9950         * lisp/cedet/ede/linux.el, lisp/cedet/ede/project-am.el:
9951         * lisp/cedet/ede/simple.el, lisp/cedet/semantic/bovine/c.el:
9952         * lisp/cedet/semantic/complete.el, lisp/cedet/semantic/db.el:
9953         * lisp/cedet/semantic/decorate/include.el:
9954         * lisp/cedet/semantic/decorate/mode.el, lisp/cedet/semantic/format.el:
9955         * lisp/cedet/semantic/ia.el, lisp/cedet/semantic/idle.el:
9956         * lisp/cedet/semantic/imenu.el, lisp/cedet/semantic/lex-spp.el:
9957         * lisp/cedet/semantic/mru-bookmark.el, lisp/cedet/semantic/sb.el:
9958         * lisp/cedet/srecode/fields.el, lisp/ecomplete.el:
9959         * lisp/gnus/gnus-agent.el, lisp/gnus/gnus-art.el:
9960         * lisp/gnus/gnus-async.el, lisp/gnus/gnus-cache.el:
9961         * lisp/gnus/gnus-cite.el, lisp/gnus/gnus-delay.el:
9962         * lisp/gnus/gnus-diary.el, lisp/gnus/gnus-dup.el:
9963         * lisp/gnus/gnus-fun.el, lisp/gnus/gnus-group.el:
9964         * lisp/gnus/gnus-kill.el, lisp/gnus/gnus-msg.el:
9965         * lisp/gnus/gnus-picon.el, lisp/gnus/gnus-salt.el:
9966         * lisp/gnus/gnus-score.el, lisp/gnus/gnus-start.el:
9967         * lisp/gnus/gnus-sum.el, lisp/gnus/gnus-topic.el:
9968         * lisp/gnus/gnus-util.el, lisp/gnus/gnus-uu.el, lisp/gnus/gnus-win.el:
9969         * lisp/gnus/gnus.el, lisp/gnus/mail-source.el, lisp/gnus/message.el:
9970         * lisp/gnus/mm-url.el, lisp/gnus/mm-uu.el, lisp/gnus/mml.el:
9971         * lisp/gnus/nndiary.el, lisp/gnus/nnir.el, lisp/gnus/nnmail.el:
9972         * lisp/gnus/smiley.el, lisp/gnus/smime.el, lisp/mail/mail-extr.el:
9973         * lisp/mh-e/mh-e.el, lisp/net/mailcap.el, lisp/net/pop3.el:
9974         * lisp/net/starttls.el, lisp/progmodes/cc-vars.el:
9975         * lisp/progmodes/cperl-mode.el, test/manual/cedet/tests/test.el:
9976         Remove obsolete leading * from defcustom, defface doc strings.
9978 2016-06-09  Eli Zaretskii  <eliz@gnu.org>
9980         Fix copying text properties by 'format'
9982         * src/editfns.c (styled_format): Fix copying text properties from
9983         the format specification to the produced string representation.
9984         (Bug#23730)
9985         (Fformat) Doc fix.
9987         * doc/lispref/strings.texi (Formatting Strings): Document that
9988         text properties from the format specifiers are also copied to the
9989         produced string.
9991 2016-06-09  Alan Mackenzie  <acm@muc.de>
9993         Handle C++ raw strings.
9995         * lisp/progmodes/cc-engine.el (c-raw-string-pos, c-depropertize-raw-string)
9996         (c-depropertize-raw-strings-in-region,
9997         c-before-change-check-raw-strings)
9998         (c-propertize-raw-string-opener, c-after-change-re-mark-raw-strings): New
9999         functions.
10001         * lisp/progmodes/cc-fonts.el (c-basic-matchers-before): Insert a clause for
10002         c-font-lock-raw-strings.
10003         (c-font-lock-raw-strings): New function.
10005         * lisp/progmodes/cc-langs.el (c-get-state-before-change-functions): Insert
10006         c-before-change-check-raw-strings into the C++ value, and c-depropertize-CPP
10007         into the values for C, C++, and Objective C.
10008         (c-before-font-lock-functions): Insert c-after-change-re-mark-raw-strings into
10009         the C++ value.
10011         * lisp/progmodes/cc-mode.el (c-old-BEG, c-old-END): New variables.
10012         (c-depropertize-CPP): New function, extracted from
10013         c-neutralize-syntax-in-and-mark-CPP.
10014         (c-neutralize-syntax-in-and-mark-CPP): Remove the call to
10015         c-clear-char-property-with-value for 'syntax-table value '(1) at the beginning
10016         of the function.
10017         (c-after-change): Set c-old-BEG and c-old-END to the current values of
10018         c-new-BEG and c-new-END.
10020 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10022         epg: don't use obsolete function
10024         * lisp/epg.el (epg-sign-string, epg-encrypt-string): Remove
10025         redundant configuration check, which is now done in
10026         `epg-make-context'.
10028 2016-06-09  Daiki Ueno  <ueno@gnu.org>
10030         epg: don't start pinentry if it is useless
10032         * lisp/epg.el (epg--start): Don't start pinentry server if the
10033         session is non-interactive or pinentry-mode is set.
10035 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10037         Replace IF_LINT by NONVOLATILE and UNINIT
10039         Inspired by a suggestion from RMS in: https://bugs.gnu.org/23640#58
10040         * .dir-locals.el (c-mode): Adjust to macro changes.
10041         * src/conf_post.h (NONVOLATILE, UNINIT): New macros (Bug#23640).
10042         (IF_LINT): Remove.  All uses replaced by the new macros.
10044 2016-06-08  Michal Nazarewicz  <mina86@mina86.com>
10046         Remove ‘ert-with-function-mocked’ macro in favour of ‘cl-letf’ macro
10048         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): Remove macro
10049         in favour of ‘cl-letf’ macro which is more generic.  All existing
10050         uses are migrated accordingly.  The macro has not been included in
10051         an official release yet so it should be fine to delete it.
10053 2016-06-08  Glenn Morris  <rgm@gnu.org>
10055         * test/lisp/emacs-lisp/package-tests.el
10056         (package-test-update-archives-async): Try re-enabling on hydra.
10058 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10060         * src/fileio.c (auto_save_error): Omit unused local.
10062 2016-06-08  Paul Eggert  <eggert@cs.ucla.edu>
10064         Simplify overflow check via INT_SUBTRACT_WRAPV
10066         * src/editfns.c (check_tm_member): Simplify integer overflow check.
10068 2016-06-07  Glenn Morris  <rgm@gnu.org>
10070         Try to avoid hangs and stray procs in network-stream-tests.  (Bug#23560)
10072         * test/lisp/net/network-stream-tests.el (connect-to-tls-ipv4-wait)
10073         (connect-to-tls-ipv4-nowait, connect-to-tls-ipv6-nowait):
10074         Ensure gnutls-serv process gets killed.
10075         (echo-server-nowait, connect-to-tls-ipv4-nowait):
10076         Limit the amount of time we might wait.
10078 2016-06-07  Glenn Morris  <rgm@gnu.org>
10080         Reduce allout.el's pollution of the namespace.
10082         * lisp/allout.el (allout-set-regexp): Rename from set-allout-regexp.
10083         Keep old name as obsolete alias.
10084         (allout-produce-mode-menubar-entries, allout-nullify-prefix-data)
10085         (allout-solicit-char-in-string)
10086         (allout-count-trailing-whitespace-region, allout-regexp-sans-escapes):
10087         Rename to add an "allout-" prefix.
10089 2016-06-07  Glenn Morris  <rgm@gnu.org>
10091         * configure.ac (emacs_config_features): Add CANNOT_DUMP.
10093 2016-06-07  Glenn Morris  <rgm@gnu.org>
10095         Misc small webjump updates.
10097         * lisp/net/webjump.el (webjump): Add custom group.
10098         (webjump-sample-sites): Make it a constant.
10099         Remove explicit, old list of GNU ftp mirrors.
10100         (webjump-state-to-postal-alist): Make it a constant.
10101         (webjump-sites): Make it a defcustom.
10102         (webjump-to-iwin): Update for changed remote service.
10104 2016-06-07  Glenn Morris  <rgm@gnu.org>
10106         Do not hard-code port for package test server.  (Bug#23708)
10108         * test/lisp/emacs-lisp/package-resources/package-test-server.py:
10109         Do not hard-code port.
10110         * test/lisp/emacs-lisp/package-tests.el (package-test-update-archives-async):
10111         Update for the above change.
10113 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10115         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
10117 2016-06-07  Glenn Morris  <rgm@gnu.org>
10119         * src/fileio.c (auto_save_error): Use display-warning.  (Bug#23703)
10121 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10123         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
10124         Fix non-file-visiting-buffer case.  (Bug#22678)
10126 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10128         Port --enable-gcc-warnings to clang 3.7.0
10130         * configure.ac: Add -Wno-tautological-compare to avoid bogus
10131         warnings about 0 <= rlim.rlim_max.  Remove flags that no longer
10132         seem to be needed, at least in Fedora 23 x86-64.
10134 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10136         Use __builtin_assume_aligned on untagged Lisp vals
10138         * src/conf_post.h (__has_builtin, __builtin_assume_aligned):
10139         New macros, for compilers not already defining them.
10140         (__has_builtin___builtin_assume_aligned): New macro.
10141         * src/lisp.h (lisp_h_XUNTAG): Use __builtin_assume_aligned.
10142         This shrinks text space by 0.2% on x86-64 with GCC 6.1.
10144 2016-06-07  Glenn Morris  <rgm@gnu.org>
10146         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
10147         aliases as the type of their targets.
10149 2016-06-07  Tino Calancha  <f92capac@gmail.com>
10151         * lisp/simple.el (process-menu-mode, list-processes--refresh):
10152         Include PID.  (Bug#21725)
10154 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10156         Merge from origin/emacs-25
10158         6e3adf8 Fix crash in syntax.c after GC
10159         973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
10160         9d5cceb Fix doc string quoting
10161         0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
10162         a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
10164 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
10166         Merge from origin/emacs-25
10168         604f656 * test/automated/viper-tests.el (viper-test-undo-kmacro): Del...
10169         20eb531 * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
10170         a7a2244 * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
10171         07bd972 * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): Fix...
10173 2016-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10175         Use standard Unicode names for Thai, Lao
10177         * lisp/language/lao-util.el, lisp/language/thai-util.el:
10178         Don’t override standard Unicode character name (Bug#23698).
10180 2016-06-06  Glenn Morris  <rgm@gnu.org>
10182         * lisp/man.el (Man-reference-regexp, Man-default-man-entry):
10183         Handle U+2010 hyphen at eol, as used when LANG=en_US.utf8.
10185 2016-06-06  Michael Albinus  <michael.albinus@gmx.de>
10187         Some fixes in filenotify-tests.el for cygwin
10189         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10190         Reintroduce value for cygwin, it's needed on slow systems.
10191         (file-notify--wait-for-events): Move up definition.
10192         (file-notify--test-no-descriptors): Use `file-notify--wait-for-events'.
10193         (file-notify--test-with-events-check, file-notify--test-with-events)
10194         (file-notify-test08-watched-file-in-watched-dir):
10195         Use :random rather than `random.
10196         (file-notify-test06-many-events): Do not skip for cygwin.
10198 2016-06-05  Juri Linkov  <juri@linkov.net>
10200         * src/casefiddle.c (Fupcase_region): Add arg ‘region-noncontiguous-p’.
10202         If non-nil, operate on multiple chunks.  (Bug#23655)
10204         * src/search.c (Freplace_match): Use Qnil for new arg of Fupcase_region.
10206 2016-06-05  Juri Linkov  <juri@linkov.net>
10208         * lisp/wdired.el (wdired-next-line, wdired-previous-line): Add "^"
10210         to interactive spec to handle shift-selection.  (Bug#23642)
10212 2016-06-05  Michael Albinus  <michael.albinus@gmx.de>
10214         Improve robustness of filenotify-tests.el (Bug#23618)
10216         * test/lisp/filenotify-tests.el (file-notify--test-no-descriptors)
10217         (file-notify--test-no-descriptors-explainer)
10218         (file-notify--test-cleanup-p): New defuns.
10219         (file-notify--test-cleanup): Don't check for
10220         `file-notify--test-event' anymore, that's done in
10221         `file-notify--test-no-descriptors'.
10222         (file-notify--test-with-events-check)
10223         (file-notify--test-with-events): Handle the `random' marker.
10224         (file-notify--test-with-events-explainer): Improve readability.
10225         (file-notify-test00-availability)
10226         (file-notify-test01-add-watch, file-notify-test02-events)
10227         (file-notify-test03-autorevert)
10228         (file-notify-test04-file-validity)
10229         (file-notify-test05-dir-validity)
10230         (file-notify-test06-many-events, file-notify-test07-backup)
10231         (file-notify-test08-watched-file-in-watched-dir)
10232         (file-notify-test09-sufficient-resources): Check also
10233         `file-notify--test-cleanup-p'.
10234         (file-notify-test04-file-validity)
10235         (file-notify-test05-dir-validity): Use `ignore' as handler.
10236         (file-notify-test05-dir-validity)
10237         (file-notify-test06-many-events): Delete directory finally.
10238         (file-notify-test08-watched-file-in-watched-dir): Add `random' marker.
10240 2016-06-05  Stephen Berman  <stephen.berman@gmx.net>
10242         man.el: Fix links on hyphenated words (bug#23647)
10244         * lisp/man.el (Man-bgproc-sentinel): Make links work on
10245         hyphenated words.
10247 2016-06-05  K. Handa  <handa@gnu.org>
10249         Add category 'j' to more characters.
10251         * lisp/international/characters.el: Add category 'j' (Japanese)
10252         to characters in japanese-jisx0213.2004-1.
10254 2016-06-04  Tino Calancha  <f92capac@gmail.com>
10256         isearch-edit-string resumes multi isearches
10258         * lisp/isearch.el (with-isearch-suspended): Remember and restore
10259         multi-isearch variables.  (Bug#21663)
10261 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
10263         Fix Eshell display when RTL characters are involved
10265         * lisp/eshell/esh-mode.el (eshell-mode): Set
10266         'bidi-paragraph-direction' to 'left-to-right'.  (Bug#23652)
10268 2016-06-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
10270         Make ses-jump with completing input.
10272         * lisp/ses.el (ses-jump): Make symbol input completing against list of
10273           named cells.
10275 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10277         Port angle-bracket TZ settings to MS-Windows
10279         * doc/lispref/os.texi (Time Zone Rules): Document MS-Windows
10280         lack of support for numeric time zone abbreviations.
10281         * src/w32.c (sys_putenv): Convert angle-bracket TZ syntax
10282         to MS-compatible syntax if possible, and to "ZZZ" otherwise.
10283         Problem reported by Kazuhiro Ito (Bug#23600).
10285 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10287         Avoid delving into Git internals for version
10289         * lisp/loadup.el (exec-path): Set it to nil later, so that
10290         emacs-repository-get-version can invoke git commands in the PATH.
10291         * lisp/version.el (emacs-repository--version-git-1): Remove.
10292         (emacs-repository-get-version): Let Git do it rather than
10293         delving into Git internals.
10295 2016-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10297         * lisp/emacs-lisp/autoload.el (autoload--make-defs-autoload): Expand less
10299 2016-06-01  Paul Eggert  <eggert@cs.ucla.edu>
10301         Fix emacs-repository-get-version with packed .git
10303         * lisp/version.el (emacs-repository-get-version):
10304         Parse .git/packed-refs if it exists.
10305         Problem reported by Martin Rudalics in:
10306         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00554.html
10308 2016-06-01  Michael Albinus  <michael.albinus@gmx.de>
10310         Minor change in tramp.texi
10312         * doc/misc/tramp.texi (Password handling): Do not discuss
10313         anymore how to get password-cache.el.  It is bundled with
10314         Emacs.
10316 2016-06-01  Alan Mackenzie  <acm@muc.de>
10318         Correct fontification and indentation of C++'s "constexpr" expressions
10320         * lisp/progmodes/cc-langs.el (c-type-modifier-kwds): Remove "constexpr".
10321         (c-modifier-kwds): Add "constexpr".
10323 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10325         Cosmetic change to kinsoku-eol.  (tiny change)
10327         * lisp/international/kinsoku.el (kinsoku-eol): Make the
10328         order of characters match with the comments.
10330 2016-05-31  Ikumi Keita  <ikumi@ikumi.que.jp>
10332         Add HIRAGANA ITERATION MARK to japanese-kana-table.  (tiny change)
10334         * lisp/language/japan-util.el (japanese-kana-table): Add an
10335         entry for HIRAGANA ITERATION MARK (U+309D).
10336         (japanese-alpha-numeric-table): Fix docstring.
10338 2016-05-31  K. Handa  <handa@gnu.org>
10340         Fix incomplete handling of translation table in a coding system.
10342         * src/coding.c (get_translation): New arg NCHARS.  Even if TRANS
10343         is an alist, return a character or a vector of character.
10344         (produce_chars): Adjust for the above change.
10345         (consume_chars): Likewise.
10347 2016-05-31  Michael Albinus  <michael.albinus@gmx.de>
10349         Improve robustness for out-of-band copy in Tramp
10351         * lisp/net/tramp-adb.el (tramp-adb-execute-adb-command)
10352         * lisp/net/tramp-cmds.el (tramp-append-tramp-buffers)
10353         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file):
10354         Cosmetic changes.
10356         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
10357         Use local `default-directory'.  Simplify command to send.
10358         Don't check return code, this was already done in
10359         `tramp-process-actions'.
10360         (tramp-get-inline-coding): Don't set `default-directory'.
10362         * lisp/net/tramp.el (tramp-action-out-of-band):
10363         Throw `out-of-band-failed'.
10364         (tramp-process-actions): Handle `out-of-band-failed'.
10365         (tramp-call-process, tramp-call-process-region):
10366         Use local `default-directory'.
10368 2016-05-31  Paul Eggert  <eggert@cs.ucla.edu>
10370         Merge from origin/emacs-25
10372         788c9b6 ; Spelling fix
10373         25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
10374         0992ec3 Correct cl-flet usage (Bug#22317)
10375         50caae3 Release MH-E manual version 8.6
10376         602bb40 Update MH-E's documentation about HTML renderers
10377         89018f0 Fx the we->the typo
10378         845ee57 Restore frames into the current display by default
10379         ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
10380         01c3cd1 etc/TODO: Remove out-of-place issue
10381         5e18486 Clarify doc string of 'file-name-sans-extension'
10382         bffda22 Fix the MSDOS build
10383         f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
10384         1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23...
10385         f7ffc4b Fix infloop in 'number-sequence'
10386         4ab2673 ; Spelling and punctuation fixes in comments
10387         71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
10389 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10391         * lisp/emacs-lisp/autoload.el: Use radix-tree.
10393          (autoload--make-defs-autoload): Rewrite.
10394         (autoload--split-prefixes-1): Remove.
10395         (autoload-def-prefixes-max-entries): Rename from
10396         autoload-defs-autoload-max-size.
10397         (autoload-popular-prefixes): Remove.
10398         (autoload-def-prefixes-max-length): New const.
10400         * lisp/emacs-lisp/radix-tree.el: New file.
10402 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10404         * src/conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Increase.
10406 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10408         Omit IF_LINT code that no longer seems needed
10410         Nowadays GCC is smarter, or the Emacs code has mutated, or both,
10411         and now is as good a time as any to remove uses of IF_LINT that
10412         now seem to be unnecessary.
10413         * lib-src/emacsclient.c (set_local_socket):
10414         * lib-src/movemail.c (main) [MAIL_USE_MAILLOCK && HAVE_TOUCHLOCK]:
10415         * src/buffer.c (fix_start_end_in_overlays, fix_overlays_before):
10416         * src/casefiddle.c (casify_region):
10417         * src/charset.c (load_charset_map):
10418         * src/coding.c (decode_coding_object, encode_coding_object):
10419         * src/data.c (Fmake_variable_buffer_local, Fmake_local_variable)
10420         (cons_to_unsigned, cons_to_signed):
10421         * src/frame.c (make_frame, x_set_frame_parameters):
10422         * src/keyboard.c (read_event_from_main_queue):
10423         * src/regex.c (regex_compile):
10424         * src/syntax.c (back_comment):
10425         * src/window.c (Frecenter):
10426         * src/xfaces.c (Fx_list_fonts):
10427         Remove IF_LINT that no longer seems necessary.
10428         * src/image.c (png_load_body, jpeg_load_body): Simplify use of IF_LINT.
10429         * src/keyboard.c (read_char): Use IF_LINT (volatile) rather than
10430         a pragma dance to pacify GCC -Wclobbered.
10431         * src/xdisp.c (x_produce_glyphs): Rewrite to avoid need for IF_LINT.
10433         * src/xterm.c (x_connection_closed): Now _Noreturn, which should
10434         mean we do not need IF_LINT any more.
10435         (x_io_error_quitter): Now _Noreturn.  Put an 'assume (false)’
10436         at the end, to forestall warnings from older compilers.
10438 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10440         Port --enable-gcc-warnings to Cygwin, FreeBSD
10442         These platforms have a bug where _Noreturn is empty when 'lint' is
10443         defined.  Problem reported by Ken Brown (Bug#23640).
10444         * configure.ac (GCC_LINT): Rename from 'lint'.
10445         * src/conf_post.h (IF_LINT): Use GCC_LINT, not just 'lint’.
10447 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
10449         Update from gnulib
10451         This incorporates:
10452         2016-05-30 Use GCC_LINT, not lint
10453         2016-05-29 secure_getenv: Port to many more platforms.
10454         * doc/misc/texinfo.tex, lib/secure_getenv.c, lib/verify.h:
10455         * m4/secure_getenv.m4: Copy from gnulib.
10457 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10459         * lisp/emacs-lisp/pcase.el: Undo last change's spurious changes
10461         * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add `atom'.
10463 2016-05-30  Ken Brown  <kbrown@cornell.edu>
10465         * src/regex.c (IF_LINT): Remove; it’s in conf_post.h
10467 2016-05-30  Michael Albinus  <michael.albinus@gmx.de>
10469         Fix Bug#23631 for Tramp
10471         * lisp/net/tramp-adb.el (tramp-adb-handle-file-name-all-completions)
10472         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-name-all-completions)
10473         * lisp/net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
10474         Fix caching problems.
10476         * lisp/net/tramp-sh.el (tramp-perl-file-name-all-completions): Simplify.
10478         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
10479         Move duplicate deletion ...
10480         (tramp-smb-handle-file-name-all-completions): ... here.
10482         * lisp/net/tramp.el (tramp-handle-file-name-completion):
10483         Handle `completion-ignored-extensions'.  (Bug#23631)
10485         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10486         Test also `completion-regexp-list' and `completion-ignored-extensions'.
10488 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
10490         * lisp/wid-edit.el (link): Remove :follow-link property (bug#22434)
10492         * lisp/recentf.el (recentf-dialog-mode-map): Remove unecessary mapping.
10494 2016-05-29  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10496         Fix up remainder of the mml property change
10498         * lisp/gnus/message.el (message-send-mail): Use the renamed
10499         mml-buffer-substring-no-properties-except-some function.
10500         (message-send-news): Ditto.
10502 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10504         Allow preserving EXIF rotations when sending HTML messages
10506         * lisp/gnus/mml.el (mml--possibly-alter-image): Allow image
10507         rotation if you have exiftool installed and the image format
10508         supports it.
10509         (mml-expand-html-into-multipart-related): Use it.
10510         (mml-buffer-substring-no-properties-except-some): Renamed and
10511         copy display properties, too.
10513 2016-05-29  Lars Ingebrigtsen  <larsi@gnus.org>
10515         Make message-toggle-image-thumbnails work better
10517         * lisp/gnus/message.el (message-toggle-image-thumbnails): Use
10518         `insert-image' instead of `put-image' to make it possible to
10519         edit the resulting text in a sensible manner.
10521 2016-05-29  Alan Mackenzie  <acm@muc.de>
10523         Rationalize the use of c-new-BEG and c-new-END in CC Mode.
10525         Remove the now redundant c-old-BOM and c-old-EOM.
10527         * lisp/progmodes/cc-engine.el (c-macro-cache-syntactic): Change and simplify
10528         meaning.
10529         (c-macro-cache-no-comment): New variable.
10530         (c-invalidate-macro-cache, c-beginning-of-macro, c-end-of-macro): incorporate
10531         the new c-macro-cache-no-comment.
10532         (c-syntactic-end-of-macro): Make better use of c-macro-cache-syntactic.
10533         (c-no-comment-end-of-macro): New function.
10535         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
10536         c-extend-font-lock-region-for-macros to C/C++/ObjC value.
10538         * lisp/progmodes/cc-mode.el (c-old-BOM, c-old-EOM): Remove.
10539         (c-extend-region-for-CPP): Put results in c-new-BEG/END rather than
10540         c-old-BOM/EOM.
10541         (c-extend-font-lock-region-for-macros): Simplify meaning, no longer returning
10542         a cons for the new region, since the function is now called as an after-change
10543         function.  No longer adjust c-new-END for the length of inserted/deleted
10544         text.  Move the size restrictions on macros to here from
10545         c-neutralize-syntax-in-and-mark-CPP.
10546         (c-neutralize-syntax-in-and-mark-CPP): No longer adjust c-new-BEG/END here.
10547         Use c-no-comment-end-of-macro rather than c-syntactic-end-of-macro to find the
10548         upper boundary to "neutralize" syntactically obtrusive characters.
10549         (c-change-expand-fl-region): Don't set c-new-END to next BOL when already at
10550         one.
10552 2016-05-28  Ken Brown  <kbrown@cornell.edu>
10554         Avoid compiler warnings
10556         * src/cygw32.c (chdir_to_default_directory): Use "void" as
10557         argument list.  Use SSDATA instead of SDATA.
10559         * src/unexcw.c (fixup_executable): Use %td as format specifier for
10560         argument of type ptrdiff_t.  Use %zu for argument of type size_t.
10562 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
10564         Fix 'next-line' and 'previous-line' during keyboard macro
10566         * lisp/simple.el (line-move-visual): Handle the case when point
10567         moves outside of the visible portion of the buffer while executing
10568         a keyboard macro.  (Bug#13452)  (Bug#23551)  (Bug#23555)
10570 2016-05-28  Alan Mackenzie  <acm@muc.de>
10572         C++ Mode: attribute in class declaration fouls up indentation.  Fix!
10574         * lisp/progmodes/cc-engine.el (c-looking-at-decl-block): Add code to skip
10575         back over noise clauses and attribute clauses.
10577         * lisp/progmodes/cc-langs.el (c-paren-nontype-key): New language variable.
10579 2016-05-28  Ken Olum  <kdo@cosmos.phy.tufts.edu>
10581         Prevent locked-file errors in Rmail
10583         * lisp/mail/rmail.el (rmail-get-new-mail-1): Lock file before
10584         calling 'rmail-insert-inbox-text'.  Unlock if
10585         'rmail-insert-inbox-text' doesn't modify buffer.
10586         (rmail-insert-inbox-text): Remove lock-checking code.  (Bug#17706)
10588 2016-05-28  Michael Albinus  <michael.albinus@gmx.de>
10590         Sync with Tramp repository.
10592         * lisp/net/tramp-adb.el (tramp-adb-handle-start-file-process):
10593         * lisp/net/tramp-sh.el (tramp-sh-handle-start-file-process)
10594         * lisp/net/tramp-smb.el (tramp-smb-handle-start-file-process):
10595         Create BUFFER if it doesn't exist.  Reported by Nikolay
10596         Kudryavtsev <nikolay.kudryavtsev@gmail.com>.
10598         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-attributes)
10599         (tramp-gvfs-file-attributes-with-gvfs-ls-regexp)
10600         (tramp-gvfs-file-attributes-with-gvfs-info-regexp): New defconst.
10601         (tramp-gvfs-get-directory-attributes)
10602         (tramp-gvfs-get-root-attributes)
10603         (tramp-gvfs-get-file-attributes): New defun.
10604         (tramp-gvfs-handle-file-attributes)
10605         (tramp-gvfs-handle-file-name-all-completions): Use them.
10606         (tramp-gvfs-handle-file-directory-p): Use `file-truename'.
10607         (tramp-gvfs-maybe-open-connection): Set :noquery flag for process.
10608         (tramp-gvfs-send-command): Add locale settings to `process-environment'.
10609         (top): Suppress D-Bus error messages during zeroconf initialization.
10611         * lisp/net/tramp.el (tramp-unknown-id-string)
10612         (tramp-unknown-id-integer): New defconst.
10613         (tramp-check-cached-permissions)
10614         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes)
10615         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
10616         (tramp-convert-file-attributes, tramp-get-remote-uid)
10617         (tramp-get-remote-gid): Use them.
10619         * lisp/net/tramp-sh.el (tramp-display-escape-sequence-regexp):
10620         Rename from `tramp-color-escape-sequence-regexp'.
10621         (tramp-sh-handle-insert-directory)
10622         (tramp-convert-file-attributes): Adapt callees.
10623         (tramp-device-escape-sequence-regexp): New defconst.
10624         (tramp-wait-for-output): Use it.  Reported by Matthías Páll
10625         Gissurarson <icetritlo@gmail.com>.
10627         * lisp/net/tramp-smb.el (tramp-smb-handle-file-name-all-completions):
10628         Simplify.
10630         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
10631         (tramp-test28-shell-command):
10632         Use `tramp-display-escape-sequence-regexp'.
10634 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10636         Don’t document declare-function internals
10638         Suggested by Stefan Monnier in:
10639         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00618.html
10640         * doc/lispref/functions.texi (Declaring Functions):
10641         * lisp/subr.el (declare-function):
10642         * lisp/emacs-lisp/bytecomp.el:
10643         (byte-compile-macroexpand-declare-function):
10644         Document as (fn file &optional arglist fileonly)
10645         even though it is really (fn file &rest args).
10647 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10649         * src/puresize.h (BASE_PURESIZE): Increase it some more.
10651 2016-05-27  Glenn Morris  <rgm@gnu.org>
10653         * src/puresize.h (BASE_PURESIZE): Increase it by a little bit.
10655         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Tweak previous to
10656         avoid build failure.
10658 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10660         Port to platforms where rlim_max < 0
10662         * src/emacs.c (main): Do not treat a negative rlim_max as a limit;
10663         this can happen if a special value like RLIM_INFINITY is negative.
10665 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10667         Robustify stack-size calculation
10669         * src/emacs.c: Include getpagesize.h.
10670         (main): Check for integer overflow when computing stack size.
10671         Round new rlim_cur to pagesize boundary on all platforms, as this
10672         is easy and would have prevented Bug#23622.  If setrlimit
10673         fails, use current limit to determine re_max_failures.
10675 2016-05-27  Ken Brown  <kbrown@cornell.edu>
10677         Adjust filenotify-tests on Cygwin
10679         * test/lisp/filenotify-tests.el (file-notify--test-timeout):
10680         Remove special case for Cygwin.
10681         (file-notify-test07-backup): Update expected results on Cygwin.
10683 2016-05-27  Paul Eggert  <eggert@cs.ucla.edu>
10685         Improve define-function omitted-arg documentation
10687         * doc/lispref/functions.texi (Declaring Functions):
10688         * lisp/subr.el (declare-function):
10689         Be clearer when documenting omitted args for define-function.
10691 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10693         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add docstring to accessors.
10695 2016-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10697         * lisp/subr.el (definition-prefixes): Expand docstring
10699         * lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
10700         Remove unused function.
10702 2016-05-27  Phillip Lord  <phillip.lord@russet.org.uk>
10704         Fix broken viper deactivation
10706         * lisp/emulation/viper.el (viper--deactivate-advice-list): Destructure
10707           args to advice-remove.
10708           (viper--advice-add): Use cons not list.
10710         Addresses bug#23625
10712 2016-05-27  Mark Oteiza  <mvoteiza@udel.edu>
10714         Preserve buffer point in windows by default (Bug#4041).
10716         * doc/lispref/windows.texi: Mention new default.
10717         * etc/NEWS: Mention new default.
10718         * lisp/window.el (switch-to-buffer-preserve-window-point): Default to t.
10720 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10722         Fix byte-compiler pacification for declare-function
10724         Problem reported by Michael Heerdegen in:
10725         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00590.html
10726         * lisp/emacs-lisp/bytecomp.el:
10727         (byte-compile-macroexpand-declare-function):
10728         Revert signature to previous value.
10729         * lisp/subr.el (declare-function): Change signature to
10730         match the reverted signature used in the byte compiler.
10732 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10734         Update texinfo.tex
10736         This fixes Bug#23611 in a different (and presumably better) way.
10737         * doc/misc/texinfo.tex: Update from gnulib.
10739 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10741         Pacify 'make check-declare'
10743 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10745         Repair damage from emacs-25 merge
10747         * test/lisp/character-fold-tests.el:
10748         Remove, as it was renamed to test/lisp/char-fold-tests.el.
10749         * test/lisp/emulation/viper-tests.el:
10750         Rename from test/automated/viper-tests.el.
10752 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10754         Merge from origin/emacs-25
10756         c3489d0 * lisp/w32-fns.el (set-message-beep, w32-get-locale-info) (w3...
10757         a4d882c Correct old cell name unbinding when renaming cell.
10758         6c12c53 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
10759         0be6725 Document problem: slow screen refresh on missing font.
10760         853b9b9 * admin/admin.el (add-release-logs): Basic check of existing ...
10761         5fa80cf * build-aux/gitlog-to-emacslog: Handle empty generated Change...
10762         3c79e51 * admin/admin.el (add-release-logs): Generate ChangeLog if ne...
10763         42275df * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
10764         3f4a9d9 * admin/authors.el (authors): First update the ChangeLog.
10765         897fb6f ; 'Changes from the pre-25.1 API' copyedits
10766         825ca25 Rename vc-stay-local back to vc-cvs-stay-local
10767         4efb3e8 * doc/emacs/files.texi (Comparing Files): * doc/emacs/trouble...
10768         b995d1e * doc/misc/eww.texi (Advanced): Fix xref.
10769         2e589c0 Fix cross-references between manuals
10770         f3d2ded * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to ...
10771         906c810 ; * admin/release-process: Move etc/HISTORY from here... ; * ...
10772         bea1b65 * admin/admin.el (add-release-logs): Also update etc/HISTORY.
10773         503e752 ; * CONTRIBUTE: Fix a typo.
10774         fbfd478 Avoid aborting due to errors in arguments of 'set-face-attrib...
10775         bdfbe6d ; * admin/release-process: Copyedits.
10776         44a6aed ; * test/automated/data-tests.el: Standardize license notice.
10777         c33ed39 ; * test/automated/viper-tests.el: Standardize license notice.
10778         df4a14b Add automated test for viper-tests.el
10779         c0139e3 Fix viper undo breakage from undo-boundary changes
10780         920d76c Fix reference to obsolete fn ps-eval-switch
10781         18a9bc1 Do not trash symlinks to init file
10782         2671179 Don't print the "decomposition" line for control chars in wha...
10783         869092c Bring back xterm pasting with middle mouse
10784         5ab0830 Provide workaround for xftfont rendering problem
10785         c9f7ec7 * lisp/desktop.el: Disable restore frameset if in non-graphic...
10786         30989a0 Mention GTK+ problems in etc/PROBLEMS
10787         421e3c4 * lisp/emacs-lisp/package.el (package-refresh-contents):
10788         dadfc30 Revert "epg: Add a way to detect gpg1 executable for tests"
10789         e41a5cb Avoid errors with Czech and Slovak input methods
10790         d4ae6d7 epg: Add a way to detect gpg1 executable for tests
10791         ebc3a94 * lisp/emacs-lisp/package.el: Fix free variable warnings.
10792         6e71295 * lisp/emacs-lisp/package.el (package--with-response-buffer):
10793         c45d9f6 Improve documentation of 'server-name'
10794         3b5e38c Modernize ASLR advice in etc/PROBLEMS
10795         1fe1e0a * lisp/char-fold.el: Rename from character-fold.el.
10797 2016-05-26  Eli Zaretskii  <eliz@gnu.org>
10799         Avoid byte-compiler warnings due to 'declare-function'
10801         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
10802         (w32-get-valid-locale-ids):
10803         * lisp/progmodes/js.el (ido-mode): Specify arglist in
10804         'declare-function' forms, to avoid byte-compiler warnings.
10806 2016-05-26  Glenn Morris  <rgm@gnu.org>
10808         * lisp/info.el (Info-default-directory-list): Don't check /share,info.
10810         No-one puts info pages there.  If /share does exist, it's likely to
10811         contain remote file systems where access could be slow.
10813 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10815         Merge from origin/emacs-25
10817         2d76405 etc/AUTHORS: Update the AUTHORS file
10819 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10821         Merge from origin/emacs-25
10823         06cb28f Fix bug#23462: Crash when iconifying frame on OS X.
10825 2016-05-26  Paul Eggert  <eggert@cs.ucla.edu>
10827         Merge from origin/emacs-25
10829         939eb75 Fix bug in default setting of 'ps-paper-type'
10831 2016-05-26  Glenn Morris  <rgm@gnu.org>
10833         * lisp/info.el (Info-default-directory-list): Remove obsolete suffixes.
10835 2016-05-26  Michael Albinus  <michael.albinus@gmx.de>
10837         Fix Bug#23614.
10839         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
10840         Let-bind `process-coding-system-alist' in order to suppress
10841         the value for "cmdproxy".
10843         * lisp/net/tramp.el (tramp-encoding-shell):
10844         `w32-shell-name' is a function.
10845         (tramp-encoding-command-switch)
10846         (tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'.
10848         * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion):
10849         Suppress some tests on MS Windows.  (Bug#23614)
10851 2016-05-26  Stephen Berman  <stephen.berman@gmx.net>
10853         hl-line.el: Fix flickering of highlighted line (bug#23510)
10855         * lisp/hl-line.el (hl-line-maybe-unhighlight)
10856         (global-hl-line-highlight-all)
10857         (global-hl-line-maybe-unhighlight): New functions.
10858         (hl-line-overlay-buffer): New variable.
10859         (hl-line-mode): Use it.  Replace hl-line-unhighlight on
10860         pre-command-hook by hl-line-maybe-unhighlight on
10861         post-command-hook, to prevent hl-line from flickering.
10862         Adjust document string.
10863         (global-hl-line-mode): Use global-hl-line-highlight-all to
10864         simultaneously highlight the current line in all live windows.
10865         Replace global-hl-line-unhighlight on pre-command-hook by
10866         global-hl-line-maybe-unhighlight on post-command-hook, to
10867         prevent global-hl-line from flickering.  Remove
10868         global-hl-line-unhighlight from change-major-mode-hook on
10869         disabling the mode.  Adjust document string.
10871 2016-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
10873         Make autoloads populate a new definition-prefixes table
10875         * lisp/subr.el (definition-prefixes): New hash table.
10876         (register-definition-prefixes): New function.
10878         * lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
10879         (autoload--split-prefixes-1, autoload--split-prefixes)
10880         (autoload--make-defs-autoload): New functions.
10881         (autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
10882         (autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
10883         (update-directory-autoloads): Don't touch loaddefs.el if the set of
10884         autoloads hasn't changed (i.e. if only the timestamp would change).
10886         * lisp/loadup.el: Purify definition-prefixes.
10888         * lisp/w32-fns.el: Keep name space clean.
10889         (w32-set-default-process-coding-system): Rename from
10890         set-default-process-coding-system.
10891         (w32-set-system-coding-system): Rename from set-w32-system-coding-system.
10893 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10895         Allow network-stream-tests to work for out-of-tree builds
10897         * test/lisp/net/network-stream-tests.el
10898         (network-stream-tests--datadir): New defconst.
10899         (make-tls-server): Use it.
10901 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10903         Fix failing echo-server-nowait test
10905         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
10906         Specify IPv4 for the client, to match the family of the server.
10907         (Bug#23606)
10909 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10911         Allow shr-tests to work for out-of-tree builds
10913         * test/lisp/net/shr-tests.el (shr-tests--datadir): New defconst.
10914         (shr-test, rendering): Use it.
10916 2016-05-24  Ken Brown  <kbrown@cornell.edu>
10918         Update allowable arguments for open-network-stream
10920         * src/coding.c (Ffind_operation_coding_system): Allow t as a
10921         target for open-network-stream.  (Bug #23540)
10923 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
10925         Make js-mode's syntax highlighting work again
10927         * lisp/progmodes/js.el (js-mode): Fix the assigned
10928         font-lock-defaults value (bug#23603).
10930 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10932         * lisp/progmodes/cc-mode.el: Add minor comments
10934         (c-change-expand-fl-region): Mark args as unused.
10936 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10938         * lisp/url/url-http.el: Use lexical-binding
10940         (url-http-simple-after-change-function): Use buffer-size rather than `nd'.
10941         (url-http-wait-for-headers-change-function): Remove unused var
10942         `content-length'.
10943         (url-http): Remove unused vars `host' and `port'.
10945 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10947         * lisp/widget.el (define-widget): Use `declare' (which does work now).
10949         (widget-plist-member): Mark as obsolete.
10951 2016-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
10953         * lisp/image.el: Use lexical-binding
10955         (image-scaling-factor, imagemagick-types-inhibit)
10956         (imagemagick-enabled-types): Remove redundant :group.
10957         (image--get-image): Apply de-Morgan and use car-safe.
10958         (image-compute-scaling-factor): Use the argument.
10960 2016-05-23  Glenn Morris  <rgm@gnu.org>
10962         * lisp/image.el (image--get-image): Remove nonsensical code.
10964         * lisp/image.el (image--get-image): Avoid requiring a library for
10965         one trivial operation.
10967 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10969         Don’t use only last protocol from getaddrinfo
10971         Problem reported by Ken Brown in:
10972         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00483.html
10973         * src/process.c (conv_addrinfo_to_lisp): New function.
10974         (connect_network_socket): Arg is now a list of addrinfos, not
10975         merely IP addresses.  All uses changed.  Use protocol from
10976         each addrinfo.
10977         (Fmake_network_process): Accumulate protocols into addrinfos
10978         rather than just using the last one found.
10979         (check_for_dns): Accumulate protocols here, too.
10980         * src/process.h (struct Lisp_Process): Remove ai_protocol;
10981         no longer needed.
10983 2016-05-23  Paul Eggert  <eggert@cs.ucla.edu>
10985         Fix seq requirement that broke bootstrap
10987         * lisp/image.el (image--get-image): Require seq here, not at the
10988         top level, to avoid ‘(require seq) while preparing to dump’ while
10989         bootstrapping.  Suggested by Tino Calancha in:
10990         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00477.html
10992 2016-05-22  Nicolas Petton  <nicolas@petton.fr>
10994         Add missing dependencies to seq.el
10996         * lisp/emacs-lisp/find-func.el:
10997         * lisp/ibuffer.el:
10998         * lisp/image.el: Require seq.
11000 2016-05-22  Alp Aker  <alp@food52.com>
11002         * src/process.c (SOCK_NONBLOCK): Fix typo.
11004 2016-05-22  Etienne Prud’homme  <e.e.f.prudhomme@gmail.com>
11006         Add completion of colors in CSS mode
11008         * lisp/textmodes/css-mode.el (css-value-class-alist): Add CSS colors
11009         from "CSS Color Module Level 3".
11011         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
11012         Update test.
11014 2016-05-21  Paul Eggert  <eggert@cs.ucla.edu>
11016         Prefer SOCK_NONBLOCK to O_NONBLOCK
11018         * src/process.c (SOCK_NONBLOCK): Define to 0 if not already defined.
11019         (connect_network_socket): Create the socket with SOCK_NONBLOCK, to
11020         avoid an fcntl with O_NONBLOCK if SOCK_NONBLOCK works.  Put the
11021         SOCK_DGRAM check a bit later, to keep the logic cleaner, as
11022         the order does not matter here.
11024 2016-05-21  Alan Third  <alan@idiocy.org>
11026         Fix bug#16856, cursor leaves garbage in fringe on OS X.
11028         * src/nsterm.m (ns_draw_window_cursor): Prevent the cursor from
11029         being drawn outside the text area.
11031 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11033         Fix compiler warnings in the MinGW build
11035         * configure.ac [mingw32]: Don't add -Wpointer-sign, and add
11036         -Wno-pointer-sign, to keep the noise level down.
11038         * nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
11039         -Wredundant-decls, as that produces a lot of noise due to
11040         redeclaration of time-related functions by gnulib.
11041         * nt/runemacs.c (set_user_model_id): Fix argument type of
11042         'SetCurrentProcessExplicitAppUserModelID'.
11044         * src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
11045         declare 'dpyinfo', as it is unused.
11046         (xpm_load): Fix warnings about pointer signedness.
11047         * src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
11048         prototypes.
11049         (sys_spawnve): Avoid warnings about discarding 'const' qualifier.
11050         (sys_select): Provide prototype.
11051         (g_b_init_compare_string_w): Move declaration to file scope.
11052         * src/w32heap.c (dumped_data_commit): Now static.
11053         (FREEABLE_P): Avoid warnings about pointer comparison with integer.
11054         (mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
11055         * src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
11056         (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
11057         Provide prototypes.
11058         * src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
11059         redundant prototypes.
11060         (w32_get_internal_run_time, map_w32_filename): Provide prototype.
11061         (init_environment, sys_ctime): Avoid warnings about discarding
11062         'const' qualifier.
11063         Include utimens.h.
11064         (sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
11065         (sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
11066         (sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
11067         prototypes.
11068         (sys_rename_replace): Use %d to avoid compiler warnings.
11069         (_wsa_errlist): Make the message text 'const char *', to avoid
11070         compilation warnings.
11071         (dynlib_reset_last_error): Move prototype to file scope.
11072         (w32_get_resource): First argument is now 'const char *'.
11073         * src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
11074         (otf_features): Second argument is no 'const char *'.
11075         * src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
11076         (x_set_window_size): Remove redundant prototypes.
11077         (XChangeGC, XGetGCValues, w32_draw_underwave)
11078         (w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
11079         (x_calc_absolute_position, x_destroy_window): Now static.
11080         (menubar_selection_callback): Move prototype to file scope.
11081         * src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
11082         declaration.
11083         (w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
11084         (w32font_full_name): Fix warnings about implicit conversion of
11085         'float' to 'double'.
11086         * src/w32reg.c (w32_get_rdb_resource): Fix warnings about
11087         discarding 'const' qualifier.
11088         * src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
11089         (set_frame_menubar): Remove redundant prototypes.
11090         (menubar_selection_callback, w32_menu_display_help): Provide
11091         prototypes.
11092         (simple_dialog_show): Avoid warnings about discarding 'const'
11093         qualifier.
11094         * src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
11095         (free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
11096         (x_set_tool_bar_lines, x_set_internal_border_width): Remove
11097         redundant prototypes.
11098         (current_popup_menu): Remove redundant declaration.
11099         (colormap_t): Member 'name' is now 'const char *'.
11100         (add_system_logical_colors_to_map): Fix signed/unsigned warnings.
11101         (x_decode_color, x_set_border_pixel)
11102         (x_clear_under_internal_border, x_set_name, hook_w32_key)
11103         (reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
11104         static.
11105         (w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
11106         (w32_msg_worker, w32_last_error): Provide prototypes.
11107         (funhook, lookup_vk_code): Avoid warnings about missing
11108         parentheses.
11109         (x_default_font_parameter, Fw32_notification_notify): Avoid
11110         warnings about discarding 'const' qualifier.
11111         (Fx_create_frame): Avoid warnings about empty body of 'else'.
11112         (x_screen_planes): Ifdef away unused function.
11113         (Fx_show_tip): Remove unused variables.
11114         (Fw32_battery_status): Avoid warnings about implicit promotion
11115         from float to double.
11116         (Fw32_notification_notify): Initialize 'timeout'.
11117         * src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
11118         define the TIMER_SETTIME_RUNNING value if it will be used.
11119         * src/w32notify.c (send_notifications): Ifdef away an empty if
11120         clause.  Remove unused variable.
11121         (watch_end, watch_completion): Provide prototypes.
11122         * src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
11123         * src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
11124         warning with pointer signedness.
11125         * src/gnutls.c (gnutls_x509_crt_get_signature)
11126         (gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
11127         don't load them from the GnuTLS library, as they are no longer
11128         used.
11129         * src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
11130         define, as it's unused.
11131         * src/unexw32.c (open_input_file, open_output_file)
11132         (close_file_data): Remove redundant prototypes.
11133         (_start): provide prototype.
11134         (mainCRTStartup): Move prototype to file level.
11135         (find_section): Use type-cast to shut up compiler warnings.
11136         (offset_to_section, relocate_offset): Now static.
11137         (find_section): First argument is now a 'const char *'.
11138         (offset_to_section): Ifdef away, as it's unused.
11139         * src/w32heap.h (find_section): Adjust prototype.
11140         * src/dynlib.c (dynlib_reset_last_error): Provide prototype.
11141         * src/dired.c (directory_files_internal_w32_unwind): Avoid
11142         warnings about missing prototypes.
11143         (is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
11144         (directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
11145         signedness.
11146         * src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
11147         Fix warnings about pointer signedness.
11148         * src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
11149         unused.
11150         * src/sysdep.c (_getpid): Remove redundant prototype.
11151         (sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
11152         [!MSDOS]: Don't define 'st', it's unused.
11153         (init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
11154         (str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
11155         * src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
11156         n_to_read, as it is not used.
11157         (MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
11158         * src/w32font.h (syms_of_w32font): Remove redundant prototype.
11159         * src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
11160         * src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
11161         not used by DOS_NT builds, to avoid compiler warnings.
11162         * src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
11163         declaration.
11164         * src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
11165         up compiler warnings.
11166         * src/w32term.h (x_set_window_size, x_get_focus_frame)
11167         (x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
11168         (x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
11169         (x_free_frame_resources, x_real_positions)
11170         (display_x_get_resource): Remove redundant prototypes.
11172         * lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
11173         (sys_rename, gettimeofday): Provide prototypes.
11174         * lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
11175         declarations.
11176         * lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
11177         (xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
11178         (close_winsock, initialize_sockets, w32_set_user_model_id)
11179         (w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
11180         prototypes.
11181         (w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
11182         difference.
11183         (w32_set_user_model_id): Update prototype of
11184         SetCurrentProcessExplicitAppUserModelID to avoid compiler
11185         warnings.
11186         (start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
11187         shut up compiler warnings.
11188         * lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
11190 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
11192         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
11194         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
11195         wrap on a whitespace character if it's followed by another
11196         whitespace character.  When returning under WORD_WRAP for a screen
11197         line that is continued, restore to wrap point when atpos/atx
11198         position would be displayed on the next screen line due to
11199         line-wrap.  (Bug#23570)
11201 2016-05-21  Puneeth Chaganti  <punchagan@muse-amuse.in>
11203         * lisp/svg.el (svg-create): Fix a typo: xmlsn -> xmlns.  (Bug#23589)
11205 2016-05-20  Andrew Hyatt  <ahyatt@gmail.com>
11207         Added tests for dos unibyte decoding.
11209         The underlying bug was previously fixed by Eli Zaretskii in commit
11210         c8109d9c4057d8cac79e2c139758cadd410e7446.
11212 2016-05-20  Philipp Stephani  <phst@google.com>
11214         Fix handling of ‘mouse-on-link-p’.
11216         If ‘mouse-on-link-p’ returns a string or vector, the first element
11217         is to be used as new event.  Translation to ‘mouse-2’ should only
11218         happen if the return value is not a string or vector.  See
11219         docstring of ‘mouse-on-link-p’ and Bug#23288.
11221         * lisp/mouse.el (mouse--down-1-maybe-follows-link): Process return
11222         value of ‘mouse-on-link-p’ according to documentation.
11224         * test/lisp/mouse-tests.el (bug23288-use-return-value)
11225         (bug23288-translate-to-mouse-2): Tests for Bug#23288.
11227 2016-05-20  Daiki Ueno  <ueno@gnu.org>
11229         epg: Add a way to detect gpg1 executable for tests
11231         Fixes bug#23561.
11233         * test/automated/epg-tests.el
11234         (epg-tests-program-alist-for-passphrase-callback): New
11235         constant.
11236         (epg-tests-find-usable-gpg-configuration): New function,
11237         renamed from `epg-tests-gpg-usable'.  All callers changed.
11238         (epg-tests-gpg-usable): Remove.
11240         * lisp/epg-config.el (epg-config--program-alist): Factor out
11241         constructor element to...
11242         (epg-config--configuration-constructor-alist): ...here.
11243         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
11244         and add PROGRAM-ALIST argument.
11246 2016-05-19  Mark Oteiza  <mvoteiza@udel.edu>
11248         Put point at beginning of display-time-world buffer.
11250         If display-time-world decides to popup vertically from the bottom of the
11251         frame and scroll-margin is nonzero, the top of the buffer contents are
11252         hidden due to scroll.
11253         * lisp/time.el (display-time-world-display): Move point to point-min
11254         after inserting contents.
11256 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11258         Allow null entries in face and image cache
11260         Problem reported by Tino Calancha (Bug#23580).
11261         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID):
11262         Don’t assume that the result is non-null.
11263         * src/xdisp.c (fill_image_glyph_string):
11264         Restore check that image pointer is non-null.
11266 2016-05-19  Paul Eggert  <eggert@cs.ucla.edu>
11268         Fix flyspell highlighting
11270         Problem reported by Jim Meyering (Bug#23575).
11271         * src/xdisp.c (extend_face_to_end_of_line):
11272         Fix typo in previous change.
11274 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
11276         * lisp/server.el (server-name): Add autoload cookie.  (Bug#23576)
11278 2016-05-18  Sam Steingold  <sds@gnu.org>
11280         python-describe-at-point: add and bind
11282 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11284         ‘make check-declare’ now chatters less
11286         * etc/NEWS: Document this.
11287         * lisp/emacs-lisp/check-declare.el (check-declare-locate):
11288         Return relative names, not absolute.
11289         (check-declare-scan, check-declare-verify, check-declare-warn)
11290         (check-declare-file, check-declare-directory):
11291         Generate less chatter.  Use relative file names rather than
11292         absolute.  Don’t give up on computing a good file name for a
11293         diagnostic merely because the function name was bad.  Make
11294         malformed declarations more noticeable.  Don’t warn about
11295         "ext:..." declarations if check-declare-ext-errors is nil.
11296         (check-declare-errmsg): Remove.
11297         (check-declare-warn): New optional arg LINE.
11298         (check-declare-files): Put status into mode line rather than
11299         chattering.
11301 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11303         Pacify byte-compiler for byte-compile-macroexpand-declare-function
11305         * lisp/emacs-lisp/bytecomp.el: Change signature of
11306         byte-compile-macroexpand-declare-function to match that of
11307         declare-function.
11309 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11311         Pacify byte-compiler for with-wrapper-hook
11313         * lisp/subr.el (subr--with-wrapper-hook-no-warnings):
11314         New macro, split out from with-wrapper-hook.
11315         * lisp/abbrev.el (abbrev--default-expand):
11316         * lisp/minibuffer.el (completion--in-region):
11317         * lisp/simple.el (buffer-substring--filter):
11318         * lisp/subr.el (with-wrapper-hook):
11319         Use it.
11321 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11323         Pacify byte-compiler in lisp/url
11325         * lisp/url/url-misc.el, lisp/url/url-file.el (mm-disable-multibyte):
11326         Add decl.
11328 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11330         Port --enable-gcc-warnings to GCC 6.1
11332         * configure.ac (WERROR_CFLAGS): Omit -Wunused-const-variable=2.
11333         * lib-src/etags.c (LOOKING_AT, LOOKING_AT_NOCASE):
11334         Omit test whether pointer plus a constant equals a null pointer.
11335         * src/alloc.c (compact_small_strings):
11336         Avoid pointer arithmetic on null pointers.
11337         * src/alloc.c (mark_face_cache):
11338         * src/fontset.c (free_realized_fontsets, Fset_fontset_font):
11339         * src/fringe.c (draw_fringe_bitmap_1)
11340         (Fset_fringe_bitmap_face):
11341         * src/macfont.m (macfont_draw):
11342         * src/msdos.c (IT_set_face, IT_clear_screen):
11343         * src/nsfont.m (nsfont_draw):
11344         * src/nsterm.h (FRAME_DEFAULT_FACE):
11345         * src/nsterm.m (ns_draw_window_cursor)
11346         (ns_draw_vertical_window_border, ns_draw_window_divider)
11347         (ns_dumpglyphs_box_or_relief)
11348         (ns_maybe_dumpglyphs_background, ns_dumpglyphs_image)
11349         (ns_dumpglyphs_stretch):
11350         * src/w32term.c (w32_draw_vertical_window_border)
11351         (w32_draw_window_divider, x_set_mouse_face_gc):
11352         * src/xdisp.c (estimate_mode_line_height, init_iterator)
11353         (handle_face_prop, handle_single_display_spec, pop_it)
11354         (CHAR_COMPOSED_P, get_next_display_element)
11355         (next_element_from_display_vector, extend_face_to_end_of_line)
11356         (fill_gstring_glyph_string,BUILD_COMPOSITE_GLYPH_STRING):
11357         * src/xfaces.c (Finternal_merge_in_global_face, Fface_font)
11358         (lookup_named_face):
11359         * src/xterm.c (x_draw_vertical_window_border)
11360         (x_draw_window_divider, x_set_mouse_face_gc):
11361         Prefer FACE_OPT_FROM_ID to FACE_FROM_ID when the result might be null.
11362         * src/xterm.c (try_window_id):
11363         Redo loop to convince GCC 6.1 that it is null pointer safe.
11364         (x_color_cells):
11365         Use eassume as necessary to pacify GCC 6.1.
11366         * src/dispextern.h (FACE_FROM_ID, IMAGE_FROM_ID): Now returns non-null.
11367         (FACE_OPT_FROM_ID, IMAGE_OPT_FROM_ID): New macro, with the old
11368         behavior of the non-_OPT macro, to be used when the result
11369         might be a null pointer.
11370         * src/dispnew.c (buffer_posn_from_coords, marginal_area_string)
11371         [HAVE_WINDOW_SYSTEM]:
11372         * src/intervals.h (INTERVAL_WRITABLE_P):
11373         * src/term.c (turn_off_face):
11374         * src/xdisp.c (get_glyph_face_and_encoding, fill_image_glyph_string)
11375         (produce_image_glyph, produce_xwidget_glyph):
11376         * src/xfaces.c (lookup_named_face):
11377         Remove unnecessary test for null pointer.
11378         * src/keyboard.c (read_char): Suppress bogus -Wclobbered warning.
11379         * src/process.c (would_block): New function.
11380         (server_accept_connection, wait_reading_process_output, send_process):
11381         Use it.
11382         * src/xdisp.c (get_window_cursor_type, note_mouse_highlight):
11383         Prefer IMAGE_OPT_FROM_ID to IMAGE_FROM_ID when the result
11384         might be null.
11386 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
11388         Sync from gnulib
11390         This incorporates:
11391         2016-05-17 manywarnings: update for GCC 6.1
11392         2016-05-13 intdiv0, memmem, nocrash, strcasestr, strstr: no exit
11393         * m4/manywarnings.m4, m4/nocrash.m4: Copy from gnulib.
11395 2016-05-16  Glenn Morris  <rgm@gnu.org>
11397         * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
11398         Include more details on hydra.
11400 2016-05-16  Alan Mackenzie  <acm@muc.de>
11402         Tidy up redundant code in cc-vars.el caused by mistake in emacs-25 -> master
11404 2016-05-16  Alan Mackenzie  <acm@muc.de>
11406         Fix spurious fontification of "for (; a * b;)" in CC Mode.
11408         This fixes bug #7918 (again).
11410         * lisp/progmodes/cc-engine.el (c-delq-from-dotted-list): New function.
11411         (c-forward-decl-or-cast-1): Return a 4 element list in place of the previous
11412         cons cell - additionally, return a flag indicating whether the declaration
11413         parsed might have been an expression, and the position of the type identifier
11414         in the said declaration.
11416         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): When
11417         c-forward-decl-or-cast-1 has indicated it might have parsed an expression,
11418         check for it being a spurious declaration in a "for" statement.
11420 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11422         Pacify ‘make check-declare’
11424         * lisp/cedet/srecode/insert.el (data-debug-new-buffer)
11425         (data-debug-insert-stuff-list, data-debug-insert-thing):
11426         * lisp/emulation/viper-ex.el (viper-change-state-to-vi)
11427         (viper-change-state-to-emacs):
11428         * lisp/emulation/viper-macs.el (viper-change-state-to-vi):
11429         * lisp/org/ob-asymptote.el (orgtbl-to-generic):
11430         * lisp/org/ob-awk.el (orgtbl-to-generic):
11431         * lisp/org/ob-core.el (org-edit-src-code, orgtbl-to-generic):
11432         * lisp/org/ob-emacs-lisp.el (orgtbl-to-generic):
11433         * lisp/org/ob-exp.el (org-element-context):
11434         * lisp/org/ob-gnuplot.el (org-time-string-to-time)
11435         (orgtbl-to-generic):
11436         * lisp/org/ob-haskell.el (org-export-to-file):
11437         * lisp/org/ob-latex.el (org-create-formula-image)
11438         (org-latex-compile):
11439         * lisp/org/ob-python.el (run-python):
11440         * lisp/org/ob-sh.el (orgtbl-to-generic):
11441         * lisp/org/ob-tangle.el (org-link-escape, org-back-to-heading):
11442         * lisp/org/org-colview.el (org-agenda-redo):
11443         * lisp/org/org-feed.el (url-retrieve-synchronously):
11444         * lisp/org/org-info.el (Info-find-node):
11445         * lisp/org/org-list.el (org-previous-line-empty-p):
11446         * lisp/org/org-macs.el (org-string-match-p):
11447         * lisp/org/org.el (org-beamer-mode):
11448         Fix prototype to match current definition.
11449         * lisp/emacs-lisp/advice.el (function-called-at-point):
11450         * lisp/progmodes/prolog.el (compilation-shell-minor-mode):
11451         Fix typo: extra '.
11452         * lisp/emacs-lisp/cl-generic.el (cl-defmethod):
11453         Insert ,' to pacify check-declare.
11454         * lisp/org/ob-comint.el (tramp-flush-directory-property):
11455         * lisp/org/ob-tangle.el (org-babel-update-block-body):
11456         * lisp/org/org-bibtex.el (org-babel-trim):
11457         * lisp/org/org-pcomplete.el (org-export-backend-options):
11458         * lisp/org/org-protocol.el (org-publish-get-project-from-filename):
11459         Fix file name in declare-function.
11460         * lisp/org/ob-comint.el (with-parsed-tramp-file-name)
11461         * lisp/org/ob-core.el (with-parsed-tramp-file-name):
11462         * lisp/org/org.el (org-beamer-mode):
11463         * lisp/url/url-http.el (gnutls-negotiate):
11464         Append ‘t’ to declare-function, since the declaration isn’t a defun.
11465         * lisp/org/ob-core.el (show-all):
11466         Declare outline-show-all instead, since it is the
11467         non-obsolete version of this function.
11468         (org-save-outline-visibility): Remove; not needed.
11469         * lisp/org/ob-scheme.el (run-geiser, geiser-mode)
11470         (geiser-eval-region, geiser-repl-exit):
11471         * lisp/org/ox-org.el (htmlize-buffer):
11472         Prepend "ext:" to file name, since it is not part of Emacs.
11473         * lisp/org/ob-sh.el (org-babel-comint-in-buffer)
11474         * lisp/org/org-gnus.el (nnimap-group-overview-filename):
11475         Remove decl, since function was removed.
11476         * lisp/org/ob-sh.el (org-babel-comint-with-output):
11477         * lisp/org/org-macro.el (org-with-wide-buffer):
11478         Omit unnecessary (and mismatching) decl.
11479         * lisp/org/org-agenda.el (calendar-absolute-from-iso):
11480         * lisp/org/org-clock.el (calendar-iso-to-absolute):
11481         Declare calendar-iso-to-absolute instead, since it is the
11482         non-obsolete version of this function.
11483         * lisp/org/org-compat.el (w32-focus-frame):
11484         Remove decl, since function is now obsolete.
11486 2016-05-14  Lars Ingebrigtsen  <larsi@gnus.org>
11488         :max-width/height fixes for shr after the scaling changes
11490         * lisp/net/shr.el (shr-rescale-image): Ensure that we respect
11491         max-width and max-height even after the scaling changes done
11492         earlier this year.
11494 2016-05-14  Eli Zaretskii  <eliz@gnu.org>
11496         Fix reading minibuffer input in viper-mode
11498         * lisp/emulation/viper-cmd.el (viper-read-string-with-history):
11499         Restore an assignment to viper-initial that got lost when
11500         viper-cmd.el was switched to lexical-binding.  (Bug#23536)
11502 2016-05-14  Paul Eggert  <eggert@cs.ucla.edu>
11504         Port autogen.sh to Git 2.4
11506         Problem reported by Michael Brand in:
11507         https://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00367.html
11508         * autogen.sh (git_config): Don't assume that git rev-parse
11509         groks --git-common-dir.
11511 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11513         Merge from origin/emacs-25
11515         6de0715 Properly reject malformed or empty package sigs
11516         edae7d9 Remove buggy non-native image scrolling
11518 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11520         Improve display of tex-verbatim and Info quoted
11522         Problem reported by Glenn Morris (Bug#19889).
11523         * doc/emacs/display.texi (Standard Faces):
11524         * doc/lispref/display.texi (Basic Faces):
11525         * etc/NEWS: Mention fixed-pitch-serif.
11526         * lisp/faces.el (face-font-family-alternatives):
11527         New family alias Monospace Serif.
11528         (fixed-pitch-serif): New face, which uses the new family.
11529         * lisp/info.el (Info-quoted):
11530         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
11531         * test/lisp/legacy/font-parse-tests.el (font-parse-tests--data):
11532         Add test case for Monospace Serif.
11534 2016-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11536         * lisp/net/sieve-mode.el: Handle the text:... notation
11538         Get rid of redundant :group keywords.
11539         (sieve-mode-syntax-table): Move initialization into declaration.
11540         (sieve-syntax-propertize, sieve-syntax-propertize-text): New functions.
11541         (sieve-mode): Use them.
11543 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11545         Tweak check-declare-directory performance
11547         * lisp/emacs-lisp/check-declare.el (check-declare-directory):
11548         Use ‘find ... -exec ... +’ for speed.
11550 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11552         Sync from gnulib
11554         This incorporates a spelling fix, plus:
11555         2016-05-09 Fix undefined behaviour in gettext.h
11556         * lib/gettext.h, lib/mktime.c:
11557         Copy from gnulib.
11559 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
11561         Merge from origin/emacs-25
11563         9c2a1a2 * doc/misc/texinfo.tex: Sync from gnulib.
11564         66cd4d8 * lisp/emacs-lisp/find-func.el (find-feature-regexp) (find-al...
11565         1a5a05c Do not mistake colon at the end of regexp for slash symbol
11566         4c5a00b Make package-install-from-buffer not move point
11567         9596ea1 ; Revert "* emacs-lisp/lisp-mnt.el (lm-header): save-excursion"
11568         f79c352 Redo the fix for bug#21839
11569         8d2f78c Don't treat JS spread as contination method call
11571 2016-05-12  Chris Feng  <chris.w.feng@gmail.com>
11573         Correct server/client address
11575         * src/process.c (Fmake_network_process): :local is for servers and :remote
11576         is for clients.
11578 2016-05-12  Ken Brown  <kbrown@cornell.edu>
11580         Autosave buffers on logout if HAVE_NTGUI
11582         * src/w32fns.c (w32_wnd_proc): Pass a WM_ENDSESSION message on to
11583         w32_read_socket.
11585         * src/w32term.c (w32_read_socket): Create an event of type
11586         END_SESSION_EVENT if a WM_ENDSESSION message is received.
11588         * src/termhooks.h [HAVE_NTGUI]: New event kind END_SESSION_EVENT.
11590         * src/keyboard.c [HAVE_NTGUI] (syms_of_keyboard): New symbol
11591         `end-session'.
11592         (kbd_buffer_get_event): Return an end-session event if an event of
11593         type END_SESSION_EVENT is read.
11594         (keys_of_keyboard): Bind the end-session event to kill-emacs in
11595         special-event-map.  (Bug#23483)
11597 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11599         * lisp/cedet/semantic/{db-el,symref}.el: Mark unused vars
11601         * lisp/cedet/semantic/db-el.el: Use _ to mark unused vars.
11602         (object-print): Use cl-call-next-method instead of call-next-method.
11603         * lisp/cedet/semantic/symref.el: Use _ to mark unused vars.
11605 2016-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
11607         * lisp/cedet/semantic: Silence some warnings
11609         * lisp/cedet/semantic/db-el.el (emacs-lisp-mode)
11610         (semanticdb-get-database-tables): Use make-instance to silence warnings.
11612         * lisp/cedet/semantic/symref.el: Require semantic/find since we use
11613         some macros from there.  Silence compilation warnings:
11614         Replace initargs with slot names in oref/oset.
11615         Move `SYMREF TOOLS' section earlier so definitions precede their use.
11617 2016-05-12  Lars Ingebrigtsen  <larsi@gnus.org>
11619         Support srcset in <img>
11621         * lisp/net/shr.el (shr--preferred-image): Allow <img> tags
11622         with srcset specifiers (bug#23459).
11624 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11626         Do not autoload some functions of tramp.el
11628         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11629         Autoload a shortened version of this function, avoid recursive load.
11630         (tramp-completion-file-name-handler-alist)
11631         (tramp-completion-mode-p)
11632         (tramp-completion-handle-expand-file-name)
11633         (tramp-completion-handle-file-name-all-completions)
11634         (tramp-completion-handle-file-name-completion): Do not autoload.
11636 2016-05-12  Michael Albinus  <michael.albinus@gmx.de>
11638         Avoid recursive load of tramp.el
11640         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11641         Autoload a shortened version of this function, avoid recursive load.
11643 2016-05-11  Michael Albinus  <michael.albinus@gmx.de>
11645         Fix a problem of tramp-tests on hydra.
11647         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11648         Nullify `tramp-default-method' due to hydra.
11650 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11652         Pacify byte-compiler in lisp/vc
11654         * lisp/vc/vc-bzr.el, lisp/vc/vc-cvs.el, lisp/vc/vc-hg.el:
11655         * lisp/vc/vc-rcs.el, lisp/vc/vc-src.el:
11656         Declare functions defined elsewhere, to forestall “might not
11657         be defined at runtime” warnings.
11659 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11661         Merge from origin/emacs-25
11663         d0d9f55 Allow newlines inside cl function arglists
11664         963541a Publicize cl--generic-all-functions
11665         3c581d5 ; Fix typo
11666         e58f900 Add some "safe-local-variable" declarations for compatibility...
11668 2016-05-10  Paul Eggert  <eggert@cs.ucla.edu>
11670         'text-quoting-style' now affects only ` and '
11672         Change 'text-quoting-style' so that it no longer affects
11673         formatting of curved quotes in format arguments to functions like
11674         'message'.  In particular, when this variable's value is 'grave',
11675         all quotes in formats are output as-is.
11676         * doc/lispref/help.texi (Keys in Documentation):
11677         * doc/lispref/strings.texi (Formatting Strings):
11678         * doc/lispref/tips.texi (Documentation Tips):
11679         * etc/NEWS:
11680         * src/doc.c (syms_of_doc): Document this.
11681         * lisp/help-fns.el (describe-function-1):
11682         * src/doc.c (text_quoting_style, Fsubstitute_command_keys)
11683         (syms_of_doc):
11684         * src/editfns.c (styled_format): Omit now-unnecessary code.
11685         * src/lisp.h (LEAVE_QUOTING_STYLE): Remove.
11687 2016-05-10  Alan Mackenzie  <acm@muc.de>
11689         Revert "Fix spurious fontification of "for (; a * b;)" in CC Mode."
11691         This reverts commit 89d1776b81ab552192ee41f13ce84ff86bda4556.  It is
11692         being reverted because it slowed down CC Mode's fontification too much
11693         (factor ~3).  It was the fix to bug #7918.
11695 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
11697         Move "Recent messages" earlier in report-emacs-bug
11699         * lisp/mail/emacsbug.el (report-emacs-bug): Move the "Recent
11700         messages" part earlier so that users can see it and remove it
11701         if they want.
11703 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11705         Pacify byte compiler in tramp.el
11707         * lisp/net/tramp.el (tramp-time-diff): Use `tramp-compat-funcall'.
11709 2016-05-09  Paul Eggert  <eggert@cs.ucla.edu>
11711         Merge from origin/emacs-25
11713         3b47898 Fix doc string in `insert'
11714         b479dea * doc/misc/emacs-mime.texi (time-date): Document now-builtins...
11715         cd27f73 Say 'All results processed' at the end
11716         4ffec91 Document automatic adjustment of process' logical window dime...
11717         dc66271 ; Fix typos and stylistic glitches in NEWS
11719 2016-05-09  Alan Mackenzie  <acm@muc.de>
11721         CC Mode now uses the new :after-hook feature of define-derived-mode
11723         It now runs internal variable setting functions after the mode hooks, no
11724         longer runs the mode hooks twice, and declares the configuration variables for
11725         noise macros and macros with semicolons as safe variables (when given suitable
11726         arguments).
11728         Fixes bug #16759 and bug #23476.
11730         * .dir-locals.el: Put the c-noise-macros-with-paren-names setting
11731         back into the C Mode value.
11733         * lisp/progmodes/cc-mode.el: (c-basic-common-init): Remove the call to
11734         c-make-macro-with-semi-re.
11735         (c-mode, c++-mode, objc-mode, java-mode, idl-mode, pike-mode, awk-mode): Move
11736         c-make-noise-macro-regexps and c-make-macro-with-semi-re (where appropriate)
11737         and c-update-modeline into the :after-hook form.  Remove the explicit settings
11738         of the syntax table, the abbreviation table and the local key map, since they
11739         duplicate forms generated by define-derived-mode.  Remove the explicit
11740         invocation of each mode's mode hook, since they duplicate ones generated by
11741         define-derived-mode.
11743         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
11744         functions.
11745         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
11746         save-local-variable property c-string-list-p.
11747         (c-macro-names-with-semicolon): give the save-local-variable property
11748         c-string-or-string-list-p.
11750         * doc/misc/cc-mode.texi: (Macros with ;, Noise Macros): Note that it's not
11751         necessary to call the regexp generating functions after setting the pertinent
11752         configuration values in a mode hook.
11754 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
11756         Fix the jit-lock-fontify-now test names
11758         * test/lisp/jit-lock-tests.el
11759         (jit-lock-fontify-now-mends-the-gaps)
11760         (jit-lock-fontify-now-does-not-refontify-unnecessarily):
11761         Fix the test names.
11763 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11765         Extend completion candidates in tramp.el
11767         * lisp/net/tramp.el (tramp-parse-default-user-host): New defun.
11768         (tramp-get-completion-function): Use it.
11770 2016-05-09  Michael Albinus  <michael.albinus@gmx.de>
11772         Revert e2f785991d0c696fbb2bc2f331f888d979b8da82 for tramp.el
11774         * lisp/net/tramp.el (tramp-time-diff): Revert previous change due to backwards
11775         compatibility.
11777 2016-05-08  Dmitry Gutov  <dgutov@yandex.ru>
11779         Emulate interactive mode
11781         * test/lisp/jit-lock-tests.el (jit-lock-tests--setup-buffer)
11782         (jit-lock-does-not-refontify-unnecessarily):
11783         Bind noninteractive to nil (bug#23278).
11785 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
11787         Simplify now that float-time etc. are built-in
11789         This was prompted by warnings about calls to now-obsolete functions.
11790         * lisp/calendar/time-date.el (encode-time-value):
11791         Use setq rather than a recursive call, to avoid a warning
11792         about calling this obsolete function.
11793         * lisp/calendar/time-date.el (encode-time-value)
11794         (with-decoded-time-value, time-to-seconds, time-to-number-of-days):
11795         * lisp/erc/erc.el (erc-emacs-time-to-erc-time):
11796         * lisp/net/rcirc.el (rcirc-float-time):
11797         * lisp/org/org-compat.el (org-float-time):
11798         Simplify now that time-add and float-time are now built-in.
11799         * lisp/calendar/time-date.el (time-add, time-subtract, time-less-p):
11800         * lisp/net/newst-backend.el (time-add):
11801         * lisp/org/org.el (time-subtract):
11802         Remove backward-compatibility definitions; they are now built-in.
11803         * lisp/calendar/timeclock.el (timeclock-time-to-seconds)
11804         (timeclock-seconds-to-time):
11805         * lisp/net/rcirc.el (rcirc-float-time):
11806         * lisp/org/org-compat.el (org-float-time):
11807         Now obsolete, since callers can just use float-time and
11808         seconds-to-time.  All uses changed.
11809         * lisp/emacs-lisp/ert.el (ert-results-pop-to-timings):
11810         * lisp/gnus/gnus-art.el (article-lapsed-string):
11811         * lisp/gnus/gnus-diary.el (gnus-user-format-function-d):
11812         * lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
11813         * lisp/gnus/nndiary.el (nndiary-compute-reminders):
11814         * lisp/net/tramp.el (tramp-time-diff):
11815         * lisp/org/org-clock.el (org-clock-timestamps-change):
11816         Prefer the time-subtract builtin to the subtract-time alias.
11817         * lisp/files.el (dir-locals-find-file, dir-locals-read-from-dir):
11818         * test/lisp/character-fold-tests.el (character-fold--speed-test):
11819         Prefer the float-time builtin to the time-to-seconds alias.
11820         * lisp/org/org-agenda.el, lisp/org/org-clock.el, lisp/org/org-list.el:
11821         * lisp/org/org-timer.el, lisp/org/org.el:
11822         Adjust to org-float-time deprecation.
11824 2016-05-08  Alan Mackenzie  <acm@muc.de>
11826         Add :after-hook facility to define-derived-mode.
11828         This allow a form to be evaluated _after_ a major mode's hooks have been run.
11829         It is needed to solve some problems in CC Mode, including bug #16759 and
11830         bug #23476.
11832         * lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
11833         `:after-hook', and generate the requisite code for it.
11834         (derived-mode-make-docstring): Take account of the possibility of :after-hook.
11836         * lisp/subr.el (delayed-after-hook-forms): New variable.
11837         (run-mode-hooks): As the last thing evaluate the forms in
11838         delayed-after-hook-forms.
11840         * doc/lispref/modes.texi (Derived Modes): Document :after-hook.
11841         (Mode Hooks): Document the new feature in run-mode-hooks.
11843         * etc/NEWS: Note the new feature.
11845 2016-05-08  Michael Albinus  <michael.albinus@gmx.de>
11847         Fix recursive load of tramp.elc
11849         * lisp/net/tramp.el (tramp-completion-file-name-handler):
11850         Check also for `tramp-completion-mode-p'.
11851         (tramp-completion-mode, tramp-completion-mode-p): Autoload them.
11853 2016-05-07  Paul Eggert  <eggert@cs.ucla.edu>
11855         Prefer grep -E/-F to egrep/fgrep
11857         POSIX marked egrep and fgrep as legacy apps in SUSv2 (1997) and
11858         withdrew them in SUSv3 (2001), and these days grep -E and grep -F
11859         are probably more portable.
11860         * lib-src/etags.c (main):
11861         * lisp/eshell/em-unix.el (eshell-grep, eshell/egrep)
11862         (eshell/fgrep):
11863         * lisp/cedet/semantic/symref.el (semantic-symref-find-text):
11864         * lisp/eshell/esh-var.el (eshell-apply-indices):
11865         * lisp/progmodes/ada-xref.el (ada-xref-search-with-egrep)
11866         (ada-find-in-src-path):
11867         * lisp/textmodes/ispell.el (ispell-grep-command):
11868         (ispell-lookup-words):
11869         Use or document grep -E and grep -F instead of egrep and fgrep.
11870         * lisp/textmodes/ispell.el (ispell-grep-options):
11871         Use -Ei on all platforms, not just MS-Windows.
11873 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11875         Avoid unnecessary work if a chunk is empty
11877         * lisp/jit-lock.el (jit-lock-fontify-now): Avoid unnecessary work
11878         if a chunk is empty (bug#23278).
11880 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
11882         * test/lisp/jit-lock-tests.el: New file.
11884 2016-05-07  Michael Albinus  <michael.albinus@gmx.de>
11886         Continue to fix Bug#10085
11888         * lisp/net/tramp.el (tramp-completion-file-name-handler-alist)
11889         <expand-file-name>: Add handler.
11890         (tramp-completion-handle-expand-file-name): New defun.
11891         (tramp-handle-file-name-as-directory): Handle completion mode case.
11893         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
11894         Fix test.
11895         (tramp-test24-file-name-completion): Extend test.
11897 2016-05-07  Alan Mackenzie  <acm@muc.de>
11899         Revert change 8e4595a... due to annoyance it causes the development team.
11901         Change 8e4595a438fe85dd109756886cdeaeea2e665afb from 2016-04-30 17:28:24
11902         +0000 was an enhancement to .dir-locals to allow correct fontification
11903         of certain macro constructs.
11905         * .dir-locals.el: Remove the two forms for C Mode dealing with noise macros.
11907 2016-05-07  Alan Mackenzie  <acm@muc.de>
11909         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): Give it a version number.
11911 2016-05-07  Simen Heggestøyl  <simenheg@gmail.com>
11913         Add tests for CSS mode completion
11915         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values)
11916         (css-test-property-values-no-duplicates)
11917         (css-test-value-class-lookup): Use `seq-sort'.
11918         (css-mode-tests--completions): New helper function for retrieving CSS
11919         completions.
11920         (css-test-complete-bang-rule, scss-test-complete-bang-rule)
11921         (css-test-complete-property-value, css-test-complete-pseudo-class)
11922         (css-test-complete-pseudo-element, css-test-complete-at-rule)
11923         (scss-test-complete-at-rule, css-test-complete-property)
11924         (css-test-complete-selector, css-test-complete-nested-selector)
11925         (scss-test-complete-nested-selector): New tests.
11927 2016-05-06  Alan Mackenzie  <acm@muc.de>
11929         Add an option in Edebug to prevent pauses after `h', 'f', and `o'.
11931         Requested by Paul Pogonyshev.  Also add in documentation for Edebug config
11932         variables which was missing.
11934         * lisp/emacs-lisp/edebug.el (edebug-sit-on-break): New customizable option.
11935         (edebug--display-1): Test edebug-sit-on-break before pausing 1 second.
11937         * doc/lispref/edebug.texi (Jumping): Document the effect of the new option.
11938         (Edebug Options): Document the new option.  Also add documentation for
11939         edebug-eval-macro-args, edebug-print-length, edebug-print-level,
11940         edebug-print-circle, edebug-sit-for-seconds.
11942         * etc/NEWS: Note the new feature.
11944 2016-05-07  Jorgen Schaefer  <contact@jorgenschaefer.de>
11946         scheme.el: Turn literal tabs into \t
11948         * lisp/progmodes/scheme.el: The last change to turn tabs into spaces
11949         also caught some literal tabs in character classes. Fix this by
11950         adding \t to those classes.
11952 2016-05-07  Tino Calancha  <f92capac@gmail.com>
11954         Make 'backtab' work in table-mode on text terminals
11956         * lisp/textmodes/table.el (table-cell-bindings): Bind 'backtab'
11957         explicitly.  (Bug#23456)
11959 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
11961         Try to speed-up display of many all-blank lines
11963         * src/bidi.c (bidi_initialize): Use anchored regexps for
11964         paragraph start and paragraph separator sequences.  (Bug#23457)
11966 2016-05-06  Alan Mackenzie  <acm@muc.de>
11968         Correct hack-local-variables change from Thu May 5 11:05:49 2016 +0000
11970         Prevent hack-local-variables being called from the fundamental-mode mode call
11971         early in normal-mode.  This fixes bug #23460 and bug #23463.
11973         * lisp/files.el (normal-mode) Replace call to fundamental-mode with calls to
11974         the things it calls, with the exception of hack-local-variables.
11976         * etc/NEWS: Add an entry to note the calling of hack-local-variables at each
11977         major mode initialization.
11979 2016-05-06  Paul Eggert  <eggert@cs.ucla.edu>
11981         Port xref-tests to master branch
11983         Also, add a test to make this problem less likely in the future.
11984         * test/Makefile.in (check-no-automated-subdir): New rule.
11985         (check, check-expensive, check-maybe): Depend on it.
11986         * test/automated/data/xref/file1.txt: Rename to ...
11987         * test/data/xref/file1.txt: ... here.
11988         * test/automated/data/xref/file2.txt: Rename to ...
11989         * test/data/xref/file2.txt: ... here.
11990         * test/automated/xref-tests.el: Rename to ...
11991         * test/lisp/progmodes/xref-tests.el: ... here.
11992         (xref-tests-data-dir): Use EMACS_TEST_DIRECTORY.
11994 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
11996         Merge from origin/emacs-25
11998         50650cb Doc fixes for fclist and grep
11999         5e814e0 Minor doc fixes for quoting
12000         3347a73 `nreverse' the marker pairs list
12001         1a4127d Use save-excursion in xref-location-marker more
12002         ab3ba91 shell-quote-argument DIR when appropriate
12003         922c7a3 Rework xref-query-replace-in-results
12004         3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
12005         0932b94 Fix todo-mode bug involving archived items (bug#23447)
12006         e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
12007         adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
12008         4d8fd9c Handle "empty line" regexp in xref searches
12009         f559b37 Add tests for xref-collect-matches
12010         6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
12011         6f82d8e Clear buffer-undo-list when showing xrefs
12012         c68a091 Note the quote translation in `message' in section "incompati...
12013         52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
12014         93703c5 (Common Keywords): Correct what missing :group means
12015         79e5800 Improve documentation of Dired's 'A' and 'Q' commands
12016         2ea2a2f Doc fixes for quoting
12017         8544b98 posnp doc clarification
12018         805204f Mention what a missing :group does
12019         ec554d7 Fix documentation of dired-aux search/replace commands
12021 2016-05-05  Simen Heggestøyl  <simenheg@gmail.com>
12023         Support completion of HTML tags in CSS selectors
12025         * lisp/textmodes/css-mode.el (css--html-tags): New variable holding a
12026         list of HTML tags for completion.
12027         (css--nested-selectors-allowed): New variable for determining whether
12028         nested selectors are allowed in the current mode.
12029         (css--complete-selector): New function for completing part of a CSS
12030         selector.
12031         (css-completion-at-point): Support completion of selectors.
12032         (scss-mode): Allow nested selectors.
12034 2016-05-05  Lars Ingebrigtsen  <larsi@gnus.org>
12036         Make `R' in eww work more reliably
12038         * lisp/net/eww.el (eww-score-readability): Protect against
12039         null children.
12041 2016-05-05  Alan Mackenzie  <acm@muc.de>
12043         Call hack-local-variables from major modes rather than from file visiting
12045         This prevents file/directory local variables from being lost when the major
12046         mode is set or changed.
12048         This fixes bug #15577 and bug #23407.
12050         * lisp/files.el (normal-mode): Call `hack-local-variables' when the major mode
12051         function hasn't already done so.
12052         (hack-local-variables): Rename parameter `mode-only' to `handle-mode', make
12053         its previous non-nil setting be t, and introduce the following action for a
12054         non-nil non-t value: apply all settings apart from `mode'.
12056         * lisp/subr.el (run-mode-hooks): call `hack-local-variables' for buffers
12057         which are visiting files.
12059         * doc/emacs/custom.texi (File Variables): Note that setting a major mode also
12060         sets file variables.
12061         (Directory Variables): Note that `mode', `eval', and `unibyte' can be set as
12062         dir local variables, but `coding' can't.
12064         * doc/lispref/modes.texi (Major Mode Conventions): Say that `run-mode-hooks'
12065         also calls `hack-local-variables'.
12066         (Auto Major Mode): Say that `find-file' no longer runs `hack-local-variables',
12067         as from 25.2.  Remove vagueness from `normal-mode' and `set-auto-mode' by
12068         saying that the mode IS SET, not merely "selected" or "chosen".
12069         (Mode Hooks): Document change to `run-mode-hooks'.
12071         * doc/lispref/variables.texi (File Local Variables): Document change to
12072         `hack-local-variables'.
12074 2016-05-05  Michael Albinus  <michael.albinus@gmx.de>
12076         tramp-sh.el: Work around a stat bug
12078         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
12079         stat versions which produce shell quoted output.  See also
12080         coreutils Bug#23422.
12082 2016-05-04  Noam Postavsky  <npostavs@gmail.com>
12084         Fix autogen.sh for separate worktrees
12086         * autogen.sh: Use the $hooks variable in the $sample_hooks loop, instead
12087         of assuming .git/hooks is a directory.
12089 2016-05-04  Alan Mackenzie  <acm@muc.de>
12091         Allow `text-quoting-style' to be `leave', i.e. no translation of quotes.
12093         * lisp/help-fns.el (describe-function-1): Don't set coding system to UTF-8
12094         when text-quoting-style is `leave'.
12096         * src/lisp.h (enum text_quoting_style): Add identifier LEAVE_QUOTING_STYLE.
12098         * src/doc.c (syms_of_doc): New symbol "leave".  Amend doc string of
12099         `text_quoting_style'.
12100         (text_quoting_style): Handle `leave' by returning LEAVE_QUOTING_STYLE.
12101         (Fsubstitute_command_keys): Don't translate quotes when quoting_style is
12102         LEAVE_QUOTING_STYLE.
12104         * src/editfns.c (styled_format): Set quoting_style to -1 when
12105         text-quoting-style is `leave'.
12107 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12109         * lisp/emulation/viper.el:
12110         * lisp/emulation/viper-cmd.el: Use lexical-binding.
12111         (viper-change-state-to-vi, viper-change-state-to-emacs): Allow dummy
12112         args, for use in advice-add.
12113         (viper--init-message): Rename from init-message.
12114         (viper-minibuffer-standard-hook): Adjust accordingly.
12115         (viper-undo): Remove unused var `modified'.
12116         (viper-read-string-with-history, viper-set-searchstyle-toggling-macros):
12117         Don't use dynamic vars as args.
12118         (viper-submit-report): Clarify use of dynamic vars.
12120         * lisp/emulation/viper.el: Use lexical-binding and nadvice.
12121         Remove redundant :group keywords.  Group the (if viper-mode) at top-level.
12122         Use add-function rather than a `(lambda ...).
12123         (viper--advice-list): New var.
12124         (viper--advice-add, viper--deactivate-advice-list): New funs.
12125         (viper-go-away, viper-set-hooks, viper-non-hook-settings): Use them.
12126         (viper-non-hook-settings): Don't hook into find-file any more.
12128 2016-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
12130         * lisp/vc/ediff-util.el: Use lexical-binding.
12132         * lisp/progmodes/js.el (js-syntax-propertize): Recognize shebang line.
12134 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12136         Add an animation sanity check
12138         * lisp/image.el (image-multi-frame-p): Give up on animations
12139         if it seems like they are too slow (bug#23431).
12141 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12143         abbrev-tests.el fix
12145         * test/lisp/abbrev-tests.el (abbrev-table-p-test): Don't check
12146         internal implementation detail.
12148 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
12150         (shr-rescale-image): Clarify logic slightly
12152         * lisp/net/shr.el (shr-rescale-image): Clarify logic slightly.
12154 2016-05-02  Martin Rudalics  <rudalics@gmx.at>
12156         Bind `widget-button-click' to mouse-1/-2 instead of down-mouse-1/-2
12158         * lisp/wid-edit.el (widget-keymap): Bind `widget-button-click'
12159         to mouse-1/-2 instead of down-mouse-1/-2.  Suggested by Stefan
12160         Monnier.  (Bug#19185, Bug#20398)
12162 2016-05-02  Lee Bochicchio  <lboc.home@gmail.com>
12164         Add more abbrev tests
12166         * test/lisp/abbrev-tests.el
12167         (clear-abbrev-table-test): Use `abbrev-expansion'
12168         (abbrev-table-empty-p-test, list-abbrevs-test)
12169         (prepare-abbrev-list-buffer-test, insert-abbrevs-test)
12170         (edit-abbrevs-test, define-abbrevs-test)
12171         (read-write-abbrev-file-test)
12172         (abbrev-edit-save-to-file-test): New tests (bug#23139).
12174 2016-05-02  Philipp Stephani  <p.stephani2@gmail.com>  (tiny change)
12176         Allow eval-ing named character literals
12178         * lisp/progmodes/elisp-mode.el (elisp--preceding-sexp): Skip over
12179         named character literals.
12180         * test/lisp/progmodes/elisp-mode-tests.el
12181         (elisp--preceding-sexp--char-name): Add test for skipping over
12182         named character literals (bug#23354).
12184 2016-05-02  Aaron Conole  <aconole@redhat.com>
12186         Call va_end in boot_error
12188         * src/gnutls.c (boot_error): A recent change added a function
12189         to signal an error or return an error code. That function uses
12190         a variadic argument list to populate an error message
12191         string. However, it missed calling va_end after using the
12192         variadic argument list.
12194           Copyright-paperwork-exempt: yes
12196 2016-05-02  Aaron Conole  <aconole@bytheb.org>
12198         Fix the call to set_network_coding_system
12200         * src/process.c (Fmake_network_process): A recent commit
12201         modified the set_network_socket_coding_system function to take
12202         arguments host, service, and name. However, those arguments
12203         appear to be swapped.
12205           Copyright-paperwork-exempt: yes
12207 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
12209         Revert "alas, a map can have only one parent"
12211         This reverts commit d05806fda1cbba2db112bc783597fbe9d27175b2.
12213         This had already been fixed by using `make-composed-map'.  And
12214         we don't want image-map to inherit from special-mode-map, anyway.
12216 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
12218         Merge from origin/emacs-25
12220         bf21c84 Fix quoting problem in cc-engine debug message
12221         8f36614 Add electric-quote-string unit test
12222         6280531 Don’t electrically quote ‘'’ in Python
12223         fd7b430 `nreverse' Grep hits before passing them to xref--convert-hits
12225 2016-05-02  Sam Steingold  <sds@gnu.org>
12227         alas, a map can have only one parent
12229         * lisp/image-mode.el (image-model-map): Cannot have two parents.
12230         * lisp/image.el (image-map): Inherit from `special-mode-map'.
12232 2016-05-02  Michael Albinus  <michael.albinus@gmx.de>
12234         Fix Bug#10085
12236         * lisp/net/tramp.el (tramp-find-foreign-file-name-handler):
12237         Add optional arguments OPERATION and COMPETION.  Handle
12238         `file-name-as-directory', `file-name-directory' and
12239         `file-name-nondirectory' also in completion mode.
12240         (tramp-file-name-handler): Use it.  (Bug#10085)
12242         * test/lisp/net/tramp-tests.el (tramp-test06-directory-file-name):
12243         Extend test.
12245 2016-05-01  Martin Rudalics  <rudalics@gmx.at>
12247         * src/minibuf.c (read_minibuf): Use CONSP instead of Fconsp.
12249 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12251         Tweak .gitignore
12253         * .gitignore: Remove leim/changed.misc, leim/changed.tit,
12254         as these files are no longer created.  Add gmon.out, for
12255         -pg profiling.  Sort.
12257 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12259         Sync from gnulib
12261         This incorporates:
12262         2016-05-01 mktime: port to stricter signed overflow checking
12263         2016-05-01 mktime: speed up DEBUG_MKTIME benchmarks
12264         2016-05-01 mktime: resurrect DEBUG_MKTIME testing
12265         2016-05-01 mktime: simplify DEBUG_MKTIME
12266         2016-05-01 Port mktime_internal offset to unsigned time_t
12267         2016-04-27 xstrtol: prohibit monstrosities like "1bB"
12268         2016-04-13 mktime: improve integer overflow checking
12269         2016-04-13 intprops: check two's complement assumption
12270         2016-04-13 intprops, mktime, strtol: assume two's complement
12271         * lib/intprops.h, lib/mktime-internal.h, lib/mktime.c:
12272         * lib/strtol.c, lib/timegm.c, m4/mktime.m4, m4/std-gnu11.m4:
12273         Copy from gnulib.
12275 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12277         Merge from origin/emacs-25
12279         c695fb3 ; Spelling fixes
12280         03750c0 * doc/misc/texinfo.tex: Sync from gnulib.
12281         42fed3b * lisp/isearch.el (isearch-forward-symbol-at-point): Add isea...
12283 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12285         Merge from origin/emacs-25
12287         d8affa3 Use ‘T *restrict’ proto, not ‘T[restrict]’
12288         d38d2a8 Fix documentation of 'url-retrieve-synchronously'
12289         586b213 * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bu...
12291         # Conflicts:
12292         #       doc/misc/url.texi
12293         #       lisp/url/url.el
12295 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12297         Merge from origin/emacs-25
12299         16e5e8e Fix last change to isearch-update (bug#23406)
12300         b755d98 Autoload cursor-sensor-inhibit (bug#23406)
12301         b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
12302         86aa409 Followup for last commit in the user manual
12303         7004459 Improve doc string of 'set-goal-column'
12304         ccdaf04 Fix the MSDOS build
12305         ffe701c Remove \= from format string (bug#18190)
12306         1c58fa1 Fix variable-pitch font on MS-Windows
12307         c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
12308         b671e21 Revert unneeded change which harms syntactic parsing.  This f...
12309         48b24c9 Correct indentation of ids in a C++ enum after a protection k...
12310         5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
12311         734fb3a Port dumping to NetBSD with PaX
12312         0255a70 Don't mistake `for' inside a function for a part of array com...
12314         # Conflicts:
12315         #       src/Makefile.in
12317 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12319         Merge from origin/emacs-25
12321         71fb0e0 Improve last change to vc-git-mode-line-string
12322         6858e77 Todo mode doc bug fix
12323         e55d0db Fix revision calculation in vc-git-mode-line-string
12324         ca87b34 ; Fix errant revert ccb75d7
12325         40bfebe Add Python 3.5 keyword "await"
12326         fa7886a Add new keywords of Python 3.5
12327         ccb75d7 Partially revert previous change.
12328         8ee168a ; * etc/NEWS: Update entry about color fonts on OS X with a w...
12329         b09ca27 Say why text-quoting-style is not a user option
12331 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
12333         Merge from origin/emacs-25
12335         5a952eb Don't mention ~/.emacs.bmk literally in doc strings
12336         c338cf3 * etc/NEWS: Explain why multicolor font display is disabled o...
12337         c30d1b4 Port to Ubuntu 16.04 --enable-gcc-warnings
12339 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12341         Mention the `find-library-name' changes
12343 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12345         Fix text in menu in minor-mode-menu-from-indicator
12347         * lisp/mouse.el (minor-mode-menu-from-indicator): Don't
12348         capitalize "Off" in "Turn Off" (bug#11028).
12350 2016-05-01  David Engster  <deng@randomsample.de>
12352         gitmerge: Add cherry pick to gitmerge-skip-regexp
12354         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
12355         from commit", which is the string appended by 'git cherry-pick
12356         -x'.
12358 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12360         Allow `global-set-key' to bind keys under the `M-o' map
12362         * lisp/subr.el (global-set-key): Allow binding keys under the
12363         `M-o' map (bug#9730).
12365 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12367         Add `size-indication-mode' to the menu on `mouse-1' "Top"
12369         * lisp/bindings.el (mode-line-column-line-number-mode-map):
12370         Add `size-indication-mode' to the menu (bug#5727).
12372 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12374         Allow finding libraries loaded manually outside the load-path
12376         * lisp/emacs-lisp/find-func.el (find-library--from-load-path):
12377         New function to find a library from a load path (bug#5661).
12378         (find-library-name): Use it.
12380         There are so many combinations of inputs and possibly entries in
12381         `load-history' that the code looks like an entry in a code obfuscation
12382         contest.  If anybody has a better implementation, please substitute.
12384         But remember that the input given may be foo, foo.el, foo.elc, and the
12385         entries in load-history may be foo.el, foo.elc and foo.el.gz, and we
12386         want to return only foo.el and foo.el.gz.  *phew*
12388 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
12390         Allow minibuffer prompts to use faces
12392         * doc/lispref/minibuf.texi (Text from Minibuffer): Document
12393         `minibuffer-prompt-properties' and explain how faces work in
12394         the minibuffer prompt.
12396         * src/minibuf.c (read_minibuf): If `face' is in
12397         `minibuffer-prompt-properties', apply it to the end of the
12398         face list to allow users to have their own faces on the
12399         prompts (bug#16136).
12401 2016-05-01  Peter Feigl  <peter.feigl@nexoid.at>  (tiny change)
12403         Add R7RS syntax forms to scheme.el
12405         * lisp/progmodes/scheme.el (scheme-font-lock-keywords-2): Add
12406         a number of special forms introduced in R7RS-small.
12407         * lisp/progmodes/scheme.el (scheme-indent-function): Same.
12409 2016-05-01  Alan Third  <alan@idiocy.org>
12411         Implement horizontal scroll bars on NS
12413         * lisp/scroll-bar.el (horizontal-scroll-bars-available-p): Remove NS
12414         check.
12415         * lisp/term/ns-win.el: Remove custom NS scroll-bar handlers and bind
12416         scroll-bar mouse clicks to standard handlers.
12417         * src/nsterm.h (EmacsScroller): Add 'horizontal' property and rename
12418         pixel_height to pixel_length.
12419         * src/nsterm.m (x_set_window_size): Remove left-hand scroll-bar code. It
12420         caused scroll-bars to be over-drawn and the best working solution
12421         appears to be complete removal.
12422         (ns_set_horizontal_scroll_bar): Rewrite to handle horizontal scrollers
12423         correctly.
12424         (ns_set_vertical_scroll_bar): Set width to actual scroller width.
12425         (setFrame): Handle horizontal case.
12426         (dealloc): Handle horizontal case.
12427         (judge): Handle horizontal case.
12428         (setPosition): Rename pixel_height to pixel_length.
12429         (sendScrollEventAtLoc): Handle horizontal case.
12430         (mouseDown): Handle horizontal case and general tidy up of code.
12431         (mouseDragged): Handle horizontal case. Call sendScrollEventAtLoc with
12432         absolute pixel size instead of ratio.
12433         * src/window.h: Remove NS check.
12435 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
12437         tramp.texi: Revert last change due to backward compatibility
12439 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12441         Fix the buffer-count patch (Bug#23394)
12443         * src/buffer.c (Fgenerate_new_buffer_name): Increment count just
12444         once each time through the loop.  Reported by Lars Ingebrigtsen in:
12445         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00918.html
12447 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12449         cua-prefix-override-inhibit-delay doc fix
12451         * lisp/emulation/cua-base.el
12452         (cua-prefix-override-inhibit-delay): Typo fix in doc string
12453         (bug#23401).
12455 2016-04-30  Paul Eggert  <eggert@cs.ucla.edu>
12457         Fix generate-new-buffer-name increment typo
12459         Problem reported by Chaitanya Koparkar (Bug#23394).
12460         * src/buffer.c (Fgenerate_new_buffer_name): Increment count when
12461         generating a new buffer.  This fixes a typo I introduced in
12462         2014-04-05T00:04:58Z!eggert@cs.ucla.edu.
12464 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12466         global-eldoc-mode doc fix
12468         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
12469         specific about what "applicable" means (bug#23071).
12471 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12473         Make the legend in describe-categories a link
12475         * lisp/help-fns.el (describe-categories): Make the "see
12476         bottom" text a link (bug#22227).
12478 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12480         normal-top-level-add-subdirs-to-load-path doc fix
12482         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
12483         Doc fix (bug#21962).
12485 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12487         isearch-search-fun-function doc tweak
12489         * lisp/isearch.el (isearch-search-fun-function): Mention what
12490         the STRING parameter is (bug#21552).
12492 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12494         Fill some imenu--index-alist doc lines
12496         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
12498 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12500         Make describe-variable look up the variable in the current buffer
12502         * lisp/help-fns.el (describe-variable): Get the variable
12503         definition in the buffer we were called from (in case it only
12504         exists there) (bug#21252).
12506 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12508         Fmarker_position doc string clarification
12510         * src/marker.c (Fmarker_position): Clarify the doc string
12511         (bug#21231).
12513 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12515         Further define-obsolete-* doc fixups
12517         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12518         Fix up last change.
12519         (define-obsolete-variable-alias): Ditto.
12521 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12523         Describe WHEN in all the define-obsolete- macros
12525         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
12526         Say more verbosely what WHEN is (bug#21225).
12527         (define-obsolete-function-alias): Describe the WHEN parameter.
12528         (define-obsolete-variable-alias): Ditto.
12530 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12532         Mention with-silent-modifications in the lispref manual
12534         * doc/lispref/text.texi (Changing Properties): Document
12535         with-silent-modifications (bug#21171).
12537 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12539         with-silent-modifications doc clarification
12541         * lisp/subr.el (with-silent-modifications): Rearrange the doc
12542         string a bit so that the most pertinent information is at the
12543         top (bug#21171).
12545 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12547         clear-visited-file-modtime doc string fix
12549         * lisp/files.el (clear-visited-file-modtime): Fix possibly
12550         confusing doc string wording (bug#21169).
12552 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12554         Document mode mode line variables
12556         * doc/lispref/modes.texi (Mode Line Variables): Document
12557         `mode-line-front-space, `mode-line-misc-info',
12558         `mode-line-end-spaces' (bug#21014).
12560 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12562         Add a cross ref to Optional Mode Line
12564         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
12565         reference to the Emacs mode line node that explains things
12566         like `display-time-string' (bug#21002).
12568 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12570         Add a doc string to display-time-string
12572         * lisp/time.el: Add a doc string to `display-time-string',
12573         because it's referred to in the manual, and is too mysterious
12574         otherwise (bug#21002).
12576 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12578         custom-buffer-style doc fix
12580         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
12581         value (bug#20724).
12583 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12585         Document how to check for ImageMagick support
12587         * doc/lispref/display.texi (ImageMagick Images): Say how to
12588         check for ImageMagick support, which isn't quite obvious
12589         (bug#20702).
12591 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12593         Minor doc fix for ImageMagick/SVG builds
12595         * doc/lispref/display.texi (SVG Images): Don't imply that you
12596         have to build Emacs yourself (bug#20702).
12597         (ImageMagick Images): Ditto.
12599 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12601         Rearrange the doc of query-replace slightly
12603         * lisp/replace.el (query-replace): Move the mention of the
12604         interactive prefix arg earlier so that users can find it
12605         (bug#20654).
12607 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12609         apropos-print doc fix
12611         * lisp/apropos.el (apropos-print): Document the undocumented
12612         parameters (bug#20520).
12614 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12616         completion-table-with-predicate doc string fix
12618         * lisp/minibuffer.el (completion-table-with-predicate): t ->
12619         non-nil in the doc string (bug#20460).
12621 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12623         Fill the completion-table-with-predicate doc string
12625         * lisp/minibuffer.el (completion-table-with-predicate): Fill
12626         the doc string (bug#20460).
12628 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12630         replace-match-maybe-edit doc clarification
12632         * lisp/replace.el (replace-match-maybe-edit): Say what
12633         MATCH-DATA is (bug#20304).
12635 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12637         add-timeout doc fix
12639         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
12640         value (bug#20181).
12642 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12644         Extremely minor doc fix in Choosing Window
12646         * doc/lispref/windows.texi (Choosing Window): There's only one
12647         action alist, I think (bug#20158).
12649 2016-04-30  Alan Mackenzie  <acm@muc.de>
12651         * .dir-locals.el: Amend for correct fontification of *.[ch]
12652         containing "IF_LINT"
12654 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12656         Transform mentions of `eval-after-load' to `with-eval-after-load'
12658         * doc/lispref/loading.texi (Hooks for Loading): Update text to
12659         not mention `eval-after-load' (bug#20038).
12661 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12663         cursor-type doc fix
12665         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
12666         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
12668 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12670         Add a link from Tool Bar to Images
12672         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
12673         Images node (bug#19722).
12675 2016-04-30  Alan Mackenzie  <acm@muc.de>
12677         CC Mode: Recognize a noise macro with parens after a declarator's identifier
12679         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): In the while loop
12680         following comment "Skip over type decl suffix operators." insert code also
12681         to check for noise macros with parentheses.
12683 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12685         (default-mode-line-format): More explicit obsolete info
12687         * lisp/subr.el (default-mode-line-format): Be more explicit in
12688         how default values are now handled (bug#19424).
12690 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12692         Fcompare_buffer_substrings doc string clarification
12694         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
12695         doc string clarification (bug#19255).
12697 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12699         insert-file-contents-literally doc fix
12701         * lisp/files.el (insert-file-contents-literally): Say that the
12702         parameters are explained in the other function (bug#18317).
12704 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12706         Fix custom types for cursor-in-non-selected-windows
12708         * lisp/cus-start.el (standard): Use the same custom types for
12709         cursor-in-non-selected-windows as for cursor-type (bug#19214).
12711 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12713         Doc clarification to mwheel-scroll
12715         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
12716         does not apply to Windows (bug#19209).
12718 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12720         Clarify the doc of eval-expression-print-format
12722         * lisp/simple.el (eval-expression-print-format): Doc
12723         clarification (bug#19114).
12725 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12727         (extended-command-suggest-shorter): Add a version string
12729         * lisp/simple.el (extended-command-suggest-shorter): Add a
12730         version string.
12732 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12734         Document extended-command-suggest-shorter
12736         * doc/emacs/m-x.texi (M-x): Mention
12737         extended-command-suggest-shorter (bug#19152).
12739 2016-04-30  Ivan Shmakov  <ivan@siamics.net>
12741         Add a variable to control "shorter command" suggestions
12743         * lisp/simple.el (extended-command-suggest-shorter): New variable (bug#19152).
12744         (execute-extended-command): Use it.
12746 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12748         Explictly explain that package-initialize loads the packages
12750         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
12751         in saying that `package-initialize' obviates adjusting the
12752         path or requiring the packages, as this is a question that
12753         apparently comes up now and then (bug#18829).
12755 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12757         Have the doc strings of `load-path' and `require' mention each other
12759         * src/fns.c (Frequire): Mention `load-path' and fill the doc
12760         string (bug#18829).
12762         * src/lread.c (syms_of_lread): Mention that `require' uses
12763         `load-path'.
12765 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12767         Doc fix for insert-pair-alist
12769         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
12770         COMMAND-CHAR is (bug#18809).
12772 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12774         Move doc of backup-directory-alist to the Backup node
12776         * doc/emacs/files.texi (Backup): Move the documentation of
12777         `backup-directory-alist' here from the "Single or Numbered
12778         Backups" node, because it doesn't seem to have much to do with
12779         numbering (bug#18692).
12781 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12783         Tiny doc clarification for create-fontset-from-fontset-spec
12785         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
12786         Clarify what the optional part is (bug#18686).
12788 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12790         Fill the doc string of font-lock-keywords
12792         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
12793         reorganize some explanations (bug#21427).
12795 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12797         Doc fix for font-lock-remove-keywords
12799         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
12800         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
12802 2016-04-30  Lars Ingebrigtsen  <larsi@gnus.org>
12804         Clarify whitespace-style doc string
12806         * lisp/whitespace.el (whitespace-style): Doc clarification
12807         (bug#18296).
12809 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12811         No need to test for jka-compr
12813         * lisp/vc/ediff-util.el (ediff-file-compressed-p): jka-compr
12814         is always available; no need to test (bug#18204).
12816 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12818         Doc fixed for next-error-buffer-p
12820         * lisp/simple.el (next-error-buffer-p): Clarify doc string
12821         (bug#18202).
12823 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12825         Tiny doc fix
12827         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
12828         (and fill) (bug#18201).
12830 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12832         Doc fix
12834         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
12835         slightly (bug#18092).
12837 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12839         delsel doc touch ups
12841         * lisp/delsel.el (delete-selection-helper): Use non-nil
12842         instead of t and clarify function return values (bug#18089).
12844 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12846         Doc fixes for menu-bar.el
12848         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
12849         REGION parameter (bug#18028).
12850         (clipboard-kill-region): Ditto.
12852 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12854         Doc fix
12856         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
12858 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12860         Minor doc clarification
12862         * lisp/subr.el (y-or-n-p): Document the return value from "n"
12863         (bug#18024).
12865 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12867         Fill font-lock-mode doc string
12869         * lisp/font-core.el (font-lock-mode): Fill the text to make it
12870         narrower (bug#18008).
12872 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12874         Wrap the auto-generated doc string
12876         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
12877         string to make it less likely that we get overlong lines
12878         (bug#17999).
12880 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12882         Clarify hi-lock-find-patterns
12884         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
12885         (bug#17989).
12887 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12889         Warning fix in jit-lock-mode
12891         * lisp/jit-lock.el (jit-lock-mode): Don't issue a warning when
12892         turning the mode on in an indirect buffer, if this somehow has
12893         happened (bug#17738).
12895 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12897         Add a doc string to `winner-mode'
12899         * lisp/winner.el (winner-mode): Add a doc string based on the
12900         comments in the file (bug#17716).
12902 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12904         Doc fix for align-newline-and-indent
12906         * lisp/align.el (align-newline-and-indent): Mention that
12907         alignment is done by `align' (bug#17707).
12909 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12911         Cancel the eldoc timer when switching off eldoc mode
12913         * lisp/emacs-lisp/eldoc.el (eldoc-mode): Cancel the eldoc
12914         timer when switching off eldoc mode.  It will be restarted
12915         again if needed (bug#17582).
12917 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12919         Doc fix for `kbd'
12921         * lisp/subr.el (kbd): Describe more fully the format of the
12922         parameter (bug#17039).
12924 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12926         Add a sanity check to apropos-documentation-internal
12928         * lisp/apropos.el (apropos-documentation-internal): Add a
12929         sanity check to be less fragile in the presence of invalid
12930         data (bug#16725).
12932 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12934         Doc tweak
12936         * lisp/simple.el (use-empty-active-region): Doc tweak.
12937         There's only one region (bug#16513).
12939 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12941         Clarify `read-face-name' doc and tweak the code
12943         * lisp/faces.el (read-face-name): Clarify the documentation
12944         and allow a mix of faces and faces names in all cases
12945         (bug#16483).
12947 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12949         Remove ": ?" from the read-face-name prompt
12951         * lisp/faces.el (read-face-name): Remove ": ?" from the prompt
12952         to be more backwards compatible (bug#15909).
12954 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12956         Link from (emacs)Exiting to (lisp)Killing Emacs
12958         * doc/emacs/entering.texi (Exiting): Link to the lispref
12959         manual for further customizations (bug#15445).
12961 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12963         find-lisp doc touchups
12965         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
12966         string (bug#15047).
12967         (find-lisp-find-files): Clarify doc.
12969 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12971         Don't have the manual claim that it lists all CL incompatibilities
12973         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
12974         incompatibilities isn't exhaustive, so don't say that it is
12975         (bug#15171).
12977 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12979         Fix call of `kmacro-display'
12981         * lisp/kmacro.el (kmacro-view-ring-2nd): Fix call of
12982         `kmacro-display' (bug#15020).
12984 2016-04-29  Lars Ingebrigtsen  <larsi@gnus.org>
12986         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
12988         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
12989         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
12990         (bug#14554).
12992 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
12994         Rename "Directory Search" menu to "Servers"
12996         * lisp/menu-bar.el (menu-bar-tools-menu): Rename "Directory
12997         Search" to "Directory Servers".  Suggested by Eli
12998         Zaretskii. (bug#14919).
13000         * lisp/net/eudc.el: Rename ditto throughout.
13002 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13004         Remove uses of the unused to-end parameter from simple.el
13006         * lisp/simple.el (line-move-partial): Remove usages of the
13007         unused to-end parameter, and make it optional (bug#14844).
13008         (line-move): Remove use of the unused to-end parameter.
13010 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13012         Doc fix: _ chars are automatically removed.
13014         * lisp/cus-edit.el (custom-buffer-create): _ chars are
13015         automatically removed when displaying help, so fix the last
13016         doc change.
13017         (custom-buffer-create-other-window): Ditto.
13019 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13021         Doc string change to enable-recursive-minibuffers
13023         * src/minibuf.c (syms_of_minibuf): Mention
13024         minibuffer-depth-indicator-mode in the doc string to
13025         enable-recursive-minibuffers (bug#14147).
13027 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13029         Fix definition of nobreak-space
13031         * lisp/faces.el (nobreak-space): The definition to
13032         nobreak-space was inadvertantly changed by the previous checkin.
13034 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13036         Clarify the `interactive' doc string slightly
13038         * src/callint.c (Finteractive): Clarify the doc string slightly
13039           (bug#14577).
13041 2016-04-28  Drew Adams  <drew.adams@oracle.com>
13043         Make icomplete respect `completion-ignored-extensions'
13045         * lisp/icomplete.el (icomplete-completions): Heed
13046         `completion-ignored-extensions' (bug#12939).
13048 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13050         Make ibuffer not break on newline-embedded buffer names
13052         * lisp/ibuffer.el (name): When buffer names contain newlines,
13053         quote those newlines before displaying (bug#12378).
13055 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13057         Add a new face for non-breaking hyphen characters
13059         * doc/emacs/display.texi (Standard Faces): Mention nobreak-hyphen.
13060         (Text Display): Ditto.
13062         * lisp/faces.el (nobreak-hyphen): New face (bug#12048).
13064         * src/xdisp.c (get_next_display_element): Use it instead of
13065         the escape-glyph face.
13067         * src/xdisp.c (syms_of_xdisp): New symbil Qnobreak_hyphen.
13069 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13071         Make a menu less ambiguous
13073         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
13074         is about using modifier keys, not binding them (bug#10942).
13076 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13078         Make kill-emacs-query-functions into defcustom
13080         * lisp/files.el (save-buffers-kill-terminal): Mention
13081         `save-buffers-kill-emacs' (bug#10794).
13082         (kill-emacs-query-functions): Made into a defcustom.
13084 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13086         Have describe-variable output multi-line values better
13088         * lisp/help-fns.el (describe-variable): When printing
13089         multi-line expressions, display them prettier (bug#10723).
13091 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13093         Clean up custom-buffer-create code slightly
13095         * lisp/cus-edit.el (custom-buffer-create-other-window): Don't
13096         pass the unused description value on (for clarity) (bug#10540).
13097         (custom-buffer-create): Ditto
13099 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13101         Clarify some doc strings
13103         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
13104         Clarify doc string (bug#8693).
13105         (syntax-propertize): Clarify doc string.
13107 2016-04-28  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13109         Fix number-at-point in lisp buffers
13111         * lisp/thingatpt.el (number-at-point): Don't say that things
13112         like ?a are numbers in lisp mode buffers (bug#8634).
13114 2016-04-28  Lars Ingebrigtsen  <larsi@gnus.org>
13116         Don't consider colons to be paragraphs starting chars in strings
13118         * lisp/emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Don't
13119         consider colons to start paragraphs in (doc) strings
13120         (bug#7751).
13122 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13124         Make `undo' of `C-x r t' put point where it should be
13126         * lisp/rect.el (string-rectangle): Make `undo' of a this
13127         command put point back where it was (bug#7522).
13129 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13131         Add some concept index entries for custom types
13133         * doc/lispref/customize.texi (Composite Types): Add concept
13134         index entries for restricted-sexp, radio and choice (bug#7385).
13136 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13138         Mention `lisp-indent-function' in the lispref manual
13140         * doc/lispref/macros.texi (Indenting Macros): Mention
13141         `lisp-indent-function' (bug#3393).
13143 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13145         Clarify doc string of internal compilation function
13147         * lisp/progmodes/compile.el (compilation-get-file-structure):
13148         Clarify doc string (bug#3137).
13150 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13152         Avoid having `C-x h' mark the prompt part of the minibuffer
13154         * lisp/simple.el (mark-whole-buffer): Don't mark the prompt
13155         part of the minibuffer (bug#2589).
13157 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13159         Allow a prefix argument to find-library to pop to a different window
13161         * lisp/emacs-lisp/find-func.el (find-library): Allow a prefix
13162         argument to pop to a different window (bug#2270).
13164 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13166         Move the diff command to "Operate" in ibuffer
13168         * lisp/ibuffer.el (ibuffer-mode-operate-map): Move the diff
13169         command to the "Operate" menu, and remove the customization
13170         entry to make the "View" menu more logical (bug#1150).
13172 2016-04-27  Lars Ingebrigtsen  <larsi@gnus.org>
13174         Make the minor modes in help buffers into buttons
13176         * lisp/help.el (describe-mode): Make the minor modes into
13177         buttons to enable easier documentation traversal (bug#1149).
13179 2016-04-27  Jorgen Schaefer  <contact@jorgenschaefer.de>
13181         Add a number of Python 3 exceptions
13183         * lisp/progmodes/python.el (python-font-lock-keywords): Clean up
13184         the exception list, adding a number of new Python 3 exceptions and
13185         moving some exceptions to the Python 2 and 3 list as Python 2.7
13186         includes them.
13188 2016-04-26  Anders Lindgren  <andlind@gmail.com>
13190         Fix bug#22891: wrong terminal width when a fringe width is zero.
13192         When either fringe width is zero, Emacs reserved one column for a
13193         continuation glyph. Terminal windows does not take this into
13194         account when the frame is resized.
13196         * lisp/window.el (window-adjust-process-window-size): Use
13197         `window-max-chars-per-line' instead of `window-body-width'.
13198         * lisp/term.el (term-window-width): Remove function. (It does the
13199         same as `window-max-chars-per-line' but without recent bug fixes.)
13200         (term-mode): Use `window-max-chars-per-line' instead of
13201         `term-window-width'.
13203 2016-04-26  Simen Heggestøyl  <simenheg@gmail.com>
13205         Add completion of `calc()' in CSS mode
13207         * lisp/textmodes/css-mode.el (css-value-class-alist): Add `calc()' as
13208         a completion candidate for several value classes.
13209         (css--value-class-lookup): Return only unique results.
13211         * test/lisp/textmodes/css-mode-tests.el
13212         (css-test-property-values-no-duplicates)
13213         (css-test-value-class-lookup): Update to reflect the above changes.
13215 2016-04-26  Paul Eggert  <eggert@cs.ucla.edu>
13217         Fix socketd fd startup bug that I introduced
13219         Problem reported by Matthew Leach in:
13220         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00778.html
13221         * src/emacs.c (main): Indicate more clearly the coupling between
13222         the --daemon option and init_process_emacs.
13223         * src/lisp.h: Adjust to API changes.
13224         * src/process.c (set_external_socket_descriptor):
13225         Remove, replacing by ...
13226         (init_process_emacs): ... passing the socket FD here instead.
13227         All uses changed.
13229 2016-04-25  Tao Fang  <fangtao0901@gmail.com>
13231         Fix: (void-variable url-http-response-status)
13233         * lisp/url/url-http.el
13234         (url-https-proxy-after-change-function): Display the error
13235         message before doing the callback to avoid a void variable
13236         situation (bug#23290).
13238 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13240         smtpmail would say it's done before it is
13242         * lisp/mail/smtpmail.el (smtpmail-via-smtp): Move the sending
13243         of the data end marker from here... (bug#23020).
13244         (smtpmail-send-data): ... to here, so that we don't get a
13245         "Sending done" before we've sent the final "." (which can make
13246         the SMPT server reject the email.
13248 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13250         `url-retrieve-synchronously' now takes an optional timeout parameter
13252         * doc/misc/url.texi (Retrieving URLs): Document optional parameters.
13254         * lisp/url/url.el (url-retrieve-synchronously): Allow passing
13255         in a timeout parameter (bug#22940).
13257 2016-04-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13259         Include "Retype" as a comint password prompt
13261         * lisp/comint.el (comint-password-prompt-regexp): Include
13262         "Retype" to catch "Retype password for [account]:" from the
13263         "pass" utility (bug#22942).
13265 2016-04-25  Alan Mackenzie  <acm@muc.de>
13267         Fix spurious fontification of "for (; a * b;)" in CC Mode.
13269         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Check for being
13270         inside the parens of a for statement and after a semicolon near the beginning
13271         of the lambda form.
13273 2016-04-25  Paul Eggert  <eggert@cs.ucla.edu>
13275         New function ‘char-from-name’
13277         This also fixes the mishandling of "\N{CJK COMPATIBILITY
13278         IDEOGRAPH-F900}", "\N{VARIATION SELECTOR-1}", etc.
13279         Problem reported by Eli Zaretskii in:
13280         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00614.html
13281         * doc/lispref/nonascii.texi (Character Codes), etc/NEWS: Document this.
13282         * lisp/international/mule-cmds.el (char-from-name): New function.
13283         (read-char-by-name): Use it.  Document that "BED" is treated as
13284         a name, not as a hexadecimal number.  Reject out-of-range integers,
13285         floating-point numbers, and strings with trailing junk.
13286         * src/lread.c (character_name_to_code): Call char-from-name
13287         instead of inspecting ucs-names directly, so that we handle
13288         computed names like "VARIATION SELECTOR-1".  Do not use an auto
13289         string, since char-from-name might GC.
13290         * test/src/lread-tests.el: Add tests for new behavior, and
13291         fix some old tests that were wrong.
13293 2016-04-25  Alan Mackenzie  <acm@muc.de>
13295         c-forward-<>-arglist no longer directly applies face properties in Java Mode.
13297         This allows the calling of c-restore-<>-properties from c-common-init without
13298         the test suite giving spurious errors.
13300         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that
13301         sets face properties.
13302         (c-forward-<>-arglist-recur): Reformulate the bit that handles types inside
13303         template brackets using c-inside-<>-type-key.  Don't bind
13304         c-record-type-identifiers or c-record-found-types around the recursive call,
13305         allowing positions of found types to flow back to the caller.
13307         * lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key):
13308         new lang consts/var.
13310         * lisp/progmodes/cc-mode.el (c-common-init): Don't remove
13311         c-restore-<>-properties from the list of functions called at mode
13312         initialization.
13314 2016-04-25  Jun Hao  <jun_hao@aol.com>
13316         Pass in port only if provided by caller in the OS X keychain
13318         * lisp/auth-source.el (auth-source-macos-keychain-search): Pass in
13319         port only if provided (bug#23374).
13321 2016-04-25  Alan Mackenzie  <acm@muc.de>
13323         Add fontification for a C declaration which looks like a function call.
13325         For example, "t1 *fn (t2 *b);".
13327         * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): Add new variable
13328         at-decl-start, setting it to whether the putative decl starts immediately
13329         after ; or { or }.  Accept such a construct as a decl when at-decl-start is
13330         non-nil.
13332         * lisp/progmodes/cc-langs.el (c-pre-start-tokens): New language variable.
13334 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
13336         Don't mirror slashes in convert-standard-filename on MS-Windows
13338         * lisp/w32-fns.el (w32-convert-standard-filename): Don't mirror
13339         slashes into backslashes.  This avoids producing ugly file names,
13340         and is deemed no longer necessary, and should certainly be
13341         unrelated to which shell is in use.
13343 2016-04-24  Dmitry Gutov  <dgutov@yandex.ru>
13345         Revert the disputed VC change and update the tests
13347         * lisp/vc/vc-hooks.el (vc-working-revision):
13348         Remove the previous change.
13349         (vc-state): Same.  And update the old, incorrect comment about
13350         unregistered files
13351         (https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00526.html).
13353         * test/lisp/vc/vc-tests.el (vc-test--state): Remove the check
13354         calling `vc-state' on default-directory (VC state is undefined
13355         for directories).  Check that `vc-state' returns nil where it
13356         returned `unregistered' before.  Remove all checks comparing
13357         invocations with the backend passed in explictly and without.
13358         (vc-test--working-revision): Remove all checks comparing
13359         invocations with the backend passed in explictly and without.
13360         Update comments, and add a new one.
13362 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13364         * etc/NEWS: Grammar and punctuation improvements.
13366 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13368         Merge from origin/emacs-25
13370         9daf1cf * etc/NEWS: Improve wording of vc-git-log-output-coding-syste...
13371         0cd2e92 Don't kill ~/ if it's the top level directory
13372         4f40f5f describe-char: fix insert char documentation
13373         87ee542 (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
13375 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13377         Merge from origin/emacs-25
13379         960f90d * etc/AUTHORS: Update the AUTHORS file
13380         b21e9d4 * admin/update_autogen: Use #!/usr/bin/env bash
13382 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
13384         Merge from origin/emacs-25
13386         78f9af7 ; ChangeLog fixes
13387         162e549 * admin/authors.el (authors-ignored-files): Additions.
13388         2b31a0c In x_set_window_size restore do_pending_window_change calls
13389         401857e Fix Alt-modified keys on some European MS-Windows keyboards
13390         a77cf24 Document 'help-go-forward'
13391         1ba947f Revert "Allow to customize names of executables used by grep.el"
13392         570e0fa Revert "Don't use 'find-program'"
13393         645f4ef Revert "Use 'grep-find-program' in check-declare.el"
13394         aa03257 Clarify documentation of 'dired-mark-files-containing-regexp'
13395         ce0d8c7 Make tmm-menubar work in correct order again
13396         b8d5a8f Remove the Meta-CVS VC backend
13398 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13400         Don't let `css--property-values' return duplicates
13402         * lisp/textmodes/css-mode.el (css--property-values): Don't return
13403         duplicate values.
13405         * test/lisp/textmodes/css-mode-tests.el (css-test-property-values):
13406         Take the above into account.
13407         (css-test-property-values-no-duplicates): Test that duplicates aren't
13408         returned by `css--property-values'.
13410 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13412         Call `make-composed-keymap' correctly
13414         * lisp/image-mode.el (image-mode-map): Call
13415         `make-composed-keymap' correctly.
13417 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13419         Use `make-composed-keymap' instead of copying the keymap
13421         * lisp/image-mode.el (image-mode-map): Use
13422         `make-composed-keymap' instead of copying the keymap.
13424 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13426         Make `q' etc work in image mode again
13428         * lisp/image-mode.el (image-mode-map): Restore
13429         special-mode-map as the parent keymap of image-mode-map (bug#23167).
13431 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13433         Fix typo in last url.texi checkin
13435 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13437         Make STARTTLS error messages better
13439         * lisp/net/network-stream.el (network-stream-open-starttls):
13440         Output a better error message when TLS negotiation fails while
13441         doing STARTTLS (bug#23027).
13443 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13445         Encode the shr tests files with trailing white space
13447 2016-04-24  Simen Heggestøyl  <simenheg@gmail.com>
13449         Cache results of `css--property-values'
13451         * lisp/textmodes/css-mode.el (css--property-values): Cache computed
13452         values.
13454         * test/lisp/textmodes/css-mode-tests.el (css-test-property-value-cache):
13455         New regression test for the above.
13457 2016-04-24  Michael Albinus  <michael.albinus@gmx.de>
13459         Some improvements in vc
13461         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
13462         Check, whether FILE is registered.
13464         * lisp/vc/vc-rcs.el (vc-rcs-checkout-model): Return `locking'
13465         for nonexistent files.
13467         * test/lisp/vc/vc-tests.el (w32-application-type): Declare.
13468         (vc-test--revision-granularity-function)
13469         (vc-test--unregister-function): Use `vc-call-backend'.
13470         (vc-test--run-maybe-unsupported-function): New defmacro.
13471         (vc-test--register, vc-test--state, vc-test--working-revision)
13472         (vc-test--checkout-model): Use it.  Fix also expected results.
13473         (vc-test-src02-state, vc-test-rcs04-checkout-model): They pass now.
13475 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13477         Document the nil/default values of url-user-agent
13479         * doc/misc/url.texi (Customization): Document the nil/default
13480         values of url-user-agent.
13482 2016-04-24  Clément Pit--Claudel  <clement.pit@gmail.com>
13484         Compute User-Agent dynamically in url-http
13486         * lisp/url/url-http.el (url-http-user-agent-string): Compute
13487         User-Agent string dynamically.
13488         (url-http--user-agent-default-string): New function.
13490         * lisp/url/url-vars.el (url-privacy-level): Allow `emacs' in list
13491         of information not to send.
13492         (url-user-agent): Add nil and `default' options; do not
13493         pre-compute value.
13495 2016-04-24  Jun Hao  <jun_hao@aol.com>
13497         Handle auth-source items with special characters on OS X
13499         * lisp/auth-source.el
13500         (auth-source-macos-keychain-search-items): Handle keychain
13501         output correctly when has special chararcters (bug#22824).
13503 2016-04-24  Magnus Henoch  <magnus.henoch@gmail.com>
13505         Implement process-attributes for Darwin
13507         * src/sysdep.c (timeval_to_timespec, make_lisp_timeval)
13508         (system_process_attributes): Implement process-attributes
13509         for Darwin (bug#16579).
13511 2016-04-24  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13513         Use Unicode literals instead of hex values
13515         * lisp/net/shr.el (shr-tag-bdo): Use Unicode literals instead
13516         of hex values for greater readability.
13517         (shr-tag-bdi): Ditto.
13519 2016-04-24  Steve Purcell  <steve@sanityinc.com>
13521         Allow _ characters in SQL prompts
13523         * lisp/progmodes/sql.el (sql-product-alist): Allow _
13524         characters in SQL prompts (bug#22596).
13526         Fixes issue 22596, whereby "_" is now not considered a word constituent
13527         character in sql-interactive-mode, so prompts like "foo_dev# " are not
13528         correctly detected. Rather than piggy-back on the symbol table, we
13529         explicitly match against alphanumeric chars or "_".
13531 2016-04-23  Glenn Morris  <rgm@gnu.org>
13533         When autoload-timestamps is nil, use a dummy timestamp rather than "t".
13535         * lisp/emacs-lisp/autoload.el (autoload--non-timestamp): New constant.
13536         (autoload-generate-file-autoloads, autoload-find-destination)
13537         (update-directory-autoloads): Use autoload--non-timestamp.
13539 2016-04-23  Glenn Morris  <rgm@gnu.org>
13541         * test/lisp/xt-mouse-tests.el: Move from test/automated/.
13543 2016-04-22  Jö Fahlke  <jorrit@jorrit.de>  (tiny change)
13545         Regexps for matching CMake output
13547         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Add
13548         regexps for matching CMake output.
13549         * test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data): Add
13550         CMake test cases.
13551         * etc/compilation.txt (CMake): Add CMake examples.
13553 2016-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13555         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
13557         Fix docstring quotes.
13559 2016-04-21  Paul Eggert  <eggert@cs.ucla.edu>
13561         Improve character name escapes
13563         * doc/lispref/nonascii.texi (Character Properties):
13564         Avoid duplication of Unicode names.  Reformat examples to fit in
13565         narrow pages.
13566         * doc/lispref/objects.texi (General Escape Syntax):
13567         Simplify and better-organize explanation of \N{...} escapes.
13568         * src/character.h (CHAR_SURROGATE_PAIR_P): Remove; unused.
13569         (char_surrogate_p): New inline function.
13570         * src/lread.c: Do not include string.h; no longer needed.
13571         (invalid_character_name, check_scalar_value): Remove; the ideas
13572         behind these functions are now bundled into character_name_to_code.
13573         (character_name_to_code): Remove undocumented support for "CJK
13574         IDEOGRAPH-XXXX" names, as "U+XXXX" suffices.  Reject monstrosities
13575         like "\N{U+-0}" and null bytes in \N escapes.  Reject floating
13576         point in \N escapes instead of returning garbage.  Use
13577         AUTO_STRING_WITH_LEN to lessen pressure on the garbage collector.
13578         * test/src/lread-tests.el (lread-char-number, lread-char-name)
13579         (lread-string-char-number, lread-string-char-name):
13580         Test runtime behavior, not compile-time, as the test framework
13581         is not set up to test compile-time.
13582         (lread-char-surrogate-1, lread-char-surrogate-2)
13583         (lread-char-surrogate-3, lread-char-surrogate-4)
13584         (lread-string-char-number-2, lread-string-char-number-3):
13585         New tests.
13586         (lread-string-char-number-1): Rename from lread-string-char-number.
13588 2016-04-21  Philipp Stephani  <phst@google.com>
13590         Use 'ucs-names' for character name escapes
13592         * src/lread.c (invalid_character_name, check_scalar_value)
13593         (parse_code_after_prefix, character_name_to_code): New helper
13594         functions that use 'ucs-names' and parsing for CJK ideographs.
13595         (read_escape): Use helper functions.
13596         (syms_of_lread): New symbol 'ucs-names'.
13597         * test/src/lread-tests.el: New tests; fix a couple of bugs in
13598         existing tests.
13600 2016-04-21  Philipp Stephani  <phst@google.com>
13602         Minor cleanups for character name escapes
13604         * src/lread.c (init_character_names): Add missing 'void'.
13605         Remove top-level 'const'.
13606         (read_escape): Simplify loop a bit.  Remove top-level 'const'.
13608 2016-04-21  Philipp Stephani  <phst@google.com>
13610         Add documentation for character name escapes
13612 2016-04-21  Philipp Stephani  <phst@google.com>
13614         Implement named character escapes, similar to Perl
13616         * src/lread.c (init_character_names): New function.
13617         (read_escape): Read Perl-style named character escape sequences.
13618         (syms_of_lread): Initialize new variable 'character_names'.
13619         * test/src/lread-tests.el (lread-char-empty-name): Add test file
13620         for src/lread.c.
13622 2016-04-21  Fabrice Popineau  <fabrice.popineau@gmail.com>
13624         Avoid run-time dependency on libwinpthread DLL on MS-Windows
13626         * nt/mingw-cfg.site (ac_cv_search_clock_gettime)
13627         (ac_cv_func_clock_gettime, ac_cv_func_clock_settime): Force to not
13628         present, so that MinGW64 builds don't depend on libwinpthread.
13629         (Bug#22959)
13631 2016-04-21  Matthew Leach  <matthew@mattleach.net>
13633         Add LIBSYSTEMD to the list of supported features
13635         * configure.ac: Add LIBSYSTEMD to EMACS_CONFIG_FEATURES and print a
13636         message at the end of configure stating whether Emacs will be build
13637         with libsystemd support.
13639 2016-04-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
13641         Support absolute column movement in 'ansi-term'
13643         * lisp/term.el (term-handle-ansi-escape): Handle the "\E[G" sequence
13644         for absolute column movement.  (Bug#23303)
13646 2016-04-21  Jorgen Schaefer  <contact@jorgenschaefer.de>
13648         Add Python 3.5 keyword "await"
13650         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
13651         keyword.
13653 2016-04-20  Simen Heggestøyl  <simenheg@gmail.com>
13655         Add "keyframes" to list of CSS at-rules
13657         * lisp/textmodes/css-mode.el (css-at-ids): Add "keyframes" at-rule.
13659 2016-04-20  Phillip Lord  <phillip.lord@russet.org.uk>
13661         Prevent bootstrap autoload backup files
13663         * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
13664         backups in newly created file.
13666         (autoload-ensure-default-file): Function split into two.
13667         (autoload-ensure-file-writeable): New function from split.
13669         (Bug#23203)
13671 2016-04-20  Paul Eggert  <eggert@penguin.cs.ucla.edu>
13673         Fix org-timestamp-change typo
13675         Problem reported by Peter Münster (Bug#23299).
13676         * lisp/org/org.el (org-timestamp-change): Fix typo that relied
13677         on undocumented behavior in ‘encode-time’.  In practice the
13678         old code used local time, so use that.
13680 2016-04-19  Paul Eggert  <eggert@cs.ucla.edu>
13682         Avoid AC_PREPROC_IFELSE glitch in configure.ac
13684         Problem reported by Angelo Graziosi in:
13685         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00545.html
13686         * configure.ac (gl_gcc_warnings): Work around an Autoconf glitch:
13687         AC_PREPROC_IFELSE doesn’t generate a simple shell command.
13689 2016-04-19  Michael Albinus  <michael.albinus@gmx.de>
13691         autorevert: Resume with polling if file is deleted
13693         * lisp/autorevert.el: Use consistent wording in comments and
13694         docstrings.
13695         (auto-revert-mode): Add local function to `kill-buffer-hook'.
13696         (auto-revert-notify-handler): Improve handling of `stopped' event.
13698         * test/lisp/autorevert-tests.el
13699         (auto-revert-test02-auto-revert-deleted-file): New test.
13700         (auto-revert-test03-auto-revert-tail-mode)
13701         (auto-revert-test04-auto-revert-mode-dired): Rename them.
13703 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13705         Merge from origin/emacs-25
13707         5a0cbe5 Fix Bug#23276
13708         2007e32 Sync with upstream vhdl mode v3.38.1.
13709         b6d2552 Tweak configure.ac syntax in recent module patch
13711 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13713         Merge from origin/emacs-25
13715         ac00a92 Make sh-electric-here-document-mode accessible in sh-mode-hoo...
13716         3287f48 ; Add entry to MAINTAINERS
13717         b85981f * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from prev...
13718         0f33284 Make use of rectangle-preview custom variable.
13719         aa0d83a Make use of rectangle-preview face.
13720         33bef6e Use 'grep-find-program' in check-declare.el
13721         a8560e5 Improve "C-h S" for cl-lib symbols
13722         52e798b Fix minor issues with removing left or right fringes
13723         d6ffd64 Speed up redisplay in ansi-term mode
13724         4ab671c Simplify 8-bit character handling by terminal for 'raw-text'
13725         f3653ec * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bu...
13726         ab849b7 Fix w32 memory-management problem when extending buffer text
13728 2016-04-18  Paul Eggert  <eggert@cs.ucla.edu>
13730         Merge from origin/emacs-25
13732         32364bb substitute-command-keys keeps quotes’ text props
13733         567ab52 * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping ...
13734         24b87a1 Add semantic-symref-filepattern-alist entry for lisp-interact...
13735         cc0b713 Perform xref searches without visiting unopened files
13736         5045575 Revert "Prevent bootstrap autoload backup files"
13738 2016-04-18  Philipp Stephani  <p.stephani2@gmail.com>
13740         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
13742         so that it matches the actual implementation.
13743         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
13745 2016-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
13747         * lisp/textmodes/ispell.el: Compile with lexical-binding
13749         (declare-function): Don't define any more.
13750         (ispell-check-minver, ispell-looking-back): Tweak definition so that
13751         the compiler can obviously know that it's always defined.
13752         (ispell-debug-buffer): Declare var.
13753         (ispell-hunspell-fill-dictionary-entry)
13754         (ispell-parse-hunspell-affix-file, ispell-hunspell-add-multi-dic)
13755         (ispell-find-hunspell-dictionaries, ispell-set-spellchecker-params)
13756         (ispell-command-loop): Avoid add-to-list on local variables.
13758 2016-04-17  Paul Eggert  <eggert@cs.ucla.edu>
13760         Minor fixups for external socket launching
13762         * configure.ac (HAVE_LIBSYSTEMD): Change earliest version to 222.
13763         * doc/emacs/misc.texi (Emacs Server):
13764         * etc/NEWS: Spelling and doc fixes.
13765         * src/emacs.c (main) [HAVE_LIBSYSTEMD]:
13766         Check for sd_is_socket returning positive, not zero.
13767         * src/process.c (external_sock_fd): Instead of initializing here ...
13768         (init_process_emacs): ... initialize it here, so that it does the
13769         right thing after dump/restore.
13770         (connect_network_socket): Simplify socket_to_use test.
13772 2016-04-17  Simen Heggestøyl  <simenheg@gmail.com>
13774         Add HTML5 tags to HTML mode
13776         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML5 tags.
13777         (html-tag-help): Add short descriptions of those tags.
13779 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13781         Finish idna->puny changes in last Message patch
13783         * lisp/gnus/message.el (message-idna-to-ascii-rhs-1): Use puny
13784         instead of idna functions.
13786 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13788         Use puny.el instead of idna.el functions in Gnus
13790         * lisp/gnus/gnus-art.el (gnus-use-idna): Default to t (since
13791         Emacs comes with IDNA support built in).
13792         (article-decode-idna-rhs): Use `puny-decode-domain' instead of
13793         `idna-to-unicode'.
13795         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message): Ditto.
13797 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13799         Mention `message-use-idna' in NEWS
13801 2016-04-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13803         Default `message-use-idna' to t
13805         * lisp/gnus/message.el (message-use-idna): Default to t (since
13806         Emacs comes with puny.el now).
13808 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13810         Extend battery.el to exotic power supply types
13812         * lisp/battery.el (battery-linux-sysfs-regexp): Rename from
13813         'battery--linux-sysfs-regexp' and make a defcustom. All users
13814         changed.  (Bug#23216)
13816 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13818         Add external socket launching support
13820         * src/process.c (connect_network_socket): Allow a pre-allocated socket
13821         descriptor to be used if passed to Emacs, avoiding the call to
13822         'socket' and 'bind'.
13823         (Fmake_network_process): Allow users to pass ':use-external-socket' in
13824         the parameter plist to use any sockets that have been passed to Emacs.
13825         (wait_reading_process_output): Call 'socket' and 'bind' every time.
13826         (syms_of_process): New symbol ':use-external-socket'.
13827         (set_external_socket_descriptor): New function.
13828         (external_sock_fd): New variable.
13829         * src/lisp.h: (set_external_socket_descriptor): New declaration.
13830         * src/emacs.c (main): Call 'sd_listen_fds' to read the number of sockets
13831         passed and call 'set_external_socket_descriptor' to set the external
13832         socket.
13833         * src/Makefile.in: Add libsystemd library and C flags to the Emacs
13834         compilation options.
13836         * configure.ac: Add new default-on option "systemd" and check for
13837         libsystemd at configure time.
13839         * lisp/server.el (server-start): Set ':use-external-socket' to 't' when
13840         calling 'make-network-process'.
13842         * etc/NEWS: Document new socket-passing functionality and the configure
13843         option to disable systemd interaction.
13845         * doc/emacs/misc.texi (Emacs Server): Document systemd socket passing
13846         functionality and provide systemd unit examples.
13847         * doc/lispref/processes.texi (Network Processes): Document new
13848         'make-network-process' option ':use-external-socket'.
13850 2016-04-16  Matthew Leach  <matthew@mattleach.net>
13852         Don't spell-check argument of 'cref' TeX macro
13854         * lisp/textmodes/ispell.el (ispell-tex-skip-alists): Add the cref
13855         macro to skip spell-checking the cref macro argument.
13857 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13859         Simplify use of O_BINARY
13861         * src/callproc.c (call_process):
13862         * src/fileio.c (write_region):
13863         * src/filelock.c (read_lock_data):
13864         * src/image.c (x_find_image_fd):
13865         * src/lread.c (openp):
13866         * src/sysdep.c (init_random, emacs_fopen):
13867         * src/unexcw.c (unexec):
13868         Omit unnecessary use of O_BINARY, since emacs_open now arranges
13869         that for us.
13871 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
13873         * src/indent.c (Fvertical_motion): Pacify GCC
13875         5.3.1 20160406 (Red Hat 5.3.1-6) on x86-64.
13877 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13879         Port ‘./autogen.sh git’ to non-clones
13881         Problem reported by Angelo Graziosi in:
13882         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00341.html
13883         * autogen.sh (do_git): Default to false when the arg is ‘all’ but
13884         there is no ‘.git’.
13885         (git_common_dir, hooks): New vars.
13886         (git_config, tailored_hooks, sample_hooks): Use them.
13888 2016-04-13  Paul Eggert  <eggert@cs.ucla.edu>
13890         Do not require that .git be a directory
13892         Problem reportyed by Phillip Lord.
13893         * admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
13894         * configure.ac, make-dist:
13895         Do not require that .git be a directory, as 'git worktree' makes
13896         it a file and not a directory.
13898 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13900         Avoid now-obsolete function gmm-format-time-string
13902         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13903         Use format-time-string instead of obsolete function
13904         gmm-format-time-string.
13906 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13908         Support OFFSET and (OFFSET ABBR) time zone rules
13910         This simplifies Gnus and VC time zone support, by letting them
13911         feed the output of ‘current-time-zone’ and ‘decode time’ to
13912         primitives that accept time zone arguments.
13913         * doc/lispref/os.texi (Time Zone Rules, Time Conversion):
13914         * etc/NEWS:
13915         * lisp/gnus/message.el (message-insert-formatted-citation-line):
13916         * lisp/org/org.el (org-timestamp-format):
13917         * src/editfns.c (Fformat_time_string, Fdecode_time):
13918         (Fcurrent_time_string, Fcurrent_time_zone, Fset_time_zone_rule):
13919         Document new behavior.
13920         * lisp/gnus/gmm-utils.el (gmm-format-time-string):
13921         * lisp/vc/add-log.el (add-log-iso8601-time-zone):
13922         Mark as obsolete, as it is now just an alias or narrow wrapper
13923         around format-time-string.
13924         * src/editfns.c (tzlookup): Also support integer OFFSET and
13925         list (OFFSET ABBR) as time zone rules.
13926         (Fencode_time): No longer need a special case for a cons ZONE.
13927         (Fcurrent_time_zone): If the time zone string is missing, compute
13928         it the same way the other new code does.
13930 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
13932         Merge from origin/emacs-25
13934         ca50981 Improve time zone documentation
13935         c23c965 Prevent bootstrap autoload backup files
13936         9344612 Disable multicolor fonts on OS X since they are not supported...
13937         c41ce1c Capitalize “Universal Time” in documentation
13938         10597c9 Don't use 'find-program'
13940 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13942         Merge from origin/emacs-25
13944         b134c20 Sync with gnulib
13945         bb30fa9 Fix last change on 2016-01-02
13946         488a72f ; Spelling fixes
13947         9b1aab9 Port run-prolog EMACS to SWI-Prolog 7.2.3
13948         0e7bcec Avoid crashes due to unreasonably large or small text scaling
13949         85f257c Improve documentation of 'with-eval-after-load'
13950         668c7bc Improve handling of non-ASCII characters in Git log messages
13951         b570769 Remove undefined behavior in OS X dumper.
13952         97211f3 Fix clipping of xwidgets
13953         e87fbc0 Improve Lisp-level documentation of tooltips
13954         9f1786e Faces names should not end in "-face".
13955         3283271 * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
13956         a1f221b Comint and compile no longer set EMACS
13957         5c28890 * lisp/subr.el (read-key): Don't let the prompt linger (bug#2...
13958         a75b9a6 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
13959         c93ae7a Allow to customize names of executables used by grep.el
13960         f6497c6 Set locale encoding to UTF-8 when run from OS X GUI.
13961         7ad1d07 Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
13962         a3f1ac2 Avoid infinite loop in 'studlify-word'
13963         f36df4b Don’t recommend obsolete EMACS env var
13964         fb0b531 * lisp/emacs-lisp/package.el: Change from a few days ago need...
13966 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13968         Merge from origin/emacs-25
13970         96d9e78 Fix "Beginning of buffer" error in forward-page
13971         20686f7 Add a `transient' project type
13973 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
13975         Merge from origin/emacs-25
13977         80128a7 Fix stability confusion in sort-tests
13978         1e4aa42 Avoid describe-key error with lambdas
13979         a05fb21 * lisp/emacs-lisp/package.el (package-install-selected-packag...
13980         f501116 Sync with gnulib
13981         c4963f9 Fix doc for Universal Time
13983 2016-04-10  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
13985         Fix alignement rule for CSS
13987         * lisp/align.el (align-rules-list): Support CSS properties that have
13988         multiple words.
13990 2016-04-10  Tassilo Horn  <tsdh@gnu.org>
13992         New custom option for overriding mailcap choices
13994         * lisp/net/mailcap.el (mailcap--get-user-mime-data): New function.
13995         (mailcap--set-user-mime-data): New function.
13996         (mailcap-user-mime-data): New customization option.
13997         (mailcap-select-preferred-viewer): New function.
13998         (mailcap-mime-info): Use it.
14000         * doc/misc/emacs-mime.texi (mailcap): Document `mailcap-user-mime-data'.
14002 2016-04-10  Michael Albinus  <michael.albinus@gmx.de>
14004         Fix Bug#23207
14006         * src/keyboard.c (read_char): Resume idle timers in case of
14007         dbus-event, file-notify-event and config-changed-event.
14008         Reported by Johan Claesson <johanclaesson@bredband.net>.  (Bug#23207)
14010 2016-04-09  Michael Albinus  <michael.albinus@gmx.de>
14012         Add vc-backend and vc-responsible-backend tests
14014         * lisp/vc/vc-hooks.el (vc-file-setprop, vc-file-getprop)
14015         (vc-file-clearprops): Use properties on absolute files.
14017         * test/lisp/vc/vc-tests.el (vc-test--unregister-function):
14018         Clear file properties.
14019         (vc-test--register): Add tests for `vc-backend' and
14020         `vc-responsible-backend'.  Catch other errors but `vc-not-supported'.
14021         (vc-test--state, vc-test--checkout-model): Catch other errors
14022         but `vc-not-supported'.
14023         (vc-test--working-revision): Fix test for RCS and SCCS.  Catch
14024         other errors but `vc-not-supported'.
14025         (vc-test-src02-state): Mark as an expected failure.
14027 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
14029         Minor improvements for hash function primitives
14031         * src/fns.c (hashfn_eql): Define in terms of hashfn_equal and
14032         hashfn_eq rather than reaching inside them.
14033         (hashtest_eq, hashtest_eql, hashtest_equal):
14034         Now constants with initializers.
14035         (syms_of_fns): Omit no-longer-needed initialization.
14036         * src/lisp.h (LISPSYM_INITIALLY): New macro.
14037         (DEFINE_LISP_SYMBOL): Use it.
14039 2016-04-08  Paul Pogonyshev  <pogonyshev@gmail.com>
14041         New primitives sxhash-eq, sxhash-eql
14043         * doc/lispref/hash.texi (Defining Hash), etc/NEWS: Document this.
14044         * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
14045         Add sxhash-equal, sxhash-eq, sxhash-eql.
14046         * lisp/subr.el (sxhash): Now an alias for sxhash-equal.
14047         * src/fns.c (Fsxhash_eq, Fsxhash_eql): New functions.n
14049 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
14051         Teach Dired support parallel execution of commands on MS-Windows
14053         * lisp/dired-aux.el (dired-shell-stuff-it): Support
14054         parallel-in-background execution of commands on MS-Windows.
14055         Test 'w32-shell-dos-semantics' instead of the underlying OS
14056         when determining whether addition of 'wait' is needed.
14058 2016-04-08  Tino Calancha  <f92capac@gmail.com>
14060         Make 'dired-do-shell-command' wait for all background jobs
14062         * lisp/dired-aux.el (dired-shell-stuff-it): Force POSIX shells to
14063         wait until all background jobs exit.  (Bug#23206).
14065 2016-04-07  Vivek Dasmohapatra  <vivek@etla.org>
14067         Prefer 'font-lock-face to 'face in erc where appropriate
14069         * lisp/erc/erc-button.el (erc-button-add-face): Prefer
14070         'font-lock-face to 'face where appropriate.
14071         * lisp/erc/erc-capab.el (erc-capab-identify-add-prefix)
14072         * lisp/erc/erc-dcc.el (erc-dcc-chat-parse-output)
14073         * lisp/erc/erc-goodies.el (erc-controls-propertize)
14074         * lisp/erc/erc-stamp.el (erc-format-timestamp)
14075         * lisp/erc/erc-track.el (erc-faces-in)
14076         * lisp/erc/erc.el (erc-load-irc-script-lines, erc-display-msg)
14077         (erc-display-command, erc-make-notice, erc-highlight-notice)
14078         (erc-format-my-nick, erc-format-@nick, erc-format-privmessage)
14079         (erc-display-prompt, erc-display-message-highlight)
14080         (erc-log-irc-protocol): Ditto.
14082         * test/lisp/erc/erc-track-tests.el: Converted asserts into ert
14083         tests.
14085 2016-04-06  Lele Gaifax  <lele@metapensiero.it>
14087         Add new keywords of Python 3.5
14089         Python 3.5, released in mid September 2015, introduced a few new
14090         keywords to better support asynchronous code, "async" and "await"
14091         in particular. See https://www.python.org/dev/peps/pep-0492/ for
14092         details. (Bug#21783)
14093         * lisp/progmodes/python.el (python-rx-constituents): Add async
14094         def/for/with as block-start and async def as defun.
14095         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
14096         def/for/with as keyword.
14097         * test/automated/python-tests.el (python-indent-after-async-block-1,
14098         python-indent-after-async-block-2, python-indent-after-async-block-3,
14099         python-nav-beginning-of-defun-3): New tests to test indentation and
14100         navigation for the async keyword.
14102 2016-04-05  Etienne Prud'homme  <e.e.f.prudhomme@gmail.com>  (tiny change)
14104         Support completion of at-rules in SCSS mode
14106         lisp/textmodes/css-mode.el (scss-at-ids): New defconst holding
14107         SCSS-specific at-rules.
14108         (css--at-ids): New buffer-local variable holding the list of at-rules
14109         for the current mode.
14110         (css--complete-at-rule): Retrieve at-rules from `css--at-ids`.
14111         (scss-mode): Set `css--at-ids'.
14113 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
14115         Enable GCC warnings in developer builds
14117         However, do not fail; just issue the warnings.  Add an option
14118         --enable-gcc-warnings=warn-only to configure, to implement this.
14119         * INSTALL, etc/NEWS: Document this.
14120         * configure.ac (gl_GCC_VERSION_IFELSE): New macro, from coreutils.
14121         (gl_gcc_warnings, WERROR_CFLAGS): Use it to add new option.
14122         Don’t treat --with-x-toolkit=no as a special case when configuring
14123         warnings.
14125 2016-04-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14127         Inhibit querying for the encoding of the headers when resending
14129         * lisp/gnus/message.el (message-resend): Inhibit querying for
14130         the encoding of the headers when resending.
14132 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14134         Prefer AUTO_STRING_WITH_LEN to make_formatted_string
14136         * src/buffer.c (Fgenerate_new_buffer_name):
14137         * src/filelock.c (get_boot_time):
14138         * src/minibuf.c (get_minibuffer):
14139         * src/process.c (make_process):
14140         * src/xdisp.c (ensure_echo_area_buffers):
14141         Prefer AUTO_STRING_WITH_LEN + sprintf to make_formatted_string
14142         when either will do.
14144 2016-04-04  Tao Fang  <fangtao0901@gmail.com>
14146         Allow URL using HTTPS proxies using CONNECT
14148         * lisp/url/url-http.el (url-http-find-free-connection): Allow
14149         using proxies (bug#11788).
14150         (url-http-end-of-document-sentinel): Ditto.
14151         (url-http): The protocol may change from http to https and
14152         vice versa.
14153         (url-https-proxy-connect): Allow using CONNECT proxies for https.
14155 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14157         New C macro AUTO_STRING_WITH_LEN
14159         Put a bit less pressure on the garbage collector by defining a
14160         macro that is like AUTO_STRING but also allows null bytes in strings,
14161         and by extending AUTO_STRING to work with any unibyte string.
14162         * src/alloc.c (verify_ascii): Remove; all uses removed.
14163         AUTO_STRING can now be used on non-ASCII unibyte strings.
14164         * src/lisp.h (AUTO_STRING): Now allows non-ASCII unibyte strings.
14165         (AUTO_STRING_WITH_LEN): New macro.
14166         * src/coding.c (from_unicode_buffer):
14167         * src/editfns.c (format_time_string):
14168         * src/emacs-module.c (module_make_string, module_format_fun_env):
14169         * src/fileio.c (Fexpand_file_name):
14170         * src/font.c (font_parse_family_registry):
14171         * src/ftfont.c (ftfont_get_charset):
14172         * src/keymap.c (silly_event_symbol_error):
14173         * src/menu.c (single_menu_item):
14174         * src/sysdep.c (system_process_attributes):
14175         Use AUTO_STRING_WITH_LEN if possible.
14176         * src/emacs-module.c (module_make_function):
14177         * src/fileio.c (report_file_errno, report_file_notify_error):
14178         * src/fns.c (Flocale_info):
14179         * src/sysdep.c (system_process_attributes):
14180         Use AUTO_STRING if possible.  This is doable more often now
14181         that AUTO_STRING works on any unibyte string.
14183 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14185         Port redirect-debugging-output to MS-Windows
14187         Suggested by Eli Zaretskii in:
14188         https://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00037.html
14189         * src/print.c [WINDOWSNT]: Include sys/socket.h.
14190         * src/w32.c (sys_dup2): Work around problem with MS-Windows _dup2.
14192 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
14194         Port redirect-debugging-output to non-GNU/Linux
14196         Problem reported by Kylie McClain for musl in:
14197         https://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01592.html
14198         * etc/DEBUG, etc/NEWS: Mention this.
14199         * src/callproc.c (child_setup) [!MSDOS]:
14200         * src/dispnew.c (init_display):
14201         * src/emacs.c (main, Fdaemon_initialized):
14202         * src/minibuf.c (read_minibuf_noninteractive):
14203         * src/regex.c (xmalloc, xrealloc):
14204         Prefer symbolic names like STDERR_FILENO to magic numbers like 2,
14205         to make file-descriptor manipulation easier to follow.
14206         * src/emacs.c (relocate_fd) [!WINDOWSNT]: Remove; no longer needed
14207         now that we make sure stdin, stdout and stderr are open.  All uses
14208         removed.
14209         (main): Make sure standard FDs are OK.  Prefer symbolic names like
14210         EXIT_FAILURE to magic numbers like 1.  Use bool for boolean.
14211         * src/lisp.h (init_standard_fds): New decl.
14212         * src/print.c (WITH_REDIRECT_DEBUGGING_OUTPUT) [GNU_LINUX]:
14213         Remove; no longer needed.
14214         (Fredirect_debugging_output): Define on all platforms, not just
14215         GNU/Linux.  Redirect file descriptor, not stream, so that the code
14216         works even if stderr is not an lvalue.  Report an error if the
14217         file arg is neither a string nor nil.
14218         (syms_of_print): Always define redirect-debugging-output.
14219         * src/sysdep.c (force_open, init_standard_fds): New functions.
14221 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14223         Spelling fixes
14225 2016-04-03  John Wiegley  <johnw@newartisans.com>
14227         Revert "Add `r'/`l' grep command history commands"
14229         This reverts commit a32eea60ac90d367435860fe3a10bf843e6f497c.
14231 2016-04-03  John Wiegley  <johnw@newartisans.com>
14233         Revert "Restore the point in grep buffers when traversing the history"
14235         This reverts commit f7c5f79ca565d3ef3feeb1e0af5ca261f1bcf58a.
14237 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14239         Merge from origin/emacs-25
14241         787df9d ; * src/keyboard.c (read_char): Fix typos in a comment.
14243 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
14245         Merge from origin/emacs-25
14247         b787d55 More format-time-string change fixups
14248         13c8f29 make-xwidget unused arg cleanup
14249         36e05f0 Remove unused arguments from make-xwidget
14250         1042217 Document incompatible changes in 'format-time-string'
14251         7228eb8 Improve documentation of byte-code objects
14252         0020047 Adapt calls to 'format-time-string' to changes in Emacs 25
14253         17b5152 Improve vc-diff with Git backend
14254         c28f87a (js--continued-expression-p): Special-case unary plus and minus
14255         2d02a5f ; * lisp/vc/vc-annotate.el (vc-annotate): Clarify commentary.
14256         9151f16 Prevent C++ Mode wrongly fontifying some identifiers near tem...
14257         b3b523c Avoid crashes due to insanely large columns in tabulated-list...
14258         a3daa34 Teach M-x disassemble a default argument.
14259         e30c3e9 Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
14260         df441b3 Fix OS X specific settings in tramp-tests
14261         2244331 Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
14263         # Conflicts:
14264         #       lisp/net/tramp-sh.el
14265         #       lisp/progmodes/cc-engine.el
14267 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14269         Restore the point in grep buffers when traversing the history
14271         * lisp/progmodes/grep.el (grep-process-setup): Allow moving
14272         point to a specific place after finishing the grep command.
14273         (grep-mode): Use it to restore point after traversing the history.
14274         (grep--history-point): New internal variable.
14275         (grep--save-history, grep-forward-history): Use it to restore
14276         the point.
14278 2016-04-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14280         Add `r'/`l' grep command history commands
14282         * doc/emacs/building.texi (Grep Searching): Mention the
14283         `r'/`l' commands.
14285         * lisp/progmodes/grep.el (grep-forward-history): New command.
14286         (grep-backward-history): Ditto.
14287         (grep--save-buffers): New function.
14288         (grep): Use it to record the history.
14289         (grep--command-history, grep--history-inhibit)
14290         (grep--history-place): New internal variables for the grep
14291         history (bug#22627).
14293 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14295         Fix Bug#23186, again
14297         * lisp/net/tramp.el (tramp-encoding-shell)
14298         (tramp-encoding-command-switch)
14299         (tramp-encoding-command-interactive): Check for
14300         `w32-shell-name'.  (Bug#23186)
14302 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14304         Fix Bug#23186
14306         * lisp/net/tramp.el (tramp-encoding-command-switch)
14307         (tramp-encoding-command-interactive):
14308         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
14309         `tramp-encoding-shell' could be nil.  (Bug#23186)
14311 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
14313         Fix Bug#22145
14315         * lisp/net/tramp-cache.el (tramp-get-connection-property)
14316         (tramp-set-connection-property, tramp-connection-property-p)
14317         (tramp-flush-connection-property): Improve docstring.
14319         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
14321         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
14323         * test/automated/tramp-tests.el (tramp--test-utf8):
14324         Improve settings of coding systems.  (Bug#22145)
14326 2016-04-02  John Wiegley  <johnw@newartisans.com>
14328         Merge from origin/emacs-25
14330         7c1802f * doc/lispref/text.texi (Columns): Remove a nonexistent refer...
14331         9034c50 * doc/man/emacsclient.1: Document +line:column option.
14332         06495c9 Fix rare problems with echo-area display and multiple frames
14333         f99b512 In M-%, avoid making buffer-local binding of text-property-de...
14335 2016-04-02  John Wiegley  <johnw@newartisans.com>
14337         Merge from origin/emacs-25
14339         e65c307 * src/font.c (QCuser_spec): Add missing colon to :user-spec.
14340         c8b868b Don't start the 'midnight' timer twice
14341         278c8a7 * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of X...
14342         e5c17f4 Fix todo-mode category movement
14343         bc70fda * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
14344         cf40f38 Ignore non-nil. non-cons values of unread-command-events
14345         8ee4c52 Improve documentatuon of 'truncate-partial-width-windows'
14346         fb9a62c * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU...
14347         1e1ea22 Fix 'dired-goto-file' in Dired buffers produced by find-dired
14348         3a13472 Fix map-put and map-delete for alists (Bug#23105)
14349         422c3da Minor copyedits of documentation for temporary displays
14350         90fb9b3 Add customization option for using UTF-8 coordinates in xt-mouse
14351         f14d463 Minor doc string fixes in replace.el
14352         e70ee9d Fix scrolling upwards with 'xwidget-webkit-browse-url'
14353         44782de Fix display of Indic scripts
14354         326c64f Fix splash screen display at startup
14355         7ab2a97 ; In NEWS mention new display of minibuffer completions window
14356         a1cd84c Describe temporary displays in Emacs manual
14357         5ec1056 Avoid stray As next to IDLW icons
14358         45577d5 Avoid GTK 3 crash with icons and masks
14359         e99ff6e * lisp/minibuffer.el (minibuffer-completion-help): Use fit-wi...
14360         077b78c Define make_save_ptr_ptr unconditionally
14361         20a1003 Preserve current buffer when popping up TTY menus
14362         7eba90c Improve font selection by family on MS-Windows
14363         73d213f Comint, term, and compile now set EMACS
14364         9524ec5 Ignore more merges when generating ChangeLog
14365         ad250f2 Sync with gnulib
14366         c0165ea Resurrect GNUS-NEWS autogeneration
14367         1e5327c ; Backport ChangeLog.2 fixes from master
14368         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14369         38a43f1 Fix bug in displaying header line with a box face
14370         91e6676 Fix an Isearch var to be a string (Bug#23038)
14371         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14372         8a35f83 Render empty <ul><li><ul> correctly
14373         d8b2ce5 Ignore invalid base64 encoded embedded images
14374         52ba24b Fix <p> and <div> newlines with or without <li> in shr
14375         b8ea08b Avoid errors in 'newline'
14376         fc3cd53 Fix Bug#23032
14377         dd2737b Adjudicate review comments in abbrevs.texi
14378         26f9c50 Fixup the "normal" matcher; highlight global var symbols, too
14379         413e73b ; Small theme additions
14380         cd950da Honor prefix arg in doc-view-next-line-or-next-page
14381         ed909c0 ; Spelling fixes
14382         6da3a6d Port to strict C99 offsetof
14383         de7601f Port to GTK with strict C11 compiler
14384         658aa2d Port to GTK with strict C99 compiler
14385         1df7173 Avoid screen artifacts with new OS X visible bell after scrol...
14386         7a2edd3 Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into...
14387         dca240a Suppress some Tramp tests for OSX, do not merge with master
14388         9094304 * lisp/progmodes/xref.el (xref-buffer-name, xref--window): Mo...
14389         cbedfc2 * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
14390         005ac7c * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
14391         9ab03f2 ; Auto-commit of loaddefs files.
14392         56df617 Address compilation warnings due to 2016-01-03 mml refactoring.
14393         a1ef911 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp i...
14394         79ae7fb * lisp/dired-x.el (dired-omit-here-always): Correct error mes...
14395         253929f * lisp/dired-x.el (dired-omit-here-always): Replace undefined...
14396         ce53389 * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
14397         d6d164f Avoid segfaults due to frame image cache being absent
14398         bc7f6f6 Improve documentation of glyphless-character display
14399         6b6916e ; * src/xdisp.c (with_echo_area_buffer): Fix typos in comments.
14400         ee9a1f7 Support safe navigation operator in non-SMIE indentation code
14401         c3ed95b Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
14402         2036be4 Fix Ruby's operator precedence
14403         1d686c2 (ruby-interpolation-inside-another-interpolation): New failin...
14404         7950e1d Port to clang 3.7.0 on x86-64
14405         218ae59 * test/automated/package-test.el (package-test-signed): Tweak...
14406         ba33b7c Sync with gnulib
14407         38b276d Fix startup of "emacs -nw" on systems that CANNOT_DUMP
14408         dbfbedd Do not tokenize a comment before continuation as ';'
14409         0403620 Don't misindent arguments of a method call inside continuation
14410         e6776f8 * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_ec...
14411         8475f3d ASCII-only etc/NEWS etc.
14412         5cc6919 Fix a cacheing bug, which led to inordinately slow c-beginnin...
14413         0ce37ea Fix Isearch prompt when invoked with an argument
14414         f3033d4 Fix a typo in the Emacs manual
14415         4235d2d Curved quotes in etc/NEWS etc.
14416         26b56dc Fix some single quotes in documentation
14417         80ec484 Make lisp-completion-at-point's argument optional
14418         9d463ae Tweak the left precedence of '=>'
14419         5b705bc Indent '.' relative to the first sibling expression
14420         04f5525 Make '.' associative, for easier sexp navigation
14421         ba24c99 Revert "Simplify "Visit New File" to "New File""
14423 2016-04-02  Stefan Monnier  <monnier@iro.umontreal.ca>
14425         * lisp/erc/erc-backend.el: Use lexical-binding. Silence byte-compiler
14427         Use #' to quote functions.
14428         (erc-server-delayed-reconnect): Remove unused arg `event'.
14429         (erc-process-sentinel-2): Adjust accordingly.
14430         Don't pass `err' to condition-case if we don't use it.
14431         (define-erc-response-handler): Use add-hook rather than add-to-list.
14432         (NICK): Use cl-pushnew rather than add-to-list.
14433         (331): Remove unused var `topic'.
14434         (352): Remove unused var `hopcount'.
14436 2016-04-02  Paul Pogonyshev  <pogonyshev@gmail.com>
14438         Support macros in 'func-arity'
14440         * src/eval.c (Ffunc_arity): Support Lisp macros as well.
14442 2016-04-02  Andy Moreton  <andrewjmoreton@gmail.com>
14444         Fix compilation of Cygwin w32 port
14446         * src/w32xfns.c (init_crit, delete_crit) [HAVE_W32NOTIFY]: Only
14447         initialize and free the notification set if compiling with
14448         w32notify feature.
14450 2016-04-01  Paul Eggert  <eggert@penguin.cs.ucla.edu>
14452         Fix resize incompatibility with GTK+ master
14454         Problem reported by Matthias Clasen (Bug#23144).
14455         * src/xterm.c (handle_one_xevent) [USE_GTK]:
14456         Do not call xg_frame_resized.
14458 2016-04-01  Paul Eggert  <eggert@cs.ucla.edu>
14460         Fix check for subscript errors in module calls
14462         * src/emacs-module.c (check_vec_index): New function.
14463         (module_vec_set, module_vec_get): Use it instead of a
14464         not-strict-enough check.
14466 2016-03-31  Simen Heggestøyl  <simenheg@gmail.com>
14468         Support completion of bang-rules in CSS mode
14470         lisp/textmodes/css-mode.el (css--bang-ids): New buffer-local variable
14471         holding the list of bang-rules for the current mode.
14472         (css--font-lock-keywords): Retrieve bang-rules from `css--bang-ids'
14473         instead of computing them.
14474         (css--complete-bang-rule): New function for completing a bang-rule.
14475         (css-completion-at-point): Add support for completing bang-rules.
14476         (scss-font-lock-keywords): Change from a variable to a function in
14477         order to recompute `css--font-lock-keywords' when `css--bang-ids' has
14478         changed.
14479         (scss-mode): Set `css--bang-ids' and recompute font-lock keywords.
14481 2016-03-30  Simen Heggestøyl  <simenheg@gmail.com>
14483         Add HTML4 tags to HTML mode
14485         * lisp/textmodes/sgml-mode.el (html-tag-alist): Add HTML4 tags.
14486         (html-tag-help): Add short descriptions of those tags.
14488 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
14490         Pacify --enable-gcc-warnings for buffer-hash etc.
14492         * src/fns.c (make_digest_string): Now static.
14493         (secure_hash): Omit unused local.
14495 2016-03-29  Oleh Krehel  <ohwoeowho@gmail.com>
14497         Add support for 7z archives
14499         * lisp/dired-aux.el (dired-compress-file-suffixes): "Z" should now
14500           also work with 7z archives.
14502         The shell command should produce a single extracted directory named
14503         after the archive's name.
14505         In case the extracted directory exists, all files will be overwritten
14506         without a prompt. This matches the expected behavior with the "tar.gz"
14507         archives.
14509 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14511         * lisp/emacs-lisp/seq.el: Require cl-lib instead of cl-extra
14513 2016-03-29  Michael Albinus  <michael.albinus@gmx.de>
14515         Fix typo in network-stream-tests.el
14517         * test/lisp/net/network-stream-tests.el
14518         (connect-to-tls-ipv6-nowait): Fix typo.
14520 2016-03-29  Nicolas Petton  <nicolas@petton.fr>
14522         New function seq-sort-by in seq.el
14524         * lisp/emacs-lisp/seq.el (seq-sort-by): New function.
14525         * test/lisp/emacs-lisp/seq-tests.el: New test for seq-sort-by.
14526         * doc/lispref/sequences.texi: Add documentation for seq-sort-by.
14528 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14530         Mention the `M-q' changes
14532 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14534         Have `M-q' not mark buffers are changed when they haven't
14536         * lisp/textmodes/fill.el (fill-paragraph): Use `buffer-hash'
14537         to avoid marking buffers as changed when they haven't.
14539 2016-03-28  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14541         Add a new function `buffer-hash'
14543         * doc/lispref/text.texi (Checksum/Hash): Document `buffer-hash'.
14545         * src/fns.c (Fbuffer_hash): New function.
14546         (make_digest_string): Refactored out into its own function.
14547         (secure_hash): Use it.
14549         * test/src/fns-tests.el (fns-tests-hash-buffer): New tests.
14551 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
14553         Rename C names to match Lisp symbols better
14555         This was inspired by commit e65c3079c65595d95749348366af9811fafff062,
14556         which fixed a bug where the C name for a symbol disagreed with the
14557         symbol name itself.  Fix other instances of disagreements that I found.
14558         Although this doesn’t fix a bug, it should make code easier to follow.
14559         The remaining disagreements are idiosyncratic: Qminus, Qplus,
14560         Qsans__serif, Qbackquote, Qcomma, Qcomma_at, Qcomma_dot.
14561         All uses changed.
14562         * src/alloc.c (QAutomatic_GC): Rename from Qautomatic_gc.
14563         * src/dbusbind.c (QCsystem): Rename from QCdbus_system_bus.
14564         (QCsession): Rename from QCdbus_session_bus.
14565         (QCtimeout): Rename from QCdbus_timeout.
14566         (QCbyte): Rename from QCdbus_type_byte.
14567         (QCboolean): Rename from QCdbus_type_boolean.
14568         (QCint16): Rename from QCdbus_type_int16.
14569         (QCuint16): Rename from QCdbus_type_uint16.
14570         (QCint32): Rename from QCdbus_type_int32.
14571         (QCuint32): Rename from QCdbus_type_uint32.
14572         (QCint64): Rename from QCdbus_type_int64.
14573         (QCuint64): Rename from QCdbus_type_uint64.
14574         (QCdouble): Rename from QCdbus_type_double.
14575         (QCstring): Rename from QCdbus_type_string.
14576         (QCobject_path): Rename from QCdbus_type_object_path.
14577         (QCsignature): Rename from QCdbus_type_signature.
14578         (QCunix_fd): Rename from QCdbus_type_unix_fd.
14579         (QCarray): Rename from QCdbus_type_array.
14580         (QCvariant): Rename from QCdbus_type_variant.
14581         (QCstruct): Rename from QCdbus_type_struct.
14582         (QCdict_entry): Rename from QCdbus_type_dict_entry.
14583         (QCserial): Rename from QCdbus_registered_serial.
14584         (QCmethod): Rename from QCdbus_registered_method.
14585         (QCsignal): Rename from QCdbus_registered_signal.
14586         * src/emacs-module.c (Qinternal__module_call):
14587         Rename from Qinternal_module_call.
14588         * src/frame.c (Qwindow__pixel_to_total):
14589         Rename from Qwindow_pixel_to_total.
14590         * src/gnutls.c (QChostname): Rename from QCgnutls_bootprop_hostname.
14591         (QCpriority): Rename from QCgnutls_bootprop_priority.
14592         (QCtrustfiles): Rename from QCgnutls_bootprop_trustfiles.
14593         (QCkeylist): Rename from QCgnutls_bootprop_keylist.
14594         (QCcrlfiles): Rename from QCgnutls_bootprop_crlfiles.
14595         (QCmin_prime_bits): Rename from QCgnutls_bootprop_min_prime_bits.
14596         (QCloglevel): Rename from QCgnutls_bootprop_loglevel.
14597         (QCcomplete_negotiation): Rename from QCgnutls_complete_negotiation.
14598         (QCverify_flags): Rename from QCgnutls_bootprop_verify_flags.
14599         (QCverify_error): Rename from QCgnutls_bootprop_verify_error.
14600         * src/w32fns.c (Qfont_parameter): Rename from Qfont_param.
14601         (Qgnutls): Rename from Qgnutls_dll.
14602         (Qlibxml2): Rename from Qlibxml2_dll.
14603         (Qzlib): Rename from Qzlib_dll.
14604         * src/w32select.c (Qutf_16le_dos): Rename from QUNICODE.
14605         * src/window.c (Qwindow__resize_root_window):
14606         Rename from Qwindow_resize_root_window.
14607         (Qwindow__resize_root_window_vertically):
14608         Rename from Qwindow_resize_root_window_vertically.
14609         (Qwindow__sanitize_window_sizes):
14610         Rename from Qwindow_sanitize_window_sizes.
14611         (Qwindow__pixel_to_total): Rename from Qwindow_pixel_to_total.
14612         * src/xdisp.c (Qredisplay_internal_xC_functionx):
14613         Rename from Qredisplay_internal.
14614         * src/xfns.c (Qfont_parameter): Rename from Qfont_param.
14615         * src/xselect.c (Q_EMACS_TMP_): Rename from QEMACS_TMP.
14617 2016-03-26  Paul Eggert  <eggert@cs.ucla.edu>
14619         func-arity minor improvements
14621         * src/bytecode.c (get_byte_code_arity): Omit unnecessary
14622         runtime test for integer argument, unless debugging.
14623         Use EMACS_INT for Emacs integers.
14624         * src/eval.c (Ffunc_arity): Omit unused locals.
14625         Avoid side effects in ‘if’ expr.
14626         (lambda_arity): Use bool for boolean, and EMACS_INT for Emacs ints.
14628 2016-03-26  John Wiegley  <johnw@newartisans.com>
14630         Restore the fix to bug#18527 from commit d6868025
14632 2016-03-26  Martin Rudalics  <rudalics@gmx.at>
14634         Safely run window size change functions
14636         * src/window.c (run_window_size_change_functions): Use
14637         safe_call1 when running a size change function.
14638         (grow_mini_window, shrink_mini_window): Report error when
14639         minibuffer window cannot be resized.
14641 2016-03-26  Paul Pogonyshev  <pogonyshev@gmail.com>
14643         Implement 'func-arity'
14645         * src/eval.c (Ffunc_arity, lambda_arity): New functions.
14646         * src/bytecode.c (get_byte_code_arity): New function.
14647         * src/lisp.h (get_byte_code_arity): Add prototype.
14649         * doc/lispref/functions.texi (What Is a Function): Document
14650         'func-arity'.
14652         * etc/NEWS: Mention 'func-arity'.
14654         * test/src/fns-tests.el (fns-tests-func-arity): New test set.
14656 2016-03-25  Alan Mackenzie  <acm@muc.de>
14658         Fix absence of c-noise-macro-name-re, etc., in languages which don't use it
14660         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id, c-forward-type)
14661         (c-forward-declarator, c-forward-decl-or-cast-1, c-backward-over-enum-header)
14662         (c-guess-basic-syntax): Check c-opt-cpp-prefix before `looking-at'
14663         c-noise-macro-with-parens-name-re.
14665         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): The same as for
14666         cc-engine.el.
14668         * lisp/progmodes/cc-mode.el (c-basic-common-init): Add call to
14669         `c-make-noise-macro-regexps'.
14670         (c-mode, c++-mode, objc-mode): Remove calls to `c-make-noise-macro-regexps'.
14672         * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
14673         (c-noise-macro-with-re): Initialize to "\\<\\>" rather than nil.
14675 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14677         (shr-insert): Respect non-breaking space in non-<pre> text
14679         * lisp/net/shr.el (shr-insert): Respect non-breaking space in
14680         non-<pre> text.
14682 2016-03-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14684         parse-times-string doc string clarification
14686         * lisp/calendar/parse-time.el (parse-time-string): Note that
14687         we accept RFC2822 strings.
14689 2016-03-25  Marcin Borkowski  <mbork@mbork.pl>
14691         Doc string fix
14693         * lisp/calendar/parse-time.el (parse-time-tokenize): Clarify
14694         doc string and clean up code.
14696 2016-03-25  Michael Albinus  <michael.albinus@gmx.de>
14698         Cleanup file notification code in Tramp
14700         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
14701         Make `events' a list of symbols for "inotifywait".
14702         (tramp-sh-gvfs-monitor-dir-process-filter): Make event a list.
14703         Call `file-notify-handle-event' for better traces.
14704         (tramp-sh-inotifywait-process-filter): Check for expected events.
14705         Call `file-notify-handle-event' for better traces.
14707 2016-03-24  Michael Albinus  <michael.albinus@gmx.de>
14709         Adapt filenotify-tests.el according latest tests
14711         * test/lisp/filenotify-tests.el (file-notify-test02-events)
14712         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
14713         Remove superfluous `read-event' calls.
14714         (file-notify-test02-events): Expect different events under MS
14715         Windows 7 and 10.
14716         (file-notify-test04-file-validity): Move `file-notify-valid-p'
14717         check up.
14719 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14721         Merge from origin/emacs-25
14723         ad250f2 Sync with gnulib
14724         c0165ea Resurrect GNUS-NEWS autogeneration
14726         # Conflicts:
14727         #       etc/GNUS-NEWS
14728         #       lisp/Makefile.in
14730 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14732         Merge from origin/emacs-25
14734         e643977 Make `toggle-frame-maximized' respect the dock on OS X (bug#2...
14735         38a43f1 Fix bug in displaying header line with a box face
14737 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
14739         * etc/NEWS: Use straight quotes.
14741 2016-03-23  Simen Heggestøyl  <simenheg@gmail.com>
14743         Support completion of attribute values in CSS mode
14745         * lisp/textmodes/css-mode.el (css-property-alist): New defconst
14746         holding CSS identifiers and the values they can have.
14747         (css-property-ids): Compute dynamically from `css-property-alist'.
14748         (css-value-class-alist): New defconst holding property value classes
14749         and their values.
14750         (css--property-value-cache): New variable providing a cache for
14751         `css--property-values'.
14752         (css--value-class-lookup): New function for computing a list of values
14753         in a value class.
14754         (css--property-values): New function for computing a list of possible
14755         values for a CSS property.
14756         (css--complete-property-value): New function for completing a property
14757         value.
14758         (css-completion-at-point): Add support for completing property values.
14759         * test/lisp/textmodes/css-mode-tests.el: New file.
14761 2016-03-22  Wilson Snyder  <wsnyder@wsnyder.org>
14763         Sync with verilog-mode development tree.
14765         * lisp/progmodes/verilog-mode.el (verilog-imenu-generic-expression,
14766         verilog-speedbar-initialize): Automatically add verilog-mode
14767         extensions when in speedbar mode, bug1045, bug1046.  Reported by
14768         David Shleifman.
14769         (verilog-mode-map): Move `verilog-star-comment' from M-* to C-c/ to
14770         avoid conflict with `pop-tag-mark'. Reported by Ian Perryman.
14771         (verilog-read-always-signals-recurse): Fix :: notation for
14772         auto-reset signals.  Reported by Andrew Jones.
14773         (verilog-font-lock-grouping-keywords-face): Fix highlighting of
14774         grouping keywords, bug1002. Reported by Paul Sargent.
14775         (verilog-save-font-no-change-functions): Commentary and fix
14776         pre-Emacs 21 behavior.
14778 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14780         Compute a better commit message for merges
14782         Problem reported by David Engster in:
14783         https://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01270.html
14784         * admin/gitmerge.el (gitmerge-commit-message):
14785         Truncate the computed commit message to at most 72 characters per line.
14786         (gitmerge-maybe-resume): Don’t use "-" as the commit message for
14787         merges; use the computed commit message instead.
14789 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14791         * admin/gitmerge.el (gitmerge-skip-regexp): Add "no need to merge".
14793 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14795         Change do-not-merge pattern to "do not merge"
14797         This should avoid the problem we recently had with
14798         automatically-generated merge messages, while still letting people
14799         specify commits not to merge.
14800         * admin/gitmerge.el (gitmerge-skip-regexp): Add "do not merge".
14801         (gitmerge-highlight-skip-regexp): Fold case when searching
14802         for gitmerge-skip-regexp.
14804 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14806         Merge from origin/emacs-25
14808         91e6676 Fix an Isearch var to be a string (Bug#23038)
14809         76ef522 Fix (args-out-of-range 1) error in cursor-sensor--detect
14811 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14813         -
14815         -
14817 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14819         Keep "merge" commits by default in gitmerge
14821         * admin/gitmerge.el (gitmerge-skip-regexp): Omit "merge", as it
14822         causes false positives.  See:
14823         https://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01234.html
14825 2016-03-22  Paul Eggert  <eggert@cs.ucla.edu>
14827         Assume NON_BLOCKING_CONNECT (Bug#22946)
14829         * lisp/proced.el (proced-signal-list): Omit comment about
14830         obsolete systems that do not support POSIX 1003.1-2001 signals.
14831         * src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now
14832         assume POSIX 1003.1-2001 or better here.  Assume it’s defined.
14833         (connect_network_socket): Assume EINPROGRESS is defined,
14834         as that’s portable too now.
14835         (Fmake_network_process): Use bool for boolean.
14837 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14839         Fix problems caused by new implementation of sub-word mode
14841         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
14842         New functions.
14843         (word-move-empty-char-table): New variable.
14845         * etc/NEWS: Mention 'forward-word-strictly' and
14846         'backward-word-strictly'.
14848         * doc/lispref/positions.texi (Word Motion): Document
14849         'find-word-boundary-function-table', 'forward-word-strictly', and
14850         'backward-word-strictly'.  (Bug#22560)
14852         * src/syntax.c (syms_of_syntax)
14853         <find-word-boundary-function-table>: Doc fix.
14855         * lisp/wdired.el (wdired-xcase-word):
14856         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
14857         (texinfo-copy-section-title, texinfo-start-menu-description)
14858         (texinfo-copy-menu-title, texinfo-specific-section-type)
14859         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
14860         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
14861         (texinfo-insert-@end):
14862         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
14863         (texinfo-anchor, texinfo-multitable-widths)
14864         (texinfo-multitable-item):
14865         * lisp/textmodes/tex-mode.el (latex-env-before-change):
14866         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
14867         * lisp/skeleton.el (skeleton-insert):
14868         * lisp/simple.el (count-words):
14869         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
14870         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
14871         (vhdl-update-sensitivity-list, vhdl-template-block)
14872         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
14873         (vhdl-template-default-indent, vhdl-template-for-loop)
14874         (vhdl-template-if-then-use, vhdl-template-bare-loop)
14875         (vhdl-template-nature, vhdl-template-procedural)
14876         (vhdl-template-process, vhdl-template-selected-signal-asst)
14877         (vhdl-template-type, vhdl-template-variable)
14878         (vhdl-template-while-loop, vhdl-beginning-of-block)
14879         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
14880         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
14881         (verilog-forward-sexp, verilog-beg-of-statement)
14882         (verilog-set-auto-endcomments, verilog-backward-token)
14883         (verilog-do-indent):
14884         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
14885         (vera-indent-block-closing):
14886         * lisp/progmodes/simula.el (simula-context)
14887         (simula-backward-up-level, simula-forward-down-level)
14888         (simula-previous-statement, simula-next-statement)
14889         (simula-skip-comment-backward, simula-calculate-indent)
14890         (simula-find-if, simula-electric-keyword):
14891         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
14892         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
14893         (ruby-smie--forward-token, ruby-smie--backward-token)
14894         (ruby-singleton-class-p, ruby-calculate-indent)
14895         (ruby-forward-sexp, ruby-backward-sexp):
14896         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
14897         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
14898         (perl-syntax-propertize-special-constructs)
14899         (perl-backward-to-start-of-continued-exp):
14900         * lisp/progmodes/pascal.el (pascal-indent-declaration):
14901         * lisp/progmodes/octave.el (octave-function-file-p):
14902         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
14903         * lisp/progmodes/js.el (js--forward-function-decl):
14904         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
14905         (idlwave-beginning-of-block, idlwave-end-of-block)
14906         (idlwave-block-jump-out, idlwave-determine-class):
14907         * lisp/progmodes/icon.el (icon-is-continuation-line)
14908         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
14909         * lisp/progmodes/hideif.el (hide-ifdef-define):
14910         * lisp/progmodes/f90.el (f90-change-keywords):
14911         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
14912         (cperl-linefeed, cperl-electric-terminator)
14913         (cperl-find-pods-heres, cperl-fix-line-spacing)
14914         (cperl-invert-if-unless):
14915         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
14916         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
14917         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
14918         (ada-adjust-case-skeleton, ada-create-case-exception)
14919         (ada-create-case-exception-substring)
14920         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
14921         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
14922         (ada-get-indent-if, ada-get-indent-block-start)
14923         (ada-get-indent-loop, ada-get-indent-type)
14924         (ada-search-prev-end-stmt, ada-check-defun-name)
14925         (ada-goto-decl-start, ada-goto-matching-start)
14926         (ada-goto-matching-end, ada-looking-at-semi-or)
14927         (ada-looking-at-semi-private, ada-in-paramlist-p)
14928         (ada-search-ignore-complex-boolean, ada-move-to-start)
14929         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
14930         * lisp/net/quickurl.el (quickurl-grab-url):
14931         * lisp/mail/sendmail.el (mail-do-fcc):
14932         * lisp/mail/rmail.el (rmail-resend):
14933         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
14934         * lisp/mail/mail-extr.el (mail-extract-address-components):
14935         * lisp/json.el (json-read-keyword):
14936         * lisp/files.el (insert-directory):
14937         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14938         * lisp/completion.el (symbol-under-point, symbol-before-point)
14939         (symbol-before-point-for-complete, next-cdabbrev)
14940         (add-completions-from-c-buffer):
14941         * lisp/cedet/semantic/texi.el (semantic-up-context)
14942         (semantic-beginning-of-context):
14943         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
14944         use 'forward-word-strictly' and 'backward-word-strictly' instead
14945         of 'forward-word' and 'backward-word'.
14947         [This reapplies commit c1d32a65372c72d7de4808d620eefd3214a8e92a,
14948         which was inadvertently lost by merge commit
14949         c71e7cc113ed0d5f01aaa2e441a3e3c9fbeb9fa5.]
14951 2016-03-21  Paul Eggert  <eggert@cs.ucla.edu>
14953         * etc/TODO: Minor quoting and grammar fixes.
14955         [This reapplies commit 433407d8230a8a256b26c6c7615d3921b43f59ce,
14956         which was inadvertently lost by merge commit
14957         5ab243f40e4db91586ff74b01a775a5218a1d5be.]
14959 2016-03-21  Alan Mackenzie  <acm@muc.de>
14961         Don't confuse "::" with ":" when trying to parse member initializers.
14963         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
14964         more robustly for ":" token when searching backwards for it.
14966         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New
14967         language variable.
14969         [This reapplies commit 9e5452f7166e3634f2d8e943815ed722e1672714,
14970         which was inadvertently lost by merge commit
14971         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14973 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
14975         Ensure positive number of glyphs for margins of positive width
14977         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
14978         positive value when a non-zero width of the marginal area was
14979         requested.  (Bug#22356)
14981         [This reapplies commit 740849fe986b62a839bce4bbf67d0036fc1be0b9,
14982         which was inadvertently lost by merge commit
14983         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14985 2016-03-21  Alan Mackenzie  <acm@muc.de>
14987         In comment-dwim with style `extra-line', respect indent-tabs-mode.
14989         This fixes bug #22369.
14991         * lisp/newcomment.el (comment-make-bol-ws): New function.
14992         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
14994         [This reapplies commit 016b3d5894b8c424eab262aeefc646c6cd03a70a,
14995         which was inadvertently lost by merge commit
14996         7823745acbe9b87eea2db4ef434e379fc903ec35.]
14998 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
15000         Merge doc fixes for 'random' lost in previous merge
15002         [This reapplies part of commit
15003         3ffe81e245d854a694ae1734f1b6a995bdc5e724,
15004         which was inadvertently lost by merge commit
15005         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15006         (Bug#22202)
15008 2016-03-21  Eli Zaretskii  <eliz@gnu.org>
15010         Unhide the --no-line-directive option to 'etags'
15012         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
15013         option.  (Bug#22306)
15015         * doc/man/etags.1: Document the --no-line-directive option.
15017         [This reapplies commit fee0526a189f43e8470d78e8374bd425890fbe6f,
15018         which was inadvertently lost by merge commit
15019         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15021 2016-03-21  Alan J Third  <alan@idiocy.org>  (tiny change)
15023         Fix picture-mode wrt double-width characters
15025         * lisp/textmodes/picture.el (picture-insert): Check the width of
15026         the character being replaced, not just that of the replacement.
15027         (Bug#1808)
15029         [This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
15030         which was inadvertently lost by merge commit
15031         7823745acbe9b87eea2db4ef434e379fc903ec35.]
15033 2016-03-20  Martin Rudalics  <rudalics@gmx.at>
15035         Resurrect earlier fix of resize_frame_windows
15037         * src/window.c (resize_frame_windows): Resurrect earlier fix for
15038         calculating the number of columns of the minibuffer window which
15039         was lost in subsequent merges.
15041 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15043         Move the cert files to the data directory
15045 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15047         Further empty <li> tweaks
15049         * lisp/net/shr.el (shr-tag-li): When showing several empty
15050         <li> elements, ensure that they really get inserted on a new line.
15052 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15054         Don't remove too much white space at the end of documents
15056         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): Don't
15057         remove too much white space -- leave it on the last line (in
15058         case there's a background color).
15060 2016-03-20  Alan Mackenzie  <acm@muc.de>
15062         Amend parse-partial-sexp correctly to handle two character comment delimiters
15064         Do this by adding a new field to the parser state: the syntax of the last
15065         character scanned, should that be the first char of a (potential) two char
15066         construct, nil otherwise.
15067         This should make the parser state complete.
15068         Also document element 9 of the parser state.  Also refactor the code a bit.
15070         * src/syntax.c (struct lisp_parse_state): Add a new field.
15071         (SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
15072         (internalize_parse_state): New function, extracted from scan_sexps_forward.
15073         (back_comment): Call internalize_parse_state.
15074         (forw_comment): Return the syntax of the last character scanned to the caller
15075         when that character might be the first of a two character construct.
15076         (Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
15077         (scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
15078         information via the address parameter `state'.  Remove the code which converts
15079         from external to internal form of `state'.  Access buffer contents only from
15080         `from' onwards.  Reformulate code at the top of the main loop correctly to
15081         recognize comment openers when starting in the middle of one.  Call
15082         forw_comment with extra argument (for return of syntax value of possible first
15083         char of a two char construct).
15084         (Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
15085         doc string.  Clarify the doc string in general.  Call
15086         internalize_parse_state.  Take account of the new elements when consing up the
15087         output parser state.
15089         * doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
15090         element 10.  Minor wording corrections (remove reference to "trivial
15091         cases").
15092         (Low Level Parsing): Minor corrections.
15094         * etc/NEWS: Note new element 10, and documentation of element 9 of parser
15095         state.
15097 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15099         Allow the shr test files to have trailing blank space.
15101         * .gitattributes: Allow the shr test files to have trailing
15102         blank space.
15104 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15106         Add tests for empty <ul><li>
15108 2016-03-20  Paul Eggert  <eggert@cs.ucla.edu>
15110         * src/alloc.c (purecopy): Use AUTO_STRING.
15112 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15114         Ignore invalid base64 encoded embedded images
15116         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
15117         encoded embedded images (bug#22928).
15119 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15121         Render empty <ul><li><ul> correctly
15123         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
15124         correctly (bug#22964).
15126 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15128         Fix <p> and <div> newlines with or without <li> in shr
15130         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
15131         a <li>, if we are, and don't insert newlines there.
15132         (shr-ensure-paragraph): When mixing newlines and paragraph
15133         ensurements, don't insert too many blank lines.
15134         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
15135         new line.
15137 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15139         Add more shr HTML rendering tests
15141         Add a test harness for shr HTML rendering and one test
15143 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15145         Remove code left over from when overlays were used for padding
15147         * lisp/net/shr.el (shr-previous-newline-padding-width): Remove.
15148         (shr-remove-trailing-whitespace): Ditto.
15149         (shr-insert-document): Don't call them.
15151 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15153         Remove trailing blank lines in shr
15155         * lisp/net/shr.el (shr--remove-blank-lines-at-the-end): New function.
15156         (shr-insert-document): Use it to remove trailing blank lines
15157         at the end of documents, since these never seem to be very useful.
15159 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15161         Don't bug out on nil `patch-buf' arguments
15163         * lisp/vc/ediff.el (ediff-patch-file): Don't bug out on nil
15164         `patch-buf' arguments.
15166 2016-03-20  Ernest Adrogué  <nfdisco@gmail.com>
15168         Add a Catalan language environment
15170         * lisp/international/mule-cmds.el (locale-language-names): Map locale
15171           language name `ca' to language environment `Catalan'.
15173         * lisp/language/european.el: Add definition of language
15174         environment for the Catalan language.
15176         * lisp/leim/quail/latin-pre.el: Add quail rule to the
15177         `catalan-prefix' input method to support input of middle dot
15178         characters through composition (bug#18279).
15180 2016-03-19  Paul Eggert  <eggert@cs.ucla.edu>
15182         No need to block input when reading directories
15184         * src/dired.c: Don’t include blockinput.h.
15185         (open_directory, directory_files_internal_unwind)
15186         (directory_files_internal, file_attributes):
15187         Don’t block input here, as the reasons for blocking input should
15188         no longer apply.  See blockinput.h FIXME.  (Bug#22996).
15190 2016-03-19  Oscar Fuentes  <ofv@wanadoo.es>
15192         * lisp/vc/vc-hooks.el: Fix typo
15194 2016-03-19  Fabrice Popineau  <fabrice.popineau@gmail.com>
15196         Improve w32notify notifications
15198         * src/w32notify.c (DIRWATCH_BUFFER_SIZE): New macro.
15199         (struct notification): 'terminate' is now a HANDLE.
15200         (send_notifications): Argument is now a pointer to a
15201         notification.  Don't loop waiting for the notification to be
15202         acknowledged by the main thread; instead, just add the
15203         notification to the linked list of notifications waiting to be
15204         acknowledged.
15205         (watch_end): Don't close the directory handle.
15206         (watch_completion): Allocate a new notification structure to be
15207         added to the notifications set.  Call ReadDirectoryChangesW
15208         immediately after adding the new notification, and before sending
15209         a message to the main thread about them.
15210         (watch_worker): Don't loop calling ReadDirectoryChangesW; instead,
15211         call it just once -- it will be called again in watch_completion.
15212         Loop waiting for the main thread's indication to terminate.
15213         (start_watching): Create the event to be used to indicate to the
15214         worker thread that its should terminate.
15215         (remove_watch): Indicate to the worker thread that it should
15216         terminate.
15217         * src/w32term.c (queue_notifications): Loop over all the
15218         notifications in the linked list, processing all of them in one
15219         go.
15220         * src/w32inevt.c (handle_file_notifications): Loop over all the
15221         notifications in the linked list.
15222         * src/w32xfns.c (init_crit): Initialize the linked list of file
15223         notifications.
15224         (delete_crit): Free the linked list of file notifications,
15225         including any unprocessed notifications left in it.
15226         * src/w32term.h (struct notifications_se): New struct.
15228         * test/lisp/filenotify-tests.el (file-notify-test02-events)
15229         (file-notify-test05-dir-validity): Add read-event calls to
15230         facilitate event recognition by the main thread in batch mode.
15232 2016-03-17  Sam Steingold  <sds@gnu.org>
15234         make `vc-log-operation' buffer local to allow multiple simultaneous editing
15236 2016-03-17  Glenn Morris  <rgm@gnu.org>
15238         Simplify some rococo Gnus code that loads or tests for other libraries.
15240         * lisp/gnus/gnus-art.el (gnus-treat-ansi-sequences): Simplify default.
15241         * lisp/gnus/mml-smime.el (epg): Simply require it.
15242         (mml-smime-use): Simplify the default.  Doc fix.
15243         * lisp/gnus/mml2015.el (epg-config): Require it.
15244         (mml2015-use): Simplify the default.
15245         * lisp/gnus/smime.el (password-cache): Simply require it.
15246         (password-read-and-add): Remove declaration.
15248 2016-03-16  Glenn Morris  <rgm@gnu.org>
15250         * test/lisp/dabbrev-tests.el: Merge fix: move here from test/automated.
15252 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15253             Alex Harsanyi  <AlexHarsanyi@gmail.com>
15255         Sync with soap-client repository, version 3.1.1
15257         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix error
15258         message.
15259         (soap-find-port): Delete trailing whitespace.
15260         (soap-find-operation): Fix documentation and rename parameter.
15261         (soap-find-port): Likewise.
15262         (soap-operation-arity): Likewise.
15264         * lisp/net/soap-client.el: Update copyright years.
15265         (soap-warning): Fix docstring quoting.
15266         (soap-decode-date-time): Likewise.
15267         (soap-validate-xs-simple-type): Remove tabs for indentation.
15268         * lisp/net/soap-inspect.el: Update copyright years.
15270         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
15271         assume xsd:base64Binary values are UTF-8 strings.
15272         (soap-decode-xs-basic-type): Likewise.
15273         (soap-invoke): Document xsd:base64Binary handling.
15275         * lisp/net/soap-client.el (soap-find-port, soap-find-operation)
15276         (soap-operation-arity): new defuns
15277         (soap-invoke-internal): use soap-find-port, soap-find-operation.
15279 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
15281         Merge from gnulib
15283         This incorporates:
15284         2016-03-15 std-gnu11: improve clang support
15285         * m4/std-gnu11.m4: Copy from gnulib.
15287 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15289         Disable MOVE more for Dovecot
15291         * lisp/gnus/nnimap.el (nnimap-process-expiry-targets): Also
15292         disable MOVE when expirying.
15293         (nnimap-split-incoming-mail): And when splitting mail.
15295 2016-03-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15297         Don't use MOVE on Dovecot
15299         * lisp/gnus/nnimap.el (nnimap-request-move-article): Don't use
15300         MOVE on Dovecot, since it's broken in many versions.
15301         (nnimap-quirks): Mark MOVE on Dovecot as non-working.
15303 2016-03-13  Paul Eggert  <eggert@cs.ucla.edu>
15305         Improve diff hunk headers when maintaining Emacs
15307         * .gitattributes: Improve diff hunk header support for makefiles,
15308         shell scripts, Ada, C, C++, Objective C, HTML, SHTML, XML, Java,
15309         Perl, PHP, Python, Ruby, and TeX, all of which are used in Emacs
15310         somewhere (sometimes just in test cases).
15311         * autogen.sh: Add regexes for makefiles and shell scripts.
15313 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
15315         Update handling of <bdo> per Unicode 9.0
15317         * lisp/net/shr.el (shr-tag-bdo): Wrap in FSI..PDI as well, per
15318         Unicode 9.0 changes in UAX#9, paragraph 2.7.
15320 2016-03-11  John Wiegley  <johnw@newartisans.com>
15322         Merge from origin/emacs-25
15324         facb5e2 Update Emacs manual section related to character folding
15325         4efea8e ; * etc/DEBUG: Fix a typo.  (Bug#22984)
15326         f8df21b Update admin/notes/unicode
15327         950be68 Add symref-filepattern entries for c?perl-mode
15328         8b8a6ad Don't use XRANDR 1.3 extensions if the server doesn't support them.
15329         985dacf ; NEWS update for the last change in etags
15330         741a6f8 Sync with gnulib
15331         7352c6c Rework C source files to avoid ^(
15332         a589e9a By default, etags produces unqualified Perl tag names
15333         72c7438 Indent methods with keyword names correctly
15334         28532a9 Propertize character literals and special global variables
15335                 differently
15336         a7d6f39 ; Fix last change in NEWS
15337         83b2a20 Change how /etc/NEWS presents character folding
15338         b417c5a Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding
15339                 off by default""
15340         711ca36 Properly handle lambda as read function (bug 22961)
15341         1b9d616 Propertize operator symbol names with symbol syntax class
15342         9b16bc2 Stop recognizing :#{} as symbol in ruby-mode
15343         366ec77 Allow using the left shift operator without spaces on both sides
15344         02bf7cc Properly handle unquoting in wdired (bug 22938)
15345         16cf469 ; Spelling fix and tighten up comment
15346         f50bc04 Allow splat operator before percent literal
15347         991c801 Don't apply the return value of goto-char as syntax class
15348         6e63b3e Guard against nested percent literals
15349         066f3bc Recognize iuwu-mod after an escaped newline
15350         6f7a57c Fix symbolic mode string conversion for s and t
15351         50b9826 Update 'ucs-names' database
15352         993b2fb Improve doc string of 'shell-command'
15353         b71c717 Make the code in movemail_strftime more general
15354         cc057e4 Speed up redisplay of binary files with long series of nulls
15355         e51b27e Remove the highlighting support for quoting 'like this' inside
15356                 Lisp docstrings
15357         b1abce1 Restore leading space in movemail pop output
15358         98b8d44 Fix bidi-paragraph-direction in Rmail view buffer
15359         dc9d837 Don't misindent computed property generator methods
15360         7923112 Fix mbox files produced by movemail on MS-Windows
15361         c45a1ca doc string file descriptor exhaustion fix
15362         265141b Fix Bug#22814
15364 2016-03-11  John Wiegley  <johnw@newartisans.com>
15366         Merge from origin/emacs-25
15368         620951f Fix previous fix of enlarge-/shrink-window
15369         2e78353 * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
15370         66d2717 Complete temperature units in calc-convert-temperature
15371         dbb02bf Make sure to use case-sensitive search
15372         8b01e69 Prevent infinite loop on not-well-formed xml. (Bug#16344)
15373         100346a Add the missing test case for the previous patch
15374         5aba61e Use the correct dabbrev expansion
15376 2016-03-11  Michael Albinus  <michael.albinus@gmx.de>
15378         Remove compat code in Tramp
15380         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
15381         Remove compat code.
15383 2016-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
15385         * lisp/textmodes/tex-mode.el: Complete local envs.  Use #'.
15387         Use #' for function names.
15388         (latex-complete-envnames): Include existing environments in
15389         current buffer.
15390         (latex-insert-block): Use latex-complete-envnames.
15391         (tildify-foreach-ignore-environments): Declare.
15393 2016-03-10  Alain Schneble  <a.s@realize.ch>
15395         Fix asynchronous TLS connections on MS-Windows
15397         * src/w32.c (sys_write): Don't switch the socket to blocking mode
15398         if the connection attempt is in progress.  Instead, return either
15399         EWOULDBLOCK immediately if the connection is in progress, or the
15400         error code produced by '_sys_wait_connect' if the connection
15401         failed.  Switching the socket to blocking mode was found to
15402         interfere with GnuTLS handshake.  (Bug#22789)
15404 2016-03-10  Alan Mackenzie  <acm@muc.de>
15406         Clarify the documentation of nested comments.
15408         * doc/lispref/syntax.texi (Syntax Flags): State that only comments of the same
15409         style are recognized inside nestable comments.
15410         (Low-Level Parsing): Clarify that parsing will stop after the start or end of
15411         UNNESTED comments.
15413 2016-03-10  Nicolas Richard  <youngfrog@members.fsf.org>
15415         Add new function display-buffer-reuse-mode-window
15417         * lisp/window.el (display-buffer-reuse-mode-window): New function.
15418         * doc/lispref/windows.texi (Display Action Functions): Document it.
15420 2016-03-09  Paul Eggert  <eggert@cs.ucla.edu>
15422         Minor fixes for getaddrinfo_a usage
15424         * src/process.c (Fdelete_process): Check gai_cancel return value.
15425         That way, there’s no need to invoke gai_error.  Check gai_suspend
15426         return value.
15427         (Fmake_network_process): Don’t assume gai_strerror returns a UTF-8
15428         string.  Simplify call to connect_network_socket.
15429         (check_for_dns): Avoid unnecessary initialization of local.
15431 2016-03-09  Sam Steingold  <sds@gnu.org>
15433         declare `rmail-mime-entity-truncated' and `rmail-mime-render-html-function'
15435         The former avoids a compiler warning, the latter fixes a bug whereas
15436         the variable is compiled as lexical instead of dynamic.
15438 2016-03-08  Paul Eggert  <eggert@cs.ucla.edu>
15440         Pacify --enable-gcc-warnings
15442         * src/xfns.c (x_create_tip_frame): Omit unused local.
15443         (Fx_show_tip): Don’t jump over auto initialization.
15445 2016-03-07  Martin Rudalics  <rudalics@gmx.at>
15447         Optionally reuse tooltip frames instead of deleting/recreating them.
15449         * src/frame.c (tooltip_reuse_hidden_frame): New option.
15450         * src/w32fns.c (x_create_tip_frame): Remove argument TEXT.  Fix
15451         handling of dividers.
15452         (x_hide_tip): New function.
15453         (Fx_show_tip): Try to reuse old tooltip frame when
15454         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15455         have not changed.  Insert STRING here instead of passing it to
15456         x_create_tip_frame.  Compute size of tooltip window with
15457         Fwindow_text_pixel_size.  Obey Vw32_tooltip_extra_pixels when
15458         padding tooltip window.
15459         (Fx_hide_tip): Call x_hide_tip.
15460         (Vw32_tooltip_extra_pixels): New variable.
15461         * src/xdisp.c (Fwindow_text_pixel_size): Don't return negative y
15462         value.  Fix doc-string.
15463         * src/xfns.c (x_create_tip_frame): Remove argument TEXT.  Call
15464         make_frame with mini_p argument false.
15465         (x_hide_tip): New function.
15466         (Fx_show_tip): Try to reuse old tooltip frame when
15467         `tooltip-reuse-hidden-frame' is non-nil and frame parameters
15468         have not changed.  Insert STRING here instead of passing it to
15469         x_create_tip_frame.  Compute size of tooltip window with
15470         Fwindow_text_pixel_size.
15471         (Fx_hide_tip): Call x_hide_tip.
15472         * lisp/cus-start.el (tooltip-reuse-hidden-frame): Add
15473         customization entry.
15475 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15477         Assume getaddrinfo in C code
15479         * admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO.
15480         All uses removed.
15481         * doc/lispref/processes.texi (Network, Network Processes), etc/NEWS:
15482         Say that port numbers can be integer strings.
15483         * lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl.
15484         (socket_connection): Assume HAVE_GETADDRINFO.
15485         * lisp/mpc.el (mpc--proc-connect):
15486         * lisp/net/network-stream.el (open-network-stream):
15487         It’s now OK to use integer strings as port numbers.
15488         * src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove.
15489         (Fmake_network_process): Assume HAVE_GETADDRINFO.
15491 2016-03-07  Paul Eggert  <eggert@cs.ucla.edu>
15493         Remove support for IRIX
15495         The IRIX port wasn’t really working anyway, and the code was
15496         getting in the way of other changes (e.g., getaddrinfo fixes).
15497         IRIX’s supplier dropped support for IRIX in 2013.
15498         * admin/CPP-DEFINES:
15499         * configure.ac (opsys):
15500         * doc/lispref/os.texi (System Environment):
15501         * etc/MACHINES, etc/PROBLEMS:
15502         * lisp/find-dired.el (find-grep-options):
15503         * lisp/lpr.el (lpr-lp-system):
15504         * lisp/ls-lisp.el (ls-lisp-emulation):
15505         * lisp/mail/rmail.el (rmail-spool-directory):
15506         * lisp/net/net-utils.el (ping-program-options):
15507         * lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p):
15508         * lisp/progmodes/ps-mode.el (ps-mode-print-function):
15509         * src/conf_post.h [IRIX6_5]:
15510         * src/emacs.c (Vsystem_type):
15511         * src/filelock.c (get_boot_time_1):
15512         * src/process.c (process_send_signal):
15513         * src/unexelf.c (unexec):
15514         Omit IRIX-specific code and/or documentation.
15515         * configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP):
15516         Remove.  All uses removed.
15517         * etc/NEWS: Document the change.
15519 2016-03-06  John Wiegley  <johnw@newartisans.com>
15521         Revert "Use colors in the VC mode lines"
15523         This reverts commit 2621c293d82c15c00d9e73a8db75d70da7d0a23b.
15525 2016-03-06  Ken Brown  <kbrown@cornell.edu>
15527         Fix Cygwin-w32 build
15529         * src/w32fns.c (funhook, setup_w32_kbdhook, remove_w32_kbdhook):
15530         Define only if WINDOWSNT, and update all uses accordingly.
15531         * src/w32term.h (check_w32_winkey_state, setup_w32_kbdhook)
15532         (remove_w32_kbdhook): Declare only if WINDOWSNT.
15533         (w32_kbdhook_active): Define as 0 if not WINDOWSNT.
15535 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
15537         Unbreak the MinGW64 build
15539         * nt/inc/ms-w32.h [MINGW_W64]: Undefine HAVE_GAI_STRERROR.  See
15540         https://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00130.html
15541         for the details.  Reported by Angelo Graziosi
15542         <angelo.graziosi@alice.it>.
15544 2016-03-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15546         Don't signal errors on E_AGAIN
15548         * src/gnutls.c (Fgnutls_errorp): Qgnutls_e_again is not an
15549         error now that TLS is async.
15551 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15553         Allow making TLS negotiation blocking
15555         * lisp/net/gnutls.el (gnutls-negotiate): Make negotiation blocking.
15557         * src/gnutls.c (Fgnutls_boot): Provide a new keyword,
15558         :complete-negotiation, to specify that we want complete
15559         negotiation even if the socket is non-blocking.
15560         (gnutls_try_handshake): Complete negotiation if given that keyword.
15562         * src/process.h (L): Added gnutls_complete_negotiation_p.
15564 2016-03-05  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15566         Don't run ipv6 test on systems without ipv6
15568         * test/lisp/net/network-stream-tests.el
15569         (connect-to-tls-ipv6-nowait): Skip on systems without ipv6.
15571 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
15573         Implement getaddrinfo fallback for MS-Windows
15575         See https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01602.html
15576         for more details.
15578         * nt/mingw-cfg.site (ac_cv_func_getaddrinfo)
15579         (ac_cv_func_gai_strerror): Set to "yes", as the configure script's
15580         test program is not smart enough to auto-detect these.
15581         * nt/inc/sys/socket.h (getaddrinfo, freeaddrinfo): Redirect to
15582         sys_getaddrinfo and sys_freeaddrinfo.  Provide prototypes for
15583         sys_getaddrinfo and sys_freeaddrinfo.
15585         * src/w32.c (init_winsock): Try loading getaddrinfo and
15586         freeaddrinfo from ws2_32.dll.
15587         (sys_getaddrinfo, sys_freeaddrinfo): New functions.
15589         * lib-src/pop.c [WINDOWSNT]: Include winsock2.h, not winsock.h,
15590         and also ws2tcpip.h.
15591         (getaddrinfo, freeaddrinfo) [WINDOWSNT]: Redirect to
15592         sys_getaddrinfo and sys_freeaddrinfo, respectively.
15593         (load_ws2, sys_getaddrinfo, sys_freeaddrinfo) [WINDOWSNT]: New
15594         functions.
15596 2016-03-04  Glenn Morris  <rgm@gnu.org>
15598         * lisp/files.el: Fix recent typo.
15600         * lisp/subr.el (read-multiple-choice): Avoid free variable.
15602         * doc/lispref/files.texi (File Attributes): Fix typo.
15604 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15606         Make the describe-key prompts clearer
15608         * lisp/help.el (describe-key-briefly): Make the prompt clearer
15609         (bug#14854).
15610         (describe-key): Ditto.
15612 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15614         Allow scrolling while querying multiple choice
15616         * lisp/subr.el (read-multiple-choice): Allow scrolling the
15617         buffer while querying (bug#22827).
15619 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15621         Add accessors for `file-attributes'
15623         * doc/lispref/files.texi (File Attributes): Mention the accessors.
15625         * lisp/files.el (file-attribute-type)
15626         (file-attribute-link-number, file-attribute-user-id)
15627         (file-attribute-group-id, file-attribute-access-time)
15628         (file-attribute-modification-time)
15629         (file-attribute-change-time, file-attribute-size)
15630         (file-attribute-modes, file-attribute-inode-number)
15631         (file-attribute-device-number): New functions.
15633         * src/dired.c (Ffile_attributes): Mention the accessors (bug#22890).
15635 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
15637         Fix Bug#22814
15639         * lisp/autorevert.el (global-auto-revert-mode): Do not set
15640         `auto-revert-use-notify' to nil.
15642         * etc/NEWS: Mention this.
15644         * etc/PROBLEMS: Remove problem Bug#22814.
15646         * src/kqueue.c: Include <sys/resource.h>.
15647         (Fkqueue_add_watch): Limit the number of used file descriptors.
15648         (Bug#22814)
15650         * test/lisp/filenotify-tests.el (file-notify--test-remote-enabled)
15651         (file-notify-test00-availability, file-notify-test01-add-watch)
15652         (file-notify-test02-events, file-notify-test06-many-events):
15653         Use #' read syntax for functions.
15654         (file-notify-test05-dir-validity)
15655         (file-notify-test06-many-events): Simplify directory creation.
15656         (file-notify-test09-sufficient-ressources): New test.
15658 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15660         Fix insertion of edited servers in the dribble file
15662         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
15663         insert explicit newlines, because they're quoted (bug#22903).
15665 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
15667         Move cl-seq-tests to the right place after the merge
15669         Move cl-seq-tests to the right place after the merge
15671 2016-03-03  John Wiegley  <johnw@newartisans.com>
15673         Merge from origin/emacs-25
15675         d6f6b7d * etc/AUTHORS: Update the AUTHORS file
15676         5cf7c39 authors.el updates
15677         a26f193 ; fix changelog entries
15678         fbc85c7 ; make change-history-commit
15679         06da00c Fix Bug#22859
15680         ab30bf5 ; * src/w32proc.c: Update the commentary to sys_select.
15681         1481029 Fix reordering of bidi text in an isolate inside an override
15682         60e0596 Document c-guess-basic-syntax in the CC Mode manual.
15684 2016-03-03  John Wiegley  <johnw@newartisans.com>
15686         Merge from origin/emacs-25
15688         f5d1435 Fix targets in test/automated/Makefile.in
15690 2016-03-03  John Wiegley  <johnw@newartisans.com>
15692         Merge from origin/emacs-25
15694         b6d6304 Comment on last change to define-derived-mode
15696 2016-03-03  John Wiegley  <johnw@newartisans.com>
15698         Merge from origin/emacs-25
15700         cb1e3da Also allow setting the paragraph direction to nil
15701         bbe8a89 Made the new OS X visible bell more visible.
15703 2016-03-03  John Wiegley  <johnw@newartisans.com>
15705         Merge from origin/emacs-25
15707         aae436e Uncomment the next-error-function integration in xref
15708         5f0d096 Remove the word "valid", to avoid ambiguity
15710 2016-03-03  John Wiegley  <johnw@newartisans.com>
15712         Merge from origin/emacs-25
15714         5a44bfe Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
15715         0d60bfc Fix ModelSim error parsing
15717 2016-03-03  John Wiegley  <johnw@newartisans.com>
15719         Merge from origin/emacs-25
15721         b13cab6 Add a eww command to toggle paragraph direction
15722         4e46128 * nextstep/WISHLIST: Merge into etc/TODO and remove.
15723         9e078e5 Fix char signedness issue in bidi code
15724         064adf6 * lib-src/pop.c (socket_connection): Fix format string.
15725         14060a9 Avoid inflooping in thing-at-point-looking-at
15726         098d47b * lisp/emacs-lisp/derived.el (define-derived-mode): Revert
15727                 indent change.
15728         b5db8e0 etc/PROBLEMS: Mention problems with using file descriptors
15729         ec10ef9 * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
15730         d2dd614 Remove unneeded workaround in xftfont.c
15731         9b7593c ; * etc/NEWS: Reflect latest changes in saveplace.
15732         fde0cd1 * lisp/saveplace.el (save-place-local-mode): New minor mode
15733         06a872b Fix redisplay on a TTY after 'make-frame'
15734         95f5a43 Make double-click-1 work with unbalanced parens in CC Mode.
15735                 Fixes bug#5560.
15736         7d206fc Input method polish-slash should not use keyboard translation
15737         8be32cf Fix an assertion
15738         040e0d6 Fix 'toggle-save-place'
15739         5244db2 * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
15741 2016-03-03  John Wiegley  <johnw@newartisans.com>
15743         Merge from origin/emacs-25
15745         e6a3819 Update HISTORY section in readme for the NextStep interface.
15746         f67f1ed ; * doc/lispref/modes.texi (Font Lock Basics): Minor rewording.
15747         7c81a0b Improve documentation of 'save-place-mode'
15748         cab3f0a Allocate glyph matrices for the initial frame
15749         e01c72f Fix white space in last checkin
15750         370eb67 Make `insert-pair' always leave the cursor where documented
15751         b594393 etc/NEWS: Mention the new second parameter to `package-install'
15753 2016-03-03  John Wiegley  <johnw@newartisans.com>
15755         Merge from origin/emacs-25
15757         bd58c13 Improve documentation of focus-related hooks
15758         00a4720 Further improve doc string of 'disable-point-adjustment'
15759         c582def Further adaptions in file-notify-tests.el for w32notify
15760         a1585e1 Don't bug out on localised dates in gnus-icalendar
15762 2016-03-03  John Wiegley  <johnw@newartisans.com>
15764         Merge from origin/emacs-25
15766         7bc4820 Make setf for frame-height/width work again
15768 2016-03-03  John Wiegley  <johnw@newartisans.com>
15770         Merge from origin/emacs-25
15772         6620944 (cl-union): Do not ignore :test argument when lists are equal.
15773         17dd3fb Add `isearch' to `basic-faces'
15774         c1ec743 Make $, : and @ "prefix characters" in ruby-mode
15775         e72a26e Make find-tag-default-bounds more strict
15776         1bc0e0a Minor fixes in filenotify.el
15778 2016-03-02  Alain Schneble  <a.s@realize.ch>
15780         Fix issue of inserting images on some systems
15782         * lisp/net/shr.el (shr-tag-img): Construct a non-empty range
15783         to pass to shr-image-fetched, to indicate where to insert the
15784         image.  Fixes the issue introduced with commit
15785         80852f843e69b81618f29cfb9aa4b074946cb3c4
15786         (bug#22789).
15788 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15790         Ensure TLS negotiation progress
15792         * src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the
15793         number of retries so that we try for about a minute.
15795         * src/process.c (wait_reading_process_output): Ensure progress
15796         for DNS resolution and TLS negotiation.
15798 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15800         emacs-module.h slight simplification
15802         * src/emacs-module.c (emacs_init_function, emacs_subr): Move here ...
15803         * src/emacs-module.h: ... from here, as they don’t need to be public.
15804         (enum emacs_arity): Remove useless enum tag.  The enum value is
15805         used in ptrdiff_t contexts.
15807         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15809 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15811         * src/emacs-module.c (CHECK_USER_PTR): Fix typo in previous change.
15813 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15815         emacs-module.c simplification and tuneup
15817         * src/emacs-module.c (CHECK_USER_PTR): New function.
15818         (module_get_user_ptr, module_set_user_ptr)
15819         (module_get_user_finalizer, module_set_user_finalizer): Use it.
15820         (module_make_global_ref, module_copy_string_contents)
15821         (module_make_string, module_vec_set, module_vec_get): Omit
15822         unnecessary runtime tests.  For example, vector sizes are always
15823         fixnums, so we don’t need to test that they are in fixnum range.
15825 2016-03-02  Philipp Stephani  <phst@google.com>
15827         Use standard checks whenever possible.
15829         This is possible in all functions where we catch signals anyway.
15831         * src/emacs-module.c (module_make_global_ref, module_funcall)
15832         (module_copy_string_contents, module_make_string): Use xsignal0
15833         and CHECK macros for argument checks.
15835 2016-03-02  Paul Eggert  <eggert@cs.ucla.edu>
15837         Deterministic build improvements
15839         * configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP,
15840         and negate its sense.  Use it via AC_SUBST, not AC_DEFINE,
15841         and have its value be either empty or --no-build-details.
15842         All uses changed.  Change option to --disable-build-details.
15843         * doc/emacs/cmdargs.texi (Initial Options):
15844         Document --no-build-details.
15845         * doc/lispref/internals.texi (Building Emacs):
15846         * etc/NEWS:
15847         Document --disable-build-details.
15848         * doc/lispref/intro.texi (Version Info): Say that
15849         emacs-build-time can be nil.
15850         * lisp/erc/erc-compat.el (erc-emacs-build-time):
15851         Now nil if details are omitted.
15852         * lisp/erc/erc.el (erc-cmd-SV):
15853         * lisp/version.el (emacs-build-time):
15854         Now nil if no build details.
15855         (emacs-version):
15856         Output build time only if build details.
15857         * src/Makefile.in (BUILD_DETAILS): New macro.
15858         (temacs, bootstrap-emacs): Use it.
15859         * src/emacs.c (build_details): New var.
15860         (standard_args, main): Support --no-build-details.
15861         (Vdeterministic_dump): Remove; all uses replaced
15862         by !build_details.
15863         (syms_of_emacs): Set Vbuild_details to a boolean, not
15864         to a Lisp_Object.
15865         * src/lisp.h (build_details): New decl.
15866         * src/sysdep.c (init_system_name): When !build_details,
15867         set system-name to nil, not to "elided".
15869 2016-03-02  Philipp Stephani  <phst@google.com>
15871         Remove build system name from deterministic dumps
15873         * configure.ac (DETERMINISTIC_DUMP): New configuration option.
15874         * lisp/version.el (emacs-build-time): Add a comment to make the
15875         build time deterministic if requested.
15876         (emacs-build-system): Make variable deterministic if requested.
15877         * src/emacs.c (main): Initialize `deterministic-dump' from the
15878         configuration option.
15879         (syms_of_emacs): New constant `deterministic-dump'.
15880         * src/sysdep.c (init_system_name): Use a constant
15881         if a deterministic dump is requested.
15883 2016-03-02  Lars Ingebrigtsen  <larsi@gnus.org>
15885         Remove buggy parse-time test
15887         * test/lisp/calendar/parse-time-tests.el (parse-time-tests):
15888         Remove the iso parse test, since it doesn't work.
15890 2016-03-01  Paul Eggert  <eggert@cs.ucla.edu>
15892         * src/syntax.c (syntax_multibyte): Omit unnecessary parens.
15894 2016-02-29  Glenn Morris  <rgm@gnu.org>
15896         * lisp/emacs-lisp/autoload.el (autoload-timestamps):
15897         Experiment with setting to nil.
15899 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15901         Make the revert command in timer-list-mode work
15903         * lisp/emacs-lisp/timer-list.el (timer-list): Make the revert
15904         command work.
15906 2016-02-29  Glenn Morris  <rgm@gnu.org>
15908         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
15909         Fix 6-week old merge error.
15911         * lisp/emacs-lisp/autoload.el (update-file-autoloads):
15912         Ensure timestamps.
15914         * lisp/emacs-lisp/package.el (package-generate-autoloads):
15915         Disable timestamps.
15917 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15919         Allow binding `url-mime-accept-string'
15921         * lisp/url/url-http.el (url-http): Allow binding
15922         `url-mime-accept-string' (bug#22855).
15924 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15926         Add a NEWS entry for the colorful VC indicator
15928 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15930         Use colors in the VC mode lines
15932         * lisp/vc/vc-hooks.el: Make the mode line faces default to
15933         using colors to more clearly tell the user what the status is.
15935 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15937         Support <bdo> and <bdi>
15939         * lisp/net/shr.el (shr-tag-bdo): New function.
15940         (shr-tag-bdi): Ditto.
15942 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15944         Respect <html dir=auto>
15946         * lisp/net/shr.el (shr-tag-html): Respect the "auto"
15947         directional HTML setting.
15949 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
15951         Default bidi paragraph direction to nil
15953         * lisp/net/eww.el (eww-display-html): Default bidi rendering
15954         to nil, so that possibly more Arabic web pages render
15955         correctly (bug#22786).
15956         (eww-setup-buffer): Ditto.
15958 2016-02-29  Mathias Dahl  <mathias.dahl@gmail.com>
15960         Preserve current column, going up/down in thumbnail view.
15962 2016-02-29  Alan Mackenzie  <acm@muc.de>
15964         Handle "noise" macros and compiler directives.
15966         * lisp/progmodes/cc-langs.el (c-symbol-char-key): New language variable.
15968         * lisp/progmodes/cc-vars.el (c-noise-macro-names)
15969         (c-noise-macro-with-parens-names): New customizable variables.
15970         (c-noise-macro-name-re, c-noise-macro-with-parens-name-re): New variables.
15971         (c-make-noise-macro-regexps): New function.
15973         * lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Adapt to treat
15974         members of c-noise-macro-names as whitespace.
15975         (c-forward-noise-clause): New function.
15976         (c-forward-keyword-prefixed-id, c-forward-type, c-forward-declarator)
15977         (c-forward-decl-or-cast-1, c-backward-over-enum-header)
15978         (c-guess-basic-syntax CASE 5A.3, CASE 5A.5, CASE 9A):
15979         Handle "noise clauses" in parallel with, e.g., "hangon key clauses".
15981         * lisp/progmodes/cc-fonts.el (c-complex-decl-matchers): Handle "noise clauses"
15982         in parallel with "prefix-spec keywords".
15984         * lisp/progmodes/cc-mode.el (c-mode, c++-mode, objc-mode): call
15985         c-make-noise-macro-regexps to initialize the internal variables.
15987         * doc/misc/cc-mode.texi ("Noise Macros"): New section documenting the new
15988         facilities.
15990 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
15992         Stop calling res_init
15994         Emacs shouldn’t need to call res_init any more, now that nscd or
15995         equivalent is everywhere.  On modern systems, calling res_init
15996         simply slows Emacs down.  On ancient systems lacking nscd Emacs
15997         will still work well enough with this change; it’s just that it
15998         won’t respond to changes in /etc/resolv.conf.
15999         * configure.ac (HAVE_RES_INIT): Remove.  Worry about -lresolv only
16000         when configured --with-hesiod.  Hesiod is still used; see, e.g.:
16001         https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214
16002         * src/Makefile.in (LIBRESOLV): Remove.  All uses removed.
16004 2016-02-29  Glenn Morris  <rgm@gnu.org>
16006         * lisp/progmodes/grep.el (grep-save-buffers): Fix type, tweak doc.
16008         * lisp/progmodes/grep.el (grep-save-buffers): Don't autoload defcustoms.
16010 2016-02-29  Paul Eggert  <eggert@cs.ucla.edu>
16012         * src/process.c (Fdelete_process): Simplify cast.
16014 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
16016         Use the correct background color when filling nested <divs>
16018         * lisp/net/shr.el (shr-face-background): Return the first
16019         background, because that's the one that's visible (bug#22680).
16021 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16023         Make <div> in <li> not insert extra newlines
16025         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
16026         extra newlines (bug#19587).
16028 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16030         Allow reading Gnus reports from an offline cache
16032         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-bug-group):
16033         Allow reading bug reports from an offline cache directory.
16035 2016-02-28  Tino Calancha  <f92capac@gmail.com>
16037         Meta + shift + Fn combos are recognized by xterm>=216.
16039         * lisp/term/xterm.el (xterm-alternatives-map): Meta + shift +
16040         Fn combos are recognized by xterm>=216 (bug#22837).
16042 2016-02-28  Simen Heggestøyl  <simenheg@gmail.com>
16044         Declare $ as an expression prefix in SCSS
16046         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16047         expression prefix (bug#22841).
16049 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16051         Revert "Declare $ as an expression prefix in SCSS"
16053         This reverts commit ffb33264f21e8af60b8055c47baffcf0f6c300df.
16055         Revering to fix author name.
16057 2016-02-28  Simen  <simenheg@gmail.com>
16059         Declare $ as an expression prefix in SCSS
16061         * lisp/textmodes/css-mode.el (scss-mode-syntax-table): Declare $ as an
16062         expression prefix (bug#22841).
16064 2016-02-28  Hugh Brown  <aardvark@saintaardvarkthecarpeted.com>
16066         Save buffers before running grep commands
16068         * lisp/progmodes/grep.el (grep-ask-about-save): New variable (bug#96).
16069         (grep, lgrep, rgrep): Use it (bug#96).
16071         * doc/emacs/building.texi (Grep Searching): Document
16072         `grep-save-buffers'.
16074         * lisp/progmodes/grep.el (grep-save-buffers): Rename from
16075         `grep-ask-about-save'.
16076         (grep--save-buffers): New function.
16077         (grep, lgrep, rgrep): Use it.
16079 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16081         Allow sorting flyspell corrections
16083         * lisp/textmodes/flyspell.el (flyspell-sort): New function (bug#2405).
16084         (flyspell-sort-corrections-functionx): New variable.
16085         (flyspell-sort-corrections-alphabetically): New function.
16086         (flyspell-notify-misspell): Use them.
16087         (flyspell-auto-correct-word): Ditto.
16088         (flyspell-emacs-popup): Ditto.
16089         (flyspell-xemacs-popup): Ditto.  Suggested by Sebastien Delafond.
16091 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16093         Wait for async DNS to complete before freeing resources
16095         * src/process.c (Fdelete_process): Wait for async DNS to
16096         complete before freeing the data structures it needs.
16098 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
16100         * lisp/faces.el: Remove duplicated functions from previous patch.
16102 2016-02-28  Eli Zaretskii  <eliz@gnu.org>
16104         Fix TLS connections on MS-Windows
16106         * src/w32.c (sys_write): If 'send' returns with WSAENOTCONN, and
16107         this is a non-blocking socket whose connection is in progress, set
16108         errno to EWOULDBLOCK, as expected by GnuTLS and other callers.
16109         Avoid overwriting the errno value from 'send' by 'ioctlsocket'.
16110         Suggested by Alain Schneble <a.s@realize.ch>.  (Bug#22789)
16112 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16114         Add a NEWS entry for the read-color change
16116 2016-02-27  Jan Moringen  <jan.moringen@uni-bielefeld.de>
16118         Show the face colours when completing in `read-color'
16120         * lisp/faces.el (defined-colors-with-face-attributes): New function.
16121         (readable-foreground-color, defined-colors-with-face-attributes)
16122         (readable-foreground-color): Ditto.
16123         (read-color): Use them (bug#5305).
16125 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16127         Clean up the code in parse-time-string-chars
16129         * lisp/calendar/parse-time.el (parse-time-string-chars):
16130         Clean up the code a bit.
16132 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16134         Add some tests for parse-time.el
16136         * test/lisp/calendar/parse-time-tests.el: New file.
16138 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16140         Strip out some leading whitespace when looking at logs
16142         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): When looking
16143         at expanded git logs with `vc-print-root-log' (C-x v L, then
16144         <enter> by default), Emacs was stripping out all leading
16145         whitespace from git logs.  I now strip exactly 2 leading
16146         spaces, which retains the indentation in the logs (bug#18110).
16148 2016-02-27  Dima Kogan  <dima@secretsauce.net>
16150         Use a separate history variable for align-regexp
16152         * lisp/align.el (align-regexp-history): New variable (bug#16891).
16153         (align-regexp): Use it.
16155 2016-02-27  Phil Sung  <philbert@gmail.com>
16157         Create subdirectories automatically in wdired
16159         * lisp/wdired.el (wdired-create-parent-directories): New
16160         variable (bug#6817).
16161         (wdired-create-parentdirs): New function.
16162         (wdired-do-renames): Use it.
16163         * doc/emacs/dired.texi (Wdired): Mention
16164         `wdired-create-parent-directories'
16166 2016-02-27  Lars Ingebrigtsen  <larsi@gnus.org>
16168         Return the correct error values from gnutls.c
16170         * src/gnutls.c (emacs_gnutls_read): Set errno to the value
16171         expected by process.c.
16172         (gnutls_try_handshake): Set gnutls_p to true earlier to avoid
16173         possible race condition with the process.c socket polling
16174         functions.
16176 2016-02-27  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16178         Don't make assumptions about mkdir.  (Bug#22822)
16180         * test/Makefile.in (MKDIR_P): New, set by configure.
16181         (%.log): Use MKDIR_P.
16183 2016-02-27  Alexander Kuleshov  <kuleshovmail@gmail.com>
16185         Support switching to hexl-mode from image-mode
16187         * lisp/image-mode.el (image-toggle-hex-display)
16188         (image-mode-to-text): New functions.
16189         (image-mode-map, image-minor-mode-map): Bind "C-c C-x" to
16190         image-toggle-hex-display.
16191         (image-mode-map): New menu item "Show as Hex".
16192         (image-mode): Update doc string and echo-area message.
16193         (image-toggle-display): Support toggle to hex.  (Bug#22453)
16195         * doc/emacs/files.texi (File Conveniences): Document
16196         'image-toggle-hex-display'.
16198 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
16200         Remove unused code in coding.c
16202         * src/coding.c (decode_eol): Remove unused code that handled the
16203         case of coding->dst_object being nil.  Replace it with an
16204         assertion.
16206 2016-02-26  Aurelien Aptel  <aaptel@suse.com>
16208         * src/syntax.c: Fix result of syntax_multibyte()
16210         The ?: operator has a lower precedence than ||.
16211         Bug introduced by commit 45b683a.
16213 2016-02-26  Paul Eggert  <eggert@cs.ucla.edu>
16215         --enable-gcc-warnings now uses -Wjump-misses-init
16217         When configuring with --enable-gcc-warnings, also enable
16218         -Wjump-misses-init, as it’s confusing to use a goto to skip over
16219         an initialization.  Fix the few places in the code that run afoul
16220         of this warning.
16221         * configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
16222         * src/doc.c (Fsubstitute_command_keys):
16223         * src/image.c (svg_load_image):
16224         * src/regex.c (re_match_2_internal):
16225         * src/xdisp.c (redisplay_internal, redisplay_window):
16226         Don’t jump over initialization.
16228 2016-02-26  Jussi Lahdenniemi  <jussi@aprikoodi.fi>
16230         Improve the register-hotkey functionality on MS-Windows
16232         * src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
16233         keyboard hook functionality.
16234         Include w32inevt.h, basetyps.h and unknwn.h.
16235         (VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
16236         (kbdhook): A new struct definition.
16237         (funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
16238         (check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
16239         (modifier_set): Call check_w32_winkey_state if a Win key was
16240         pressed and the keyboard hook is active.
16241         (w32_wnd_proc): Don't handle Win key combinations if the keyboard
16242         hook is active.  Only register/unregister the hotkeys if the
16243         keyboard hook is not active.  When WM_CREATE is received, call
16244         setup_w32_kbdhook.  When WM_DESTROY is received, call
16245         reset_w32_kbdhook_state.
16246         (lookup_vk_code): When the keyboard hook is active, map
16247         alphanumeric characters to themselves.
16248         (w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key.  Map
16249         modified keys to VK_ANY if the keyboard hook is active.  Register
16250         Alt-x and Win-x combinations.
16251         (Fw32_shell_execute): Update doc string to reflect new
16252         functionality.  Bypass the code that posts the
16253         WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
16254         (Fw32_unregister_hot_key): Bypass the code that posts the
16255         WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
16256         (syms_of_w32fns) <w32-pass-lwindow-to-system>
16257         <w32-pass-rwindow-to-system, w32-phantom-key-code>
16258         <w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
16259         to reflect the new functionality.
16260         * src/w32console.c (initialize_w32_display): Install the low-level
16261         keyboard hook.
16262         * src/w32inevt.c (key_event): Handle Win-x combinations only if
16263         the keyboard hook is not active.  If the hook is active, use
16264         check_w32_winkey_state instead.
16265         * src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
16266         (check_w32_winkey_state): Add prototypes.
16267         (w32_kbdhook_active): New macro.
16269         * doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
16270         new functionality.
16272 2016-02-25  Aaron S. Hawley  <aaron.s.hawley@gmail.com>
16274         Add forward-sexp (and related) tests
16276         * test/lisp/emacs-lisp/lisp-tests.el: New file for testing
16277         forward-sexp and related functions (bug#22800).
16279 2016-02-25  Jan Tatarik  <jan.tatarik@gmail.com>
16281         Don't use (localised) week days in dates
16283         * lisp/gnus/gnus-icalendar.el
16284         (gnus-icalendar-event:org-timestamp): Don't use (localised)
16285         week days in the dates, because that messes up things later.
16287 2016-02-25  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16289         Update pcomplete/find
16291         * lisp/pcmpl-gnu.el (pcomplete/find): Update to newest version
16292         (bug#10487).
16294 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16296         Make parse-time-string-chars more efficient
16298         * lisp/calendar/parse-time.el (parse-time-string-chars): The
16299         string has already been downcase, so don't care about case
16300         (bug#18522).
16302 2016-02-25  Lars Ingebrigtsen  <larsi@gnus.org>
16304         Remove killed buffers from the list of Gnus buffers
16306         * lisp/gnus/gnus.el (gnus-prune-buffers): Remove killed
16307         buffers from the list of Gnus buffers (bug#18522).
16309 2016-02-25  Paul Eggert  <eggert@cs.ucla.edu>
16311         Integer overflow cleanups for ports and socklen
16313         * src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
16314         (get_lisp_to_sockaddr_size, Fset_process_datagram_address)
16315         (connect_network_socket):
16316         Use ptrdiff_t, not int, for signed object sizes.
16317         This addresses only a theoretical problem, as in practice these
16318         object sizes are less than 2**31, but we might as well use the
16319         same style here as elsewhere in Emacs.
16320         (string_integer_p): Remove; all uses removed.
16321         (Fmake_network_process): Check that port number is in range.
16322         When converting an integer-string service, rely on strtol
16323         rather than rechecking the string by hand.
16324         * src/process.h, src/w32.c (conv_sockaddr_to_lisp):
16325         Adjust prototypes to match.
16327 2016-02-24  Thierry Volpiatto  <thierry.volpiatto@gmail.com>
16329         Add pcomplete support for find
16331         * lisp/pcmpl-gnu.el (pcomplete/find): Add pcomplete support
16332         for find (bug#10487).
16334 2016-02-24  Per Starbäck  <starback@stp.lingfil.uu.se>
16336         Replace XXX acronyms with draft standard ones
16338         * lisp/international/characters.el (c1-acronyms): Replace XXX
16339         entries with the acronyms PAD, HOP, SGCI from draft DIS 10646
16340         (bug#13745).
16342 2016-02-24  Kevin Ryde  <user42@zip.com.au>
16344         Make checkdoc warn about variables described as "True"
16346         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
16347         Docstrings for variables "True...", and functions "Return
16348         true...", should usually be "non-nil" (bug#15506).
16350 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16352         Add NEWS entry for "number string" change
16354 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
16356         Allow using "number strings" as services on non-GNU systems
16358         * src/process.c (string_integer_p): New function.
16359         (Fmake_network_process): Use it to allow connecting to
16360         services specified as "993" even when getaddrbyname isn't
16361         available.
16363 2016-02-24  Michael Albinus  <michael.albinus@gmx.de>
16365         Fix problem in tramp.texi
16367         * doc/misc/tramp.texi (File name completion): Do not use
16368         @trampfn{} for IPv6 addresses.  Somehow, it results in errors
16369         during PDF creation.
16371 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16373         Make image commands available in image-mode
16375         * lisp/image-mode.el (image-mode-map): Inherit from
16376         `image-map' so that the usual image commands work.
16378 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16380         Move `o' to `O' in shr-map
16382         * lisp/net/shr.el (shr-map): `shr-save-contents' has moved
16383         from `o' to `O' to avoid collisions with `image-map'.
16385 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16387         Make setting the coding system non-blocking
16389         * src/process.c (Fset_process_filter_multibyte): Defer
16390         completing coding system setup in asynchronous processes.
16391         (Fset_process_coding_system): Ditto.
16393 2016-02-23  Gregoire Jadi  <daimrod@gmail.com>
16395         Mention `proced-toggle-auto-update' in the proced-mode doc string
16397         * lisp/proced.el (proced-mode): Mention
16398         `proced-toggle-auto-update' (bug#14341).
16400 2016-02-23  Joshua Datko  <jbdatko@gmail.com>  (tiny change)
16402         Add a fortune-message command
16404         * lisp/play/fortune.el (fortune-message): Add a command to
16405         display fortunes in the echo area (bug#14915).
16407 2016-02-23  Susanne Oberhauser  <froh@suse.com>  (tiny change)
16409         Add hideshow bindings analogous to outline mode
16411         * lisp/progmodes/hideshow.el (hs-minor-mode-map): Add bindings
16412         analogous to outline mode bindings (bug#15324).
16414 2016-02-23  Bastien Guerry  <bzg@altern.org>
16416         Allow highlighting things like @math{2^{12}}
16418         * lisp/textmodes/texinfo.el (texinfo-font-lock-keywords):
16419         Allow highlighting things like @math{2^{12}} (bug#16390).
16421 2016-02-23  Per Bothner  <per@bothner.com>
16423         Make `C-{up,down,left,right}' work in term mode
16425         * lisp/term.el (term-raw-map): Define C-{up,down,left,right}
16426         to send the same escape sequence that xterm sends.  This makes
16427         backward-word and forward-word work in readline (bug#16746).
16429 2016-02-23  Dima Kogan  <dima@secretsauce.net>
16431         Allow ff-find-other-file (etc) to work with indirect clone buffers
16433         * lisp/find-file.el (ff-buffer-file-name): New function to
16434         allow the feature to work with indirect buffers, too
16435         (bug#16904).
16436         (ff-find-the-other-file): Use it.
16437         (ff-other-file-name): Ditto.
16438         (ff-get-file-name): Ditto.
16440 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16442         Fix error in add-change-log-entry when the entry has no newline
16444         * lisp/vc/add-log.el (add-change-log-entry): The entry in the
16445         ChangeLog may end without a new line starting with blanks.
16447 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16449         Avoid using mm-util functoins in gravatar.el
16451         * lisp/image/gravatar.el (gravatar-retrieve): Avoid using
16452         mm-util functions.
16453         (gravatar-retrieve-synchronously): Ditto.
16455 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16457         Move low-level library files from the lisp/gnus directory
16459         The files moved from lisp/gnus are:
16461         auth-source.el -> /
16462         compface.el -> /image
16463         ecomplete.el -> /
16464         flow-fill.el -> /mail
16465         gravatar.el -> /image
16466         gssapi.el -> /net
16467         html2text.el -> /net
16468         ietf-drums.el -> /mail
16469         mail-parse.el -> /mail
16470         mail-prsvr.el -> /mail
16471         mailcap.el -> /net
16472         plstore.el -> /
16473         pop3.el -> /net
16474         qp.el -> /mail
16475         registry.el -> /
16476         rfc1843.el -> /international
16477         rfc2045.el -> /mail
16478         rfc2047.el -> /mail
16479         rfc2231.el -> /mail
16480         rtree.el -> /
16481         sieve-manage.el -> /net
16482         sieve-mode.el -> /net
16483         sieve.el -> /net
16484         starttls.el -> /net
16485         utf7.el -> /international
16486         yenc.el -> /mail
16488 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16490         Allow undoing changes while doing query-replace
16492         * doc/lispref/searching.texi (Search and Replace): Mention
16493         undo (bug#21684).
16495         * lisp/replace.el (query-replace-help): Document undo.
16496         (perform-replace): Implement undo while replacing text.
16498 2016-02-23  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
16500         Highlight assignments in Makefiles more correctly
16502         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
16503         Highlight assignments preceded by a TAB character correctly
16504         (bug#20787).
16506 2016-02-23  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
16508         Use memmove instead of memcpy on overlapping regions
16510         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
16511         use memmove instead of memcpy (bug#19213).
16513 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16515         Port to --enable-gcc-warnings sans getaddrinfo_a
16517         * src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
16518         to a local unused when getaddrinfo_a is missing.
16519         Resize portbuf to size needed.  Do cheap test first.
16520         Move local to block where it’s needed.
16522 2016-02-23  Paul Eggert  <eggert@cs.ucla.edu>
16524         Minor cleanups for async DNS etc.
16526         * src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
16527         Omit unnecessary parens.
16528         * src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
16529         (gnutls_verify_boot):
16530         Use bool for boolean.
16531         (ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
16532         * src/process.c (free_dns_request, Fmake_network_process):
16533         Allocate and free async request control block all in one go.
16534         (set_network_socket_coding_system, finish_after_tls_connection)
16535         (connect_network_socket):
16536         Now static.
16537         (conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
16538         (Fmake_network_process): Use list1 for brevity.
16539         (wait_for_socket_fds): 2nd arg is now const ptr.
16540         * src/process.h (struct Lisp_Process.dns_request):
16541         Now struct gaicb *, not struct gaicb **, since there was always
16542         exactly one.  All uses changed.
16543         * src/window.c, src/window.h (run_window_configuration_change_hook):
16544         Now static.
16546 2016-02-23  Carlos Pita  <carlosjosepita@gmail.com>
16548         Allow more shell script defun forms
16550         * lisp/progmodes/sh-script.el (sh-mode): Allow more shell
16551         script defun forms, like function name () {...} (bug#19754).
16553 2016-02-23  Martin Rudalics  <rudalics@gmx.at>
16555         Fix `window-configuration-change-hook' and `window-size-change-functions'
16557         (1) Run `window-configuration-change-hook' if and only if at least
16558         one window was deleted or created or shows another buffer since
16559         last redisplay.
16561         (2) Run `window-size-change-functions' if and only if at least
16562         one window changed its size since last redisplay (in a few cases
16563         `window-size-change-functions' will also run when no window
16564         changed its size).
16566         (3) Provide two functions `window-pixel-height-before-size-change'
16567         and `window-pixel-width-before-size-change' that allow to easily
16568         detect which window changed size.
16570         * src/frame.h (struct frame): New boolean member
16571         window_configuration_changed.
16572         (FRAME_WINDOW_SIZES_CHANGED): Remove macro.
16573         (FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
16574         * src/frame.c (adjust_frame_size): Don't run
16575         `window-configuration-change-hook'.
16576         * src/window.h (struct window): New fields
16577         pixel_width_before_size_change and pixel_height_before_size_change.
16578         (WINDOW_INTERNAL_P): New macro.
16579         * src/window.c (Fwindow_pixel_width_before_size_change)
16580         (Fwindow_pixel_height_before_size_change): New functions.
16581         (Fdelete_other_windows_internal, Fwindow_resize_apply)
16582         (resize_frame_windows, Fsplit_window_internal)
16583         (Fdelete_window_internal, grow_mini_window)
16584         (shrink_mini_window, Fresize_mini_window_internal): Don't call
16585         FRAME_WINDOW_SIZES_CHANGED.
16586         (window_size_changed, window_set_before_size_change_sizes)
16587         (run_window_size_change_functions): New functions.
16588         (make_window): Initialize pixel_width_before_size_change and
16589         pixel_height_before_size_change.
16590         (Fdelete_window_internal): Don't call
16591         run_window_configuration_change_hook.
16592         (struct saved_window): Add pixel_height_before_size_change and
16593         pixel_width_before_size_change.
16594         (Fset_window_configuration): Try to identify window configuration
16595         changes correctly so run_window_configuration_change_hook and
16596         run_window_size_change_functions run only if configuration and size
16597         really changed.
16598         (save_window_save): Set the pixel_height_before_size_change and
16599         pixel_width_before_size_change fields.
16600         (Vwindow_size_change_functions): Move here definition from xdisp.c.
16601         * src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
16602         run_window_size_change_functions.
16603         (Vwindow_size_change_functions): Move definition to window.c.
16604         * src/xfns.c (x_set_menu_bar_lines): Don't call
16605         run_window_configuration_change_hook.
16606         * doc/lispref/windows.texi (Window Sizes): Document new
16607         functions `window-pixel-height-before-size-change' and
16608         `window-pixel-width-before-size-change'.
16609         (Window Configurations): Mention that this may trigger
16610         execution of `window-size-change-functions' although no window
16611         changed size.
16612         (Window Hooks): Update descriptions of `window-size-change-functions'
16613         and `window-configuration-change-hook'.
16615 2016-02-23  Drew Adams  <drew.adams@oracle.com>
16617         (ls-lisp-insert-directory): Make -B work
16619         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
16620         (bug#20776).
16622 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16624         Fix typo in message-setup-fill-variables
16626         * lisp/gnus/message.el (message-setup-fill-variables): Fix
16627         typo in a recent checkin that used `setq-default' instead of
16628         `setq-local' (bug#22781).
16630 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16632         `message-dont-reply-to-names' can also be a list of regexps
16634         * lisp/gnus/message.el (message-dont-reply-to-names):
16635         `message-dont-reply-to-names' can also be a list of regexps (bug#22773).
16637 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
16639         Make buttons in header lines work
16641         * lisp/help-mode.el (help-button-action): `help-xref-button' in
16642         header line doesn't work (bug#21024).
16644 2016-02-23  Vasilij Schneidermann  <v.schneidermann@gmail.com>
16646         Place apples randomly in Snake
16648         * lisp/play/snake.el (snake-score): New variable (bug#21359).
16649         (snake-set-dot): Place the apples randomly.
16651 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16653         Allow optional parameter to be nil
16655         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Allow the
16656         optional parameter to be nil (bug#21576).
16658 2016-02-23  Tino Calancha  <f92capac@gmail.com>
16660         Completely ignore buffers with no name when copying file names
16662         * lisp/ibuf-ext.el (ibuffer-copy-filename-as-kill): Completely
16663         ignore buffers with no file name. (bug#21577).
16665 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16667         Make spelling of "Eshell" consistent
16669         * lisp/eshell/esh-mode.el (eshell-mode): Spell it "Eshell".
16670         * lisp/eshell/eshell.el (eshell-command):
16671         Spell it "Eshell" (bug#21678).
16673 2016-02-23  Simen Heggestøyl  <simenheg@gmail.com>
16675         Allow pretty lambdas in Scheme mode
16677         * lisp/progmodes/scheme.el (scheme-mode-variables): Borrow
16678         `prettify-symbols-alist' from Lisp mode (bug#21679).
16680 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16682         Rename lisp--prettify-symbols-alist
16684         * lisp/emacs-lisp/lisp-mode.el (lisp-prettify-symbols-alist):
16685         Rename from `lisp--prettify-symbols-alist' since we're going
16686         to use it in Scheme mode, too.
16687         (lisp-mode-variables): Use it.
16689 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>  (tiny change)
16691         Remove spurious newline in package list
16693         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16694         spurious newline (bug#21706).
16696 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
16698         Revert "Remove spurious newline in package list"
16700         This reverts commit fad14c289d36a2c61e0fd34105ebb1f62c80d71d.
16702 2016-02-23  Chunyang Xu  <xuchunyang56@gmail.com>
16704         Remove spurious newline in package list
16706         * lisp/emacs-lisp/package.el (describe-package-1): Remove
16707         spurious newline (bug#21706).
16709 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16711         Keep the position in the process buffer when deleting processes
16713         * lisp/simple.el (process-menu-delete-process): Keep the
16714         position in the buffer after killing a process (bug#21759).
16716 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16718         Require that the buffer that we're trying to patch exist
16720         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16721         buffer that we're trying to patch exist (bug#21852).
16723 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16725         Require that the buffer that we're trying to patch exist
16727         * lisp/vc/ediff.el (ediff-patch-buffer): Require that the
16728         buffer that we're trying to patch exist (bug#21852).
16730 2016-02-22  Tino Calancha  <f92capac@gmail.com>  (tiny change)
16732         Be more verbose when changing frame mode in ediff
16734         * lisp/vc/ediff-util.el (ediff-toggle-multiframe): Say what
16735         mode we toggled to (bug#21853).
16737 2016-02-22  Łukasz Stelmach  <stlman@poczta.fm>
16739         Encode header strings before printing
16741         * lisp/ps-print.el (ps-generate-header-line): Encode the
16742         header strings to avoid problems with non-ASCII headers
16743         (bug#22611).
16745 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16747         Test message-strip-subject-trailing-was
16749         * test/lisp/gnus/message-tests.el (message-strip-subject-trailing-was):
16750         New test (bug#22632).
16752 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16754         Make use of the `ert-with-function-mocked' macro
16756         * test/lisp/calendar/icalendar-tests.el (icalendar--create-uid):
16757         * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9781): Use
16758         `ert-with-function-mocked' instead of implementing the fragile
16759         `unwind-protect' logic openly.
16761 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16763         message-strip-subject-trailing-was: Refactor
16765         * lisp/gnus/message.el (message-strip-subject-trailing-was): Refactor
16766         the function replacing sequence of `if' calls with a mixture of `or'
16767         and `and' calls instead.  This makes it shorter and containing less
16768         internal state thus easier to follow.
16770 2016-02-22  Michal Nazarewicz  <mina86@mina86.com>
16772         ert-with-function-mocked: New macro
16774         * lisp/emacs-lisp/ert-x.el (ert-with-function-mocked): New macro which
16775         allows evaluating code while particular function is replaced with
16776         a mock.  The original definition of said function is restored once the
16777         macro finishes.
16779 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16781         Move Gnus functions frm rfc1843 to new file gnus-rfc1843
16783         * lisp/gnus/gnus-rfc1843.el: New file for Gnus/rfc1843
16784         interface functions.
16786         * lisp/gnus/gnus-rfc1843.el: Move all Gnus-specifig functions to
16787         gnus-rfc1843.
16789 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16791         Don't use mm-util functions in qp.el
16793         * lisp/gnus/qp.el (quoted-printable-decode-region): Don't use
16794         mm-util functions.
16795         (quoted-printable-encode-string): Ditto.
16796         (quoted-printable-encode-region): Ditto.
16798 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16800         Don't require mm-util
16802         * lisp/mail/ietf-drums.el (mm-util): Don't require.
16804 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16806         Remove Gnus functions from auth-source.el
16808         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
16809         Remove usage of Gnus utility function.
16810         (mm-util, gnus-util): Don't require.
16812 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16814         Allow deleting all non-matching cookies
16816         * lisp/url/url-cookie.el (url-cookie-delete-cookies): Allow
16817         keeping matching cookies (bug#22720).
16819 2016-02-22  Lars Ingebrigtsen  <larsi@gnus.org>
16821         Make (setf (image-property ...)) return VALUE
16823         * lisp/image.el (image--set-property): Return VALUE, not IMAGE.
16825 2016-02-22  John Wiegley  <johnw@newartisans.com>
16827         Merge from origin/emacs-25
16829         a9c48d5 Additional fixes for file notification
16830         6bd9d69 Fix documentation of 'global-disable-point-adjustment'
16831         8c22ac9 ; Spelling fix
16832         2975784 Set file modes of pinentry socket for extra safety
16833         2667b3e Clarify GnuPG version compatibility chapter
16834         5e34c36 Revert "Change the default socket location for pinentry"
16835         e19c1c3 Kill off xref--display-history
16836         5698947 Keep the xref buffer visible until the user quits it explicitly
16837         e34fbde Change the default socket location for pinentry
16838         5f89658 Mention how to enable pinentry feature
16839         db51224 Sync with gnulib
16840         aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
16841         2d8b2fd Restore point when writing semantic table to disk
16842         27d3430 Mention pinentry.el in epa manual
16843         5baa001 Fix Bug#22736
16844         7261355 Grammar fix in doc string
16845         d0f3b18 Naming fix for consistency
16846         74ec92d Prefer customized value for GnuPG executable
16847         ea0b604 Fix memory reservation on MS-Windows
16848         c5f72aa Update NextStep readme and add wish list.
16849         6de26a7 Report also result in `file-notify--test-event-handler'
16850         5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
16851         1cb1268 Fix todo-mode item date editing bugs
16852         1e996cf Fix "[:upper:]" for non-ASCII characters
16853         896f993 Allow customizing the article mode cursor behavior
16854         24c1c1d Use pop-to-buffer-same-window in woman.el
16855         2a75f64 New filenotify test for bug#22736
16856         c9bccf7 Report critical battery errors
16857         d675db9 Make eww message toggling message clearer
16858         5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
16859         fa8fd65 ; Improve character-folding entries in NEWS
16860         3722a69 Fix bugs in window resizing code
16861         289d5c6 Fix decoding DOS EOL in a unibyte buffer
16862         2abcb06 Correct c-parse-state cache manipulation error.
16863         14aec91 Take advantage of new GnuPG version check function
16864         e80c2a7 Make GnuPG version check robuster
16865         15a9464 Fix x-load-color-file pointer signedness
16866         132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
16867         78ab6f1 Follow convention for greek letter constants.
16868         106b5bb Add Stefan-Boltzmann constant to calc units table.
16869         b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
16870         5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
16871         2d40f7d Fix soffice UserInstallation-URL for Windows
16872         b1a3ebe Fix display of <pre> elements
16873         57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
16874         7a0628d ; * admin/make-tarball.txt: Mention cleaning.
16876 2016-02-22  Oleh Krehel  <ohwoeowho@gmail.com>
16878         lisp/calendar/appt.el (appt-delete-window): Check if buffer is live
16880         * lisp/calendar/appt.el (appt-delete-window): Avoid trying to delete a
16881           non-existing buffer.
16883 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16885         Mention the further asynchronousity
16887 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16889         Fix async TLS boot problem
16891         * src/process.c (wait_reading_process_output): Verify the boot
16892         of the correct process.
16894 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16896         Clean up forgotten text in manual
16898         * doc/lispref/display.texi (Defining Images): Remove example
16899         forgotten when making previous change.
16901 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16903         Clean up debugging code
16905         * src/process.c (Fmake_network_process): Remove debugging printf.
16906         (wait_for_socket_fds, wait_while_connecting)
16907         (wait_for_tls_negotiation): Remove newlines from messages.
16909 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16911         Fix merge conflicts in network-stream-tests.el
16913 2016-02-21  Paul Eggert  <eggert@penguin.cs.ucla.edu>
16915         Port recent filevercmp addition to MS-Windows
16917         Reported by Andy Moreton in:
16918         https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg01302.html
16919         * nt/gnulib.mk (libgnu_a_SOURCES): Add filevercmp.c.
16920         (EXTRA_DIST): Add filevercmp.h.
16922 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16924         add_to_log expects Lisp parameters
16926 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16928         Mention sentinels in conjunction with :nowait t.
16930         * doc/lispref/processes.texi (Network Processes): Mention the
16931         recommended way of using sentinels with :nowait t.
16933 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16935         Mention in the doc strings that process functions may block
16937         (Fprocess_contact, Fprocess_datagram_address)
16938         (Fset_process_datagram_address, Fset_network_process_option)
16939         (Fprocess_send_region, Fprocess_send_string): Mention that the
16940         functions may block.
16941         (Fset_process_coding_system): Ditto.
16943 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16945         Add blocker warnings to the *Messages* buffer
16947         * src/process.c (wait_for_socket_fds): Add warning to the log.
16948         (wait_while_connecting): Ditto.
16949         (wait_for_tls_negotiation): Ditto.
16951 2016-02-21  Lars Ingebrigtsen  <larsi@gnus.org>
16953         Rework the image property getter/setters
16955         * doc/lispref/display.texi (Defining Images): Document the
16956         renamed `image-get/set-property' functions.
16958         * lisp/image.el (image--set-property): Rename from
16959         image-set-property.
16960         (image-property): Declare a setf form.
16961         (image-property): Rename from `image-get-property'.
16963 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
16965         Use Gnulib filevercmp for version comparison
16967         * admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
16968         * doc/lispref/strings.texi (Text Comparison):
16969         * etc/NEWS, src/fns.c:
16970         * test/src/fns-tests.el (fns-tests-string-version-lessp):
16971         Rename newly-introduced function to string-version-lessp, by
16972         analogy with strverscmp.
16973         * lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
16974         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
16975         * src/fns.c: Include <filevercmp.h>.
16976         (gather_number_from_string): Remove.
16977         (Fstring_version_lessp): Reimplement via filevercmp.
16979 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16981         Add a function to delete URL cookies
16983         * doc/misc/url.texi (Cookies): Document
16984         url-cookie-delete-cookies.
16986         * lisp/url/url-cookie.el (url-cookie-delete-cookies): New function.
16988 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16990         Avoid integer overflows in string-numeric-lessp
16992         * src/fns.c (Fstring_numeric_lessp): If we have an integer
16993         overflow, compare lexicographically.
16995 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
16997         Add the string-numeric-lessp function
16999         * doc/lispref/strings.texi (Text Comparison): Document
17000         `string-numerical-lessp'.
17002         * src/fns.c (Fstring_numeric_lessp): New function.
17003         (gather_number_from_string): Helper function for that function.
17005         * test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
17007 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
17009         Clarify levels of :nowait t.
17011         * doc/lispref/processes.texi (Network Processes): Mention
17012         levels of asynchronicity.
17014 2016-02-20  Alain Schneble  <a.s@realize.ch>
17016         Respect DNS timeouts
17018         * src/process.c (check_for_dns): If the async DNS request
17019         failed and the associated process is still in "connect" state,
17020         deactivate the process and set status to "failed".
17022 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17024         Add a frame around the placeholder image in shr
17026         * lisp/net/shr.el (shr-make-placeholder-image): Add a frame
17027         around the image.
17029 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17031         Use placeholder images in shr to avoid text moving around
17033         * lisp/net/shr.el (shr-rescale-image): Pass in width/height
17034         from the HTML.
17035         (shr-tag-img): Ditto.
17036         (shr-string-number): New function.
17037         (shr-make-placeholder-image): Make placeholder images.
17038         (shr-tag-img): Insert them if we have SVG support.
17040 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17042         Get explicit width/height + scale computations right
17044         * src/image.c (compute_image_size): :scale should also be
17045         taken into account when :width and :height are explicitly names.
17047 2016-02-19  Lars Ingebrigtsen  <larsi@gnus.org>
17049         New functions for getting and setting image properties
17051         * doc/lispref/display.texi (Defining Images): Document
17052         image-get/set-property.
17054         * lisp/image.el (image-set-property): New function.
17055         (image-get-property): Ditto.
17057 2016-02-19  Alan Mackenzie  <acm@muc.de>
17059         Await the final mouse event in C-h c and C-h k.
17061         * lisp/help.el (describe-key-briefly, describe-key): On receiving a mouse
17062         event, keep reading further events until a timeout occurs, to ensure we have
17063         the complete mouse event from the user.
17065 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17067         Add a library for creating and manipulating SVG images
17069         * doc/lispref/display.texi (SVG Images): New section.
17071         * lisp/svg.el: New file.
17073 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17075         Fix up tests for async TLS negotiation
17077 2016-02-18  Lars Ingebrigtsen  <larsi@gnus.org>
17079         Fix coding system setup
17081         * src/process.c (set_network_socket_coding_system): Pass in
17082         the host/service that's been computed already.
17084 2016-02-18  Michael Albinus  <michael.albinus@gmx.de>
17086         Reference `tramp-theme' in GNU ELPA.
17088         * doc/misc/tramp.texi (Frequently Asked Questions):
17089         Reference `tramp-theme' in GNU ELPA.
17091 2016-02-17  Lars Ingebrigtsen  <larsi@gnus.org>
17093         Verify the TLS connection asynchronously
17095         * src/gnutls.c (gnutls_verify_boot): Refactor out into its own
17096         function so that we can call it asynchronously.
17097         (Fgnutls_boot): Use it.
17099         * src/process.c (wait_reading_process_output): Verify the TLS
17100         negotiation.
17102 2016-02-16  Simen Heggestøyl  <simenheg@gmail.com>
17104         Add column layout module to CSS property list
17106         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17107         CSS Multi-column Layout Module.
17109 2016-02-16  Michael Albinus  <michael.albinus@gmx.de>
17111         Minor cleanup in CONTRIBUTE and test/README
17113         * CONTRIBUTE: Remove detailed explanation about testing; this
17114         is now in test/README.
17116         * test/README: Don't mention automated/ subdirectory.
17118 2016-02-15  Glenn Morris  <rgm@gnu.org>
17120         Provide 'term/name in lisp/term files.
17122         * lisp/term/AT386.el, lisp/term/bobcat.el, lisp/term/cygwin.el:
17123         * lisp/term/internal.el, lisp/term/iris-ansi.el, lisp/term/linux.el:
17124         * lisp/term/lk201.el, lisp/term/news.el, lisp/term/ns-win.el:
17125         * lisp/term/pc-win.el, lisp/term/rxvt.el, lisp/term/screen.el:
17126         * lisp/term/sun.el, lisp/term/tty-colors.el, lisp/term/tvi970.el:
17127         * lisp/term/vt100.el, lisp/term/vt200.el, lisp/term/w32-win.el:
17128         * lisp/term/w32console.el, lisp/term/wyse50.el, lisp/term/x-win.el:
17129         For consistency, provide 'term/name in all files that don't already.
17131 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17133         Deactivate the correct process
17135         * src/process.c (wait_reading_process_output): Deactivate the
17136         correct process on failure.
17138 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17140         Implement asynch TLS negotiation
17142         * src/gnutls.c (gnutls_try_handshake): Factor out into its own
17143         function.
17144         (emacs_gnutls_handshake): Use it.
17145         (emacs_gnutls_read): Just return instead of retrying the handshake.
17147         * src/process.c (finish_after_tls_connection): Factor out
17148         into its own function.
17149         (connect_network_socket): Use it.
17150         (wait_reading_process_output): Retry TLS handshakes.
17151         (wait_reading_process_output): Defer sentinel until TLS completes.
17153 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17155         Simplify the DNS resolution loop a bit
17157         * src/process.c (wait_reading_process_output): Simplify the
17158         DNS resolution loop a bit.
17160 2016-02-15  Alain Schneble  <a.s@realize.ch>
17162         Loop over the process list instead of maintaining a separate list
17164         * src/process.c: Remove declaration/definition of dns_processes list.
17165         * src/process.c (wait_reading_process_output): Loop over all processes in
17166         Vprocess_alist instead of dns_processes, to check for completed DNS
17167         requests.
17169 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17171         Allow setting the filter masks later
17173         * src/process.c (Fset_process_filter): Don't set the socket
17174         masks here, because we may not have a socket yet.
17175         (set_process_filter_masks): New function.
17176         (connect_network_socket): Set the filter masks here.
17178 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17180         Remove debugging
17182 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17184         Ensure we always free DNS resources when deleting a process
17186         * src/process.c (free_dns_request): Factor out into own function.
17187         (Fdelete_process): When deleting a process, free any DNS
17188         structures associated with it.
17189         (check_for_dns): Always free all DNS resources.
17191 2016-02-15  Alain Schneble  <a.s@realize.ch>
17193         Don't block in set-process-window-size
17195         * src/process.c (set-process-window-size): Explicitly return Qnil when
17196         called with network processes as set_window_size won't work anyway on
17197         socket fds.  As a welcome side effect, this makes the blocking
17198         wait_for_socket_fds call obsolete.
17200 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17202         Do most of the coding system setup earlier
17204         * src/process.c (Fmake_network_process): Set the read/write
17205         coding systems here, so that special bindings work.
17206         (Fmake_network_process): Complete the coding system setup here.
17208 2016-02-15  John Wiegley  <johnw@newartisans.com>
17210         Merge from origin/emacs-25
17212         d4b93e1 Minor fixes in global-auto-composition-mode
17213         02b037b Allow arithmetic operators inside C++ template constructs.
17214         44b16f6 Avoid crashes in semi-malformed 'condition-case'
17215         652e5b4 Allow arithmetic operators inside C++ template constructs.
17216         d9ea795 Fix regression with 'recent-keys' and keyboard macros
17217         903603f Fix wording in a doc-view.el comment
17218         cf79616 ; Spelling fixes
17219         f8bf1b3 CONTRIBUTE cleanups and updates
17220         f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
17221         1834ac7 Port to x86 GCC 4.3.1 and earlier
17222         8482949 Fix point movement under 'scroll-conservatively'
17223         c1313b5 Replace colon in file name (not legal on Windows)
17224         f7af26c Fix a typo in edt.texi
17225         8badf95 Make 'mmap_realloc' on MS-Windows more reliable
17226         856cd94 Grep alias `all' shall not match parent directory
17228 2016-02-15  John Wiegley  <johnw@newartisans.com>
17230         Merge from origin/emacs-25
17232         dacde7e * etc/AUTHORS: Update the AUTHORS file
17233         478ca5d ; fix changelog entries
17234         2b7d006 ; make change-history-commit
17235         851decb * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
17236         47896c8 ; Improve commentary in insdel.c
17237         53ca1e1 Index tilde characters in names of backup files
17238         d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
17239         b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
17240         28bb214 Announce that the `C-x w' bindings are deprecated
17241         1c98f98 Suppress GNUstep hardening
17242         d82f24b Fix redisplay after a large insertion
17243         85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
17244                 closed server"
17245         e8e3db0 ; Improve merge documentation in CONTRIBUTE
17246         5be9989 * lib-src/make-docfile.c: Include stdarg.h.
17247         c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
17248                 limitations.
17250 2016-02-15  John Wiegley  <johnw@newartisans.com>
17252         Merge from origin/emacs-25
17254         f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
17255         afe7d1f Revert "Document EXIF image rotation"
17256         c6f377c Document OS X LANG default
17257         eb4a18c Set locale when run from OS X GUI
17258         456c0a3 make-docfile cleanup for I/O, etc.
17259         25ec995 Memory-management cleanup in make-docfile
17260         02d925e Kevin Gallagher has new email address
17261         4ef153b Improve doc strings of 'forward/backward-word-strictly'
17262         3ad05a0 Describe Makefile test targets in test/README
17264 2016-02-15  John Wiegley  <johnw@newartisans.com>
17266         Merge from origin/emacs-25
17268         10b8ed2 Document EXIF image rotation
17269         0f60049 Support integer image rotation and respect EXIF rotations
17270         7dd45b6 Quote table names for postgres listings (sql-mode)
17271         6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
17272                 `backward' optional.
17273         ee909aa * lisp/simple.el (next-line-or-history-element): Reset
17274                 temporary-goal-column.
17275         0a289d3 Suppress ACL ops if configured with --disable-acl
17276         1a9dbf5 Mention web bugs
17277         fa55da2 Make mm-html-blocked-images default to "" again
17279 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
17281         Protect against initial handshake failures
17283         * src/process.c (connect_network_socket): Mark the connection
17284         as failed if the handshake didn't succeed yet.  This should be
17285         reworked later.
17287 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17289         Call the network security manager after doing TLS negotiation
17291         * lisp/net/network-stream.el (network-stream-open-tls):
17292         Postpone NSM verification when running async.
17294         * src/process.c (Fset_process_filter): This function doesn't
17295         need to wait.
17296         (connect_network_socket): Set the process status to "run" only
17297         after TLS negotiation.
17298         (wait_for_socket_fds): Take a name parameter for more debugging.
17299         (wait_reading_process_output): Don't change status to "run"
17300         unless TLS negotiation has finished.
17301         (send_process): Wait for the process here instead of
17302         send_process_string.
17303         (connect_network_socket): Call the network security manager.
17305 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17307         Remove some #ifdefs and update documentation
17309         * doc/lispref/processes.texi (Network Processes): Remove
17310         mention of `dns'.
17312         * lisp/net/network-stream.el (open-network-stream): Remove
17313         mention of `dns'.
17315         * src/process.c (Fset_process_filter)
17316         (Fset_process_window_size, Fprocess_contact)
17317         (Fprocess_datagram_address, Fset_process_datagram_address)
17318         (Fset_network_process_option, Fprocess_send_region)
17319         (Fprocess_send_string, Fset_process_coding_system)
17320         (Fset_process_filter_multibyte): Remove the #ifdef
17321         HAVE_GETADDRINFO_A checks.
17322         (Fprocess_send_string): Wait for TLS negotiation.
17323         (wait_for_tls_negotiation): New function.
17324         (send_process): Remove the TLS boot check.
17326         * src/process.c (Fmake_network_process): Ditto.
17328 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
17330         Use :nowait t in url-gw
17332         * lisp/url/url-gw.el (url-open-stream): Just use :nowait t,
17333         since we're not differentiating.
17335 2016-02-14  Alain Schneble  <a.s@realize.ch>
17337         Add blockers to process functions
17339         * src/process.c (set-process-filter, set-process-window-size,
17340         process-contact, process-datagram-address, set-process-datagram-address,
17341         set-network-process-option): Make functions wait (block) on network
17342         process until pending DNS requests have been processed and associated
17343         socket initialized.
17345         * src/process.c (process-send-region, process-send-string,
17346         process-send-eof): Make functions wait (block) while network process is
17347         in connect state.
17349 2016-02-14  Simen Heggestøyl  <simenheg@gmail.com>
17351         Add fragmentation module to CSS property list
17353         * lisp/textmodes/css-mode.el (css-property-ids): Add properties from
17354         CSS Fragmentation Module Level 3.
17356 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17358         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
17360 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
17362         New function seq-map-indexed
17364         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
17365         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
17367 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17369         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
17371 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17373         Fix problem with wrong encoding of non-ASCII message bodies
17375         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
17376         multibyteness before encoding the data.
17378 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17380         Remove codepage setup code from mm-util
17382         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
17383         (mm-codepage-iso-8859-list): Remove.
17384         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
17385         (mm-setup-codepage-ibm): Remove.
17386         (mm-charset-eval-alist): Remove the code pages from the
17387         default value.
17389 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17391         Remove compat code for older Emacsen
17393         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
17394         XEmacs compat code.
17396         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
17397         unused compat function.
17398         (gnus-sync-json-plist-p): Ditto.
17400         * lisp/gnus/message.el (message-default-charset): Make obsolete.
17401         (message-info): Remove compat code.
17402         (message-setup-fill-variables): Remove kludge needed earlier
17403         to not overwrite `normal-auto-fill-function'.
17404         (message-split-line): Remove compat code.
17406         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
17407         compat code.
17409 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17411         Remove some compat functions from gmm-utils.el
17413         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
17414         compat code.
17415         (gmm-image-search-load-path): Remove.
17416         (gmm-image-load-path-for-library): Remove.
17418 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17420         Remove the gmm-lazy and nnmail-lazy compat widgets
17422         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
17424         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
17426 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17428         Clean up nnimap-request-move-article slightly
17430         * lisp/gnus/nnheader.el (subr-x): Require.
17432         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
17433         the code slightly.
17435 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17437         Use open-network-stream instead of open-protocol-stream
17439         * lisp/gnus/nnimap.el: Use open-network-stream instead of
17440         open-protocol-stream.
17442         * lisp/gnus/nntp.el: Ditto.
17444         * lisp/gnus/pop3.el: Ditto.
17446         * lisp/net/sieve-manage.el: Ditto.
17448         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
17450 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17452         Remove compat code that relies on (featurep 'mule)
17454         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
17455         compat code.
17457         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
17458         Remove compat code.
17460         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
17461         Remove compat code.
17463         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
17464         Remove compat code.
17465         (mm-w3m-standalone-supports-m17n-p): Ditto.
17467 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17469         Remove compat functions from starttls.el
17471         * lisp/net/starttls.el
17472         (starttls-set-process-query-on-exit-flag): Remove.
17474 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17476         Remove compat functions from smime.el
17478         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
17479         (smime-make-temp-file): Remove.
17481 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17483         Remove compat code from smiley
17485         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
17487 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17489         Remove compat code from rfc2047
17491         * lisp/mail/rfc2047.el (rfc2047-encode-message-header): Remove
17492         compat code.
17493         (rfc2047-decode-string): Ditto.
17495 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17497         Remove compat function from pop3
17499         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
17501 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17503         Remove compat code in Gnus backends
17505         * lisp/gnus/nndiary.el (nndiary-error): Remove.
17507         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
17509         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
17511         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
17513         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
17515 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17517         Remove compat code from some mml files
17519         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
17520         Remove compat code.
17522         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
17523         Always use `mail-extract-address-components', since this isn't
17524         time critical.
17525         (mml-smime-get-dns-cert): Ditto.
17527         * lisp/gnus/mml.el (mml-preview): Remove compat code.
17529 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17531         Remove compat code and compat functions from mm-util.el
17533         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
17534         compat code.
17535         (mm-coding-system-priorities)
17536         (mm-mule-charset-to-mime-charset, mm-charset-after)
17537         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
17538         (mm-detect-coding-region): Define unconditionally.
17539         (mm-detect-mime-charset-region): Ditto.
17540         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
17541         (coding-system-name)
17542         (find-file-coding-system-for-read-from-filename)
17543         (find-operation-coding-system): Remove aliases.
17545 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17547         Remove some compat code from mm-*.el
17549         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
17551         * lisp/gnus/mm-decode.el (mm-tmp-directory)
17552         (mm-valid-image-format-p): Remove compat code.
17554         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
17555         "Connection" "Close" workaround for older Emacsen.
17557 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17559         Remove compat code and functions from message.el
17561         * lisp/gnus/message.el (message-send-mail-function): Remove
17562         compat code.
17563         (message-dont-reply-to-names, message-mode)
17564         (message-setup-fill-variables, message-fill-paragraph)
17565         (message-remove-blank-cited-lines, message-make-from)
17566         (message-forward-rmail-make-body, message-tool-bar-gnome)
17567         (message-tab): Remove compat code.
17568         (message-completion-in-region): Remove.
17569         (message-read-from-minibuffer): Remove compat code.
17571 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17573         Declare rfc1843 instead of autoloading
17575         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
17576         instead of autoload.
17578 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17580         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
17582         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
17583         autoloaded correctly.  (Bug#22613)
17585 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
17587         Fix network-stream-tests.el for MS-Windows
17589         * test/lisp/net/network-stream-tests.el
17590         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
17591         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
17593 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
17595         Remove some Message compat functions
17597         * lisp/gnus/message.el (message-kill-all-overlays): Define
17598         unconditionally.
17599         (message-window-inside-pixel-edges): Remove.
17600         (mail-dont-reply-to): Remove.
17602 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17604         Remove some Gnus compat code
17606         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
17607         (gnus-mm-display-part): Ditto.
17609         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
17610         compat code.
17612 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17614         Sort groups before inserting them into the group buffer
17616         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
17617         Sort groups before inserting them.
17619 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17621         Make "unseen" tracking work again in Gnus
17623         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
17624         tracking work again.
17626 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17628         Remove Gnus compat functions defined in gnus.el
17630         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
17631         (gnus-extent-start-open, gnus-character-to-event)
17632         (gnus-assq-delete-all, gnus-add-text-properties)
17633         (gnus-put-text-property, gnus-key-press-event-p):
17635 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17637         Remove compat code from gnus-uu and win
17639         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
17640         compat code.
17642         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
17644         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
17646 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17648         Remove several gnus-util compat functions
17650         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
17651         (gnus-read-shell-command): Remove.
17652         (gnus-match-substitute-replacement): Remove.
17653         (gnus-string-match-p): Remove.
17654         (gnus-string-prefix-p): Remove.
17656 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17658         Remove the gnus-merge alias
17660         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
17662 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17664         Remove the gnus-union alias
17666         * lisp/gnus/gnus-util.el (gnus-union): Remove.
17668 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17670         Remove the gnus-delete-alist alias
17672         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
17673         (gnus-delete-alist): Remove.
17675 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17677         Remove the gnus-float-time alias
17679         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
17680         compat code.
17681         (gnus-float-time): Remove.
17683 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17685         Remove compat code from gnus-srvr, start and sum
17687         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
17688         compat code.
17690         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
17691         Remove compat code.
17693         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
17694         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
17695         (gnus-recenter)
17696         (gnus-summary-limit-strange-charsets-predicate)
17697         (gnus-summary-show-thread): Remove compat code.
17699 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17701         Remove compat code from gnus-spec.el
17703         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
17704         (gnus-balloon-face-function): Remove compat code.
17706 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17708         Fix compat change in last check-in
17710         * lisp/gnus/gnus-group.el
17711         (gnus-group-name-charset-group-alist): `find-coding-system'
17712         doesn't exist in Emacs.
17714 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17716         Always use url-queue
17718         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
17719         Always use url-queue.
17721 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17723         Remove compat functions from gnus-html.el
17725         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
17727 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17729         Remove compat code from gnus-group.el
17731         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
17732         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
17734 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17736         Define gnus-diary-kill-entire-line unconditionally
17738         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
17739         Define unconditionally.
17741 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17743         Remove compat code from gnus-cache and gnus-bookmark
17745         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
17747         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
17748         Remove compat code.
17750 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17752         Remove compat code from gnus-art.el
17754         * lisp/gnus/gnus-art.el (gnus-article-prepare)
17755         (gnus-mime-copy-part, gnus-output-to-file)
17756         (gnus-article-reply-with-original)
17757         (gnus-button-handle-apropos-variable)
17758         (gnus-button-handle-apropos-documentation):
17760 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17762         Remove compat code from gnus-agent.el
17764         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
17765         Remove compat code.
17767 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17769         Rewrite gmm-labels usage to use cl-labels
17771         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
17772         (gmm-labels): Remove.
17774 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17776         Remove compat code from canlock.el
17778         * lisp/gnus/canlock.el (defmacro): Remove
17780 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17782         Remove compat code from auth-source
17784         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
17785         Remove compat code.
17787 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17789         Fix gnus-group.el compilation warnings about unprefixed variables
17791         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
17792         compilation warnings by passing in the dynamic variables as
17793         explicit lexical parameters to `eval'.
17795 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17797         Fix the :tracker slot name
17799         * lisp/gnus/registry.el (registry-lookup-secondary): The
17800         `tracker' slot is called `tracker', not `:tracker'.
17802 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17804         Fix compilation warnings in gnus-art.el
17806         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
17807         (gnus-article-hide): Avoid compilation warnings.
17809 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17811         Fix compilation warning in gnus-score.el
17813         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
17814         compiler.
17816 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
17818         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
17820         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
17822         This makes nnimap groups not be activated.
17824 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17826         Fix encoding problem introduced by previous patch series
17828         * lisp/mail/rfc2047.el: Ditto (bug#22648).
17830         * lisp/mail/rfc2231.el: Fix problem created by the
17831         mm-replace-in-string conversion.
17833 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
17835         Revert "Avoid defvarring prefix-less variables"
17837         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
17839         The defvars are needed if we're doing lexical-binding
17841 2016-02-12  Glenn Morris  <rgm@gnu.org>
17843         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
17844         Make it pass.
17846         * test/lisp/url/url-auth-tests.el
17847         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
17849 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17851         Finish up cl-defmethoding registry,el
17853         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
17855 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17857         Revert the gnus-replace-in-string change, fix arguments, reapply
17859 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17861         Silence more message.el compilation warnings
17863         * lisp/gnus/message.el (message-generate-headers): Don't use
17864         variable values directly to get the header values, because
17865         that breaks with lexical binding (without unprefixed defvars).
17867 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17869         Fix various compilation warnings in message.el
17871         * lisp/gnus/message.el (message-fix-before-sending): Use
17872         read-multiple-choice instead of gnus-multiple-choice.
17873         (mm-util): Require.
17874         (rfc2047): Require.
17875         (message-remove-blank-cited-lines): Use message instead of
17876         gnus-message.
17877         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
17879 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17881         Silence compilation warning in mm-view
17883         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
17884         compilation warning.
17886 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17888         Fix epg-related compilation warnings in mml-sec
17890         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
17891         library.
17893 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17895         rmail-dont-reply-to-names is obsolete
17897         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
17898         the obsolete `rmail-dont-reply-to-names' variable.
17900 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17902         Partially revert the defmethod->cl-defmethod change in registry.el
17904         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
17905         since cl-defmethod doesn't work with :after.
17906         (initialize-instance): Ditto, but with :before.
17908 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17910         Avoid obsolete function in plstore
17912         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
17913         instead of the obsolete epg-context-set-armor.
17915 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17917         Use cl-defmethod in registry.el
17919         * lisp/gnus/registry.el: Use cl-defmethod instead of the
17920         obsolete defmethod.
17922 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17924         Make sieve-manage require sasl
17926         * lisp/net/sieve-manage.el: Fix compilation warning by
17927         requiring sasl.
17929 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17931         Avoid defvarring prefix-less variable
17933         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
17935 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17937         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
17939 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17941         Don't use the obsolete char-valid-p function
17943         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
17944         obsolete char-valid-p function.
17946 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17948         Fix missed translation in a previous commit
17950         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
17951         translation of mailcap-delete-duplicates.
17953 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17955         Avoid using mm-make-temp-file
17957         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
17959         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
17961         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
17963 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17965         Fix compilation warning in gnus-start
17967         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
17968         mm-make-temp-file.
17970 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17972         Avoid the obsoleted defmethod
17974         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
17975         defmethod.
17977 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17979         Avoid defvarring prefix-less variables
17981         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
17982         don't need to `defvar' the short variables to allow `eval' to
17983         use them.
17985 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17987         nnweb doesn't need unibyte buffers
17989         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
17990         (nnweb-read-overview, nnweb-request-article)
17991         (nnweb-google-reference): Unibyte buffers are not needed here.
17993 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
17995         Encode before sending from nnspool
17997         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
17998         before sending it to the news server.
18000 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18002         nnrss buffers don't have to be unibyte
18004         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
18005         to be unibyte just to receive data, I think.
18007 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18009         Don't use mm-with-unibyte-current-buffer in mml2015
18011         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
18012         mm-with-unibyte-current-buffer.
18014 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18016         Don't use mm-with-unibyte-current in mml1991
18018         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
18019         mm-with-unibyte-current.
18021 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18023         Don't use mm-with-unibyte-current in mml1991
18025         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
18026         mm-with-unibyte-current.
18028 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18030         Don't use mm-with-unibyte-buffer in utf7
18032         * lisp/international/utf7.el (utf7-fragment-encode): Don't use
18033         mm-with-unibyte-buffer.
18035 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18037         Remove XEmacs compat code from Gnus helper libraries
18039         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
18041         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
18043         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
18045         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
18047 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18049         Remove XEmacs compat code from Gnus backends
18051         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
18052         (mm-inline-image): Rename from mm-inline-image-emacs.
18054         * lisp/gnus/mml.el: Remove XEmacs compat code.
18056         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
18058         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
18059         XEmacs compat code.
18061         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
18063         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
18064         XEmacs compat code.
18066         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
18068         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
18070         * lisp/gnus/nntp.el: Remove XEmacs compat code.
18072 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18074         Remove XEmacs compat functions from mm-util.el
18076         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
18077         (mm-decode-coding-string, mm-encode-coding-string)
18078         (mm-decode-coding-region, mm-encode-coding-region): Remove.
18079         (mm-string-to-multibyte): Remove.
18080         (mm-char-or-char-int-p): Remove.
18081         (mm-ucs-to-char): Remove compat versions of the function.
18082         (mm-read-coding-system): Remove.
18083         (mm-coding-system-p): Remove compat code.
18084         (mm-enrich-utf-8-by-mule-ucs): Remove.
18085         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
18086         (mm-delete-duplicates): Remove.
18087         (mm-multibyte-p): Remove compat versions.
18088         (mm-xemacs-find-mime-charset-1): Remove.
18089         (mm-xemacs-find-mime-charset): Remove.
18090         (mm-make-temp-file): Made obsolete.
18091         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
18093 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
18095         Remove Message and mm-decode XEmacs compat code
18097         * lisp/gnus/message.el: Remove XEmacs compat code.
18099         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
18101         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
18103 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18105         Remove som XEmacs compat code from message.el
18107         * lisp/gnus/message.el: Remove some XEmacs compat code.
18109 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18111         Remove XEmacs compat code from ietf-drums.el
18113         * lisp/mail/ietf-drums.el (ietf-drums-syntax-table): Drop
18114         XEmacs compat.
18116 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18118         Remove XEmacs compat code from gravatar.el
18120         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
18121         gravatar.el.
18123 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18125         Remove more XEmacs compat code from Gnus
18127         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
18128         (gnus-timer--function): Remove.
18130         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
18131         19.2 compat.
18133         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
18135 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18137         Remove more XEmacs compat functions from gnus-util.el
18139         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
18140         (gnus-get-display-table): Remove.
18141         (gnus-format-message): Remove.
18143 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18145         Remove more XEmacs compat functions from Gnus
18147         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
18148         (gnus-previous-char-property-change): Remove.
18149         (gnus-graphic-display-p): Remove.
18150         (gnus-select-frame-set-input-focus): Remove.
18152 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18154         Remove more XEmacs compat code from gnus-util
18156         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18157         all its usages).
18158         (gnus-invisible-p): Remove.
18160 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18162         Remove gnus-make-local-hook
18164         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
18165         all its usages).
18167 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18169         gnus-replace-in-string -> replace-regexp-in-string
18171         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
18172         obsolete.  Transform all usages of it into
18173         replace-regexp-in-string.
18175         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
18177 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18179         Remove Gnus XEmacs compat
18181         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
18182         about code that doesn't work in XEmacs.
18184         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
18186         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
18188 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18190         Remove compat functions in gnus-spec.el
18192         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
18193         (gnus-substring-function): Remove.
18194         (gnus-use-correct-string-widths): Remove.
18195         (gnus-make-format-preserve-properties): Remove.
18196         (gnus-xmas-format): Remove.
18198         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
18200 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18202         Remove Gnus XEmacs compat functions
18204         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
18206         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
18208         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
18210 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18212         Remove Gnus XEmacs compatibility
18214         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
18215         XEmacs compat.
18217         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
18219         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
18221         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
18222         XEmacs compat.
18224         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
18226         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
18228         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
18230         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
18232 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18234         Don't use image-map if it isn't defined
18236         * lisp/net/shr.el (shr-image-map): Only use image-map as a
18237         parent if it's defined (bug#22614).
18239 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18241         Check for MagickAutoOrientImage
18243         * configure.ac: Check for MagickAutoOrientImage.
18245         * src/image.c (imagemagick_load_image): Don't use
18246         MagickAutoOrientImage unless it's available.
18248 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
18250         Document EXIF image rotation
18252         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
18254 2016-02-10  Dima Kogan  <dima@secretsauce.net>
18256         Support integer image rotation and respect EXIF rotations
18258         * src/image.c (imagemagick_load_image): Allow integer rotations in
18259         addition to floating point rotations (bug#22591).
18260         * src/image.c (imagemagick_load_image): Images that have an
18261         orientation given in EXIF and have no explicit :rotation tag are now
18262         pre-rotated.  All information such as width/height is reported for the
18263         rotated image.
18265 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
18267         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
18269 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18271         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
18273 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18275         Remove compat code from gnus-bookmark.el
18277         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
18278         (gnus-bookmark-remove-properties): Remove.
18280 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18282         Remove XEmacs compat code from gnus-a*.el
18284         * lisp/gnus/gnus-agent.el: Remove compat code.
18286         * lisp/gnus/gnus-art.el: Remove compat code.
18288         * lisp/gnus/gnus-async.el: Remove compat code.
18290 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18292         Remove gmm compat functions
18294         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
18295         (gmm-write-region): Remove.
18296         (gmm-called-interactively-p): Remove.
18298 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18300         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
18302 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18304         Remove compat code from compface.el
18306         * lisp/image/compface.el: Remove XEmacs compat code throughout.
18308 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18310         Remove the now empty gnus-ems.el and references to it
18312 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18314         Remove Gnus compat names for mouse bindings
18316         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
18317         (gnus-down-mouse-2): Remove.
18318         (gnus-down-mouse-3): Remove.
18320 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18322         Drop Gnus compat functions
18324         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
18326         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
18328         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
18330 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18332         Get rid of gnus-ems-redefine
18334         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
18336 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18338         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
18340 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18342         Remove Gnus compat code
18344         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
18345         transitional code from ten years ago.
18347 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18349         Allow interactively scaling past :max-width etc
18351         * lisp/image.el (image--current-scaling)
18352         (image--image-without-parameters): New functions.
18353         (image--change-size): Use them to allow changing the size of a
18354         image even if it has :width/:max-width (etc.) already set.
18356 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18358         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
18360 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18362         Allow accessing the image commands via shr
18364         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
18365         accessing the image commands.
18367         * lisp/net/shr.el (shr-image-map): New map used for images.
18368         (shr-urlify): Don't overwrite image maps when applying URL maps.
18370 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18372         Use a sparse image keymap
18374         * lisp/image.el (image-map): Use a sparse keymap.
18376 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18378         Put a keymap on images created with insert-image and friends
18380         * lisp/image.el (image-save): New command.
18381         (image-rotate): Ditto.
18382         (image-map): New keymap.
18383         (insert-image): Put the image-map on all images.
18384         (insert-sliced-image): Ditto.
18385         * doc/lispref/display.texi (Showing Images): Document the
18386         image map.
18388 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18390         Fix some folding issues in read-multiple-choice
18392         * lisp/subr.el (read-multiple-choice): Fix folding when you
18393         have many items.
18395 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18397         Fix typo in last checkin
18399 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18401         Remove Gnus compat functions
18403         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
18404         (gnus-region-active-p, gnus-select-lowest-window)
18405         (gnus-summary-display-table, gnus-max-width-function): Remove
18406         compat functions.
18408 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18410         Move non-compat Gnus functions to gnus-util.el
18412         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
18413         (gnus-create-image, gnus-image-type-available-p): Move here
18414         from gnus-ems.el, since these aren't compat functions.
18416 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18418         Omit valloc decl if redundant
18420         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
18421         to pacify --enable-gcc-warnings.
18423 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
18425         Restore the calloc family.
18427         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
18428         They were lost in a4817d8 but calloc is still (marginally) used in
18429         code statically liked with emacs, so hybrid_calloc is needed.
18430         Also, in the non-hybrid case, we can't get rid of calloc anyway as
18431         other libraries liked with emacs may need it.
18432         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
18434 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
18436         Remove some Gnus compat functions
18438         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
18439         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
18440         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
18442 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18444         -
18446         -
18448 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18450         Merge from origin/emacs-25
18452         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
18453         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
18454         51c77a2 Display non-ASCII group names better in prompts
18455         f93d669 Default to gpg2 instead of gpg
18457 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18459         Merge from origin/emacs-25
18461         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
18462         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
18463         3db6adb * lisp/isearch.el (search-default-mode)
18464         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
18465         c77ffc8 Use monitor's resolution for positioning tooltips
18466         49e5749 Fix file-notify-test on MS-Windows
18467         be1d874 Fix issues found by auditing w32notify code
18468         87ae218 Extend etags Ruby support for accessors
18469         aa35257 Update publicsuffix.txt.
18470         6816bff Ensure that Gnus dribble handling allows removing entries
18471         691feae Be consistent when using encoded strings in nnimap data
18472         3ed423b Display the decoded Gnus group name
18473         5428b5b Use completion-ignore-case instead of defining command
18475 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18477         Merge from origin/emacs-25
18479         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
18480         d333716 ; * etc/NEWS: Expand news entry for scss-mode
18481         c32c16f ; Better document changes in ls-lisp default behavior
18482         dc6eed2 Fix doc string of tls-program
18484 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18486         Merge from origin/emacs-25
18488         2c117fc * etc/NEWS: Document new mpc.el features
18489         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
18490         9dfece1 Correctly fontify C++ initializations which "look like" functions.
18491         4485222 Improve newsticker-treeview-selection-face
18492         4236944 Minor fix in tagging Ruby accessors by etags
18493         35fc77d Spelling fixes
18494         3dda110 Remove 'def X' from the example
18496 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18498         Fix network-stream-tests on MS-Windows
18500         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
18501         Skip if local sockets are not supported.
18503 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
18505         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
18507 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
18509         Disable 'timer-list'
18511         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
18512         command.
18514 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
18516         Avoid aligned_alloc static/extern collision
18518         * src/alloc.c (aligned_alloc): Define to private name when a
18519         static function, to avoid collision with lisp.h extern decl.
18520         Reported by John Yates in:
18521         https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
18523 2016-02-08  David Edmondson  <dme@dme.org>
18525         src/process.c Correctly convert AF_INET6 addresses
18527         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18528         converted to a list of 16 bit quantities by
18529         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18530         same scheme rather than expecting a (longer) list of 8 bit
18531         quantities.
18533 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18535         Make `message-beginning-of-line' aware of folded headers
18537         * lisp/gnus/message.el (message-beginning-of-header): New function which
18538         moves point to the beginning of a mail header.  The function is aware of
18539         folded headers and with non-nil argument looks for the true beginning of
18540         a header while with nil argument moves to the indented text of header's
18541         value.
18542         (message-beginning-of-line): Function is now aware of folded headers and
18543         either moves point to the indention of a header or, in visual-line-mode,
18544         searches for the beginning of the header.
18546 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
18548         Optimise ‘point in message header’ check
18550         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
18551         regular expression matches with a single bound string match thus
18552         reducing amount of work the function is doing.
18554 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18556         Make the `R' command get the correct relative <img>s
18558         * lisp/net/eww.el (eww-readable): Preserve the base URL so
18559         that image expansions are fetched from the right place (bug#22605).
18561 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18563         Add a mode to list and cancel timers
18565         * doc/lispref/os.texi (Timers): Menton `timer-list'.
18567         * lisp/emacs-lisp/timer-list.el: New file.
18569 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18571         Add new commands to allow changing the size of images
18573         * lisp/image.el (image-increase-size, image-decrease-size):
18574         New commands.
18575         (image-change-size): New function.
18577 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18579         Allow the image scale to be a floating point number
18581         * src/image.c (compute_image_size): The scale can be a
18582         floating point number.
18584 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18586         Add an IPv6 test
18588         * test/lisp/net/network-stream-tests.el
18589         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18591 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18593         Use gnutls-serv instead of openssh
18595         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18596         gnutls-serv instead of openssh.
18598 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18600         Skip TLS tests if we don't have openssl
18602         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18603         TLS tests if we don't have openssl and GnuTLS.
18605 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18607         Add an IPv6 test
18609         * test/lisp/net/network-stream-tests.el
18610         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
18612 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
18614         Use gnutls-serv instead of openssh
18616         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
18617         gnutls-serv instead of openssh.
18619 2016-02-08  Daniel Colascione  <dancol@dancol.org>
18621         Performance improvements for vc-hg
18623         Teach vc-hg how to read some Mercurial internal data structures,
18624         allowing us to avoid the need to run hg status -A, which is very slow
18625         for large repositories.  Fall back to running hg if anything looks
18626         funny.  vc-hg now puts the _working directory_ revision in the
18627         modeline instead of the file revision, which greatly improves
18628         performance and which allows us to again skip running hg in the case
18629         that we have an active bookmark.
18631         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
18632         (vc-hg-symbolic-revision-styles)
18633         (vc-hg-use-file-version-for-mode-line-version)
18634         (vc-hg-parse-hg-data-structures): New user preferences
18635         (vc-hg--active-bookmark-internal, vc-hg--run-log)
18636         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
18637         (vc-hg--read-u8, vc-hg--read-u32-be)
18638         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
18639         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
18640         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
18641         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
18642         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
18643         (vc-hg--ignore-patterns-valid-p)
18644         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
18645         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
18646         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
18647         (vc-hg-state-fast): New functions.
18648         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
18649         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
18650         (vc-hg--dirstate-scan-cache): New internal variables.
18651         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
18652         before updating modeline.
18654 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18656         Skip TLS tests if we don't have openssl
18658         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
18659         TLS tests if we don't have openssl and GnuTLS.
18661 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18663         Automatically scale images up on high-density screens
18665         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
18666         (Defining Images): Mention image-scaling-factor.
18668         * lisp/image.el (image-compute-scaling-factor): New function
18669         (bug#22172).
18670         (create-image): Use it.
18671         (image-scaling-factor): New variable.
18673         * src/image.c (compute_image_size): Take :scale into account.
18675 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18677         Ensure progress when fetching from the queue
18679         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
18680         that we have progress when fetching queued requests (bug#22576).
18682 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18684         Make mail-extract-address-components return the user name more
18686         * lisp/mail/mail-extr.el (mail-extract-address-components):
18687         Return the name even if it's the same as the mailbox name (if
18688         `mail-extr-ignore-single-names' isn't set) (bug#22594).
18690 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18692         Message no longer warns about unknown top level domains
18694 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
18696         Add tests for url-auth
18698         * test/lisp/url/url-auth-tests.el: New file.
18700 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18702         Add a TLS connection test
18704         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18705         a TLS connection test.
18707 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18709         Add more network tests
18711         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18712         New test.
18714 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18716         Add network tests
18718         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18720 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18722         Add a TLS connection test
18724         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
18725         a TLS connection test.
18727 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18729         Add more network tests
18731         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
18732         New test.
18734 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18736         Add network tests
18738         * test/lisp/net/network-stream-tests.el: New suite of network tests.
18740 2016-02-07  Rasmus Pank Roulund  <rasmus@gmx.us>
18742         Allow various Gnus and Message address variables to be functions
18744         * doc/misc/gnus.texi (To From Newsgroups):
18745         gnus-ignored-from-addresses can be a function.
18747         * doc/misc/message.texi (Wide Reply):
18748         message-dont-reply-to-names can be a function.
18750         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
18751         message-alternative-emails can be a function.
18753         * lisp/gnus/gnus-notifications.el (gnus-notifications):
18754         message-alternative-emails can be a function (bug#22315).
18756         * lisp/gnus/gnus-sum.el
18757         (gnus-summary-from-or-to-or-newsgroups):
18758         gnus-ignored-from-addresses can be a function (bug#22315).
18760 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
18762         Fix typo in Gnus regexp
18764         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
18765         typo in last change to this regexp (bug#22592).
18767 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18769         Port to FreeBSD x86
18771         Reported by Herbert J. Skuhra in:
18772         https://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
18773         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
18774         since malloc always returns a multiple of 8 in FreeBSD.
18776 2016-02-07  Alan Mackenzie  <acm@muc.de>
18778         On leaving CC Mode, clean up by removing character properties.
18780         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
18781         all instances of the text properties/extents category, syntax-table,
18782         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
18784 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18786         message-valid-fqdn-regexp no longer exists
18788         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
18789         the no-longer-existing message-valid-fqdn-regexp variable.
18791 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
18793         Remove message-valid-fqdn-regexp, since it changes too much now
18795         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
18796         (message-bogus-recipient-p): Don't use it any more.
18797         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
18799 2016-02-06  Paul van der Walt  <paul@denknerd.org>
18801         Match "Re :" as a "Re:" prefix
18803         * lisp/gnus/message.el (message-subject-re-regexp): Also match
18804         "Re :" as a "Re:" prefix (commonly used in France).
18806 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
18808         lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18810         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
18812 2016-02-06  David Edmondson  <dme@dme.org>
18814         src/process.c Correctly convert AF_INET6 addresses
18816         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
18817         converted to a list of 16 bit quantities by
18818         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
18819         same scheme rather than expecting a (longer) list of 8 bit
18820         quantities.
18822 2016-02-05  Martin Jesper Low Madsen  <martin@martinjlowm.dk>
18824         Search for host/port combinations in auth-source on OS X
18826         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
18827         Search for all host/port (or protocol) combinations for a match in
18828         the OS X keychain.
18830 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18832         Remove nonsensical setting of gnus-newsgroup-unseen
18834         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
18835         setting of gnus-newsgroup-unseen.
18837 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18839         Use underline on all terminals that support it
18841         * lisp/subr.el (read-multiple-choice): Use
18842         display-supports-face-attributes-p instead of
18843         display-graphic-p to determine whether we can use underlining.
18845 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
18847         Make the nsm query say what it did after the user interaction
18849         * lisp/net/nsm.el (nsm-query): Issue a message about
18850         aborting/accepting messages (suggested by N. Jackson)
18851         (bug#22531).
18853 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18855         Omit XLI (init) == 0 optimization in make-vector
18857         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
18858         == 0) case, as this optimization is probably not worth the hassle.
18859         Just for the record, the test for that case could have been
18860         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
18861         assuming the typical platform with no padding bits and where
18862         conversion to int omits the most significant bits.
18864 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18866         * autogen.sh: Port to dash (Bug#22556).
18868 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
18870         Minor cleanup for Tramp "doas".
18872         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
18874         * etc/NEWS: Add Tramp connection method "doas".
18876         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
18877         Add `tramp-remote-shell-args'.
18879 2016-02-05  Xi Lu  <lx@shellcodes.org>
18881         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
18883         (tramp-default-user-alist): Add rule for "doas".
18884         (top): Completion function for "doas" is
18885         `tramp-completion-function-alist-su'.
18887 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18889         Restore the window configuration
18891         * lisp/net/nsm.el (nsm-query-user): Restore the window
18892         configuration (bug#22532).
18894 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18896         Use an X popup in read-multiple-choice if running from a mouse command
18898         * lisp/subr.el (read-multiple-choice): Use an X popup if
18899         called from a mouse action (bug#19368).
18901 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18903         Display cursor in echo area when prompting
18905         * lisp/subr.el (read-multiple-choice): Display the cursor in
18906         the echo area when prompting (bug#19368).
18908 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18910         Make NSM prompting clearer
18912         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
18913         to prompt in a nicer way (bug#19368).
18915 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18917         Underline read-multiple-choice-face
18919         * lisp/faces.el (read-multiple-choice-face): Also underline
18920         the choice.
18922 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18924         Make url.el use async DNS
18926         * lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS.
18928         * src/process.c (syms_of_process): Add a `dns' subfeature for
18929         make-network-process.
18931 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18933         Only do async DNS if requested with :nowait 'dns
18935         * doc/lispref/processes.texi (Network Processes): Mention the
18936         dns value of :nowait.
18938         * src/process.c (Fmake_network_process): Only do async DNS if
18939         :nowait is `dns'.
18941 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18943         Add sanity check for checking async DNS
18945         * src/process.c (check_for_dns): Disregard processes that have
18946         already been killed.
18948 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
18950         Make the read-multiple-choice prompt a bit prettier
18952         * doc/lispref/commands.texi (Reading One Event): Mention
18953         read-multiple-choice-face.
18955         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
18956         prettier.
18958 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18960         Prefer memcpy and memset to doing it by hand
18962         * src/alloc.c (Fmake_vector):
18963         * src/ccl.c (setup_ccl_program):
18964         Use memset to clear array.
18965         * src/alloc.c (Fvector, Fmake_byte_code):
18966         * src/charset.c (Fdefine_charset_internal):
18967         Use memcpy to copy array.
18969 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
18971         Do not ignore redirections of 301, 302 and 307 status codes
18973         The current version of HTTP/1.1 (RFC 7231) no longer requires
18974         confirmation on 301, 302 or 307 status codes, therefore we do not have
18975         to ignore redirects for other requests than GET and HEAD.
18977         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
18978         and 307 redirects for other requests than GET and HEAD.
18980 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
18982         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
18984 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
18986         Simplify USE_ALIGNED_ALLOC
18988         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
18989         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
18991 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
18993         Honor docstring of gnus-group-get-new-news
18995         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
18996         is t, but non-numeric, unconditionally consider all groups to need
18997         updating.
18999 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
19001         New function read-multiple-choice
19003         * doc/lispref/commands.texi (Reading One Event): Document
19004         read-multiple-choice.
19006         * lisp/faces.el (read-multiple-choice-face): New face.
19008         * lisp/subr.el (read-multiple-choice): New function.
19010 2016-02-03  John Wiegley  <johnw@newartisans.com>
19012         Merge from origin/emacs-25
19014         ee73997 Make erc work better when encountering unknown prefix chars
19015         b99141d Make erc completion case-insensitive again
19016         66c4620 Make complection in erc use consistent casing
19017         8c562b2 Make /QUIT in erc more robust
19018         d93d2c5 Make tracking faces in Emacs work more reliably
19019         af6ab7e Make shr not bug out on images on non-graphical displays
19020         3311f40 Fix bookmark display widths
19021         d90ab1e Fix typo in eww-make-unique-file-name
19022         7f81825 Make it possible to TAB to input fields
19023         a43a1dc Insert complete alt texts when images are disabled
19024         56ed4e1 Allow eww text fields to grow
19025         66b315c Make erc work when subword-mode is switched on
19026         255b68f Fix IMAP doc example
19027         91557f5 Quoting fixes in doc strings and diagnostics
19028         2c0dc9f Fix warning message in hack-local-variables
19029         504696d Etags: yet another improvement in Ruby tags
19030         8784ebf Fix x-popup-menu on TTYs without a mouse
19031         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
19032                 pcase macro
19033         6191003 Use pop-to-buffer-same-window in eww
19034         fe321fd * autogen.sh: Revert all recent changes.
19035         74ebd4a * make-dist: Updates related to nt/.
19036         737193a * make-dist: Add modules/.
19037         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
19038         a4278e2 Fix failure to compile ns-win.el in parallel builds
19039         860da4d Fix names of tags generated for Ruby accessors
19040         f6213ce Fix file-name recognition in 'etags'
19041         e42e662 Change Ruby file names and extensions recognized by 'etags'
19042         58bfb6a More improvements for Ruby support in 'etags'
19043         c04e911 Add --git-config option to autogen.sh
19044         5713466 Fix editing undo changes in eww fields
19045         51362d6 Allow the user more control of popping up the eww window
19046         ee0fbd8 Make eww-browse-url with new-window parameter work again
19047         9c3142d Clean up eww code slightly
19048         cb035f3 Don't insert nil faces in shr
19049         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
19050         93f2153 Improve the custom type of some user options.
19051         9f60d7e Mark some risky calendar variables.
19052         1d07dcd Highlight two additional SCSS keywords
19053         ee8b466 Recommend enabling integrity-checking in git
19054         e639e10 Some corrections in Elisp manual
19055         d766ca8 Chatter when autogen.sh changes Git configuration
19056         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
19057         43cb9f8 Omit unnecessary history from Lisp intro
19058         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
19059         c90e1b4 Improve elisp “Security Considerations” doc
19060         cedd7ca autogen.sh now arranges for git to check hashes
19061         86ce76b ; Fix ChangeLog.2 commit ID.
19062         7b1d2b1 Fix (c & 040) typo in emergency escapes
19063         a8273da Fix display of overlay strings with 'display' and 'box' property
19064         fc48106 Fix imap-starttls-open
19065         cdecbed Fix return value of imap-starttls-open
19066         20c7e34 ; * etc/NEWS: Fix renamed command name
19067         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
19068         b250d29 Spelling fix
19069         b920a0e Spelling fixes
19070         93b144b Pacify GCC on C library without glibc API
19072 2016-02-03  John Wiegley  <johnw@newartisans.com>
19074         Merge from origin/emacs-25
19076         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
19077                 priority of non-free Chrome.
19078         0fac75f Improve the custom type of some user options.
19079         2df0e04 Highlight CSS variables with variable name face
19080         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
19081                 user-serviceable.
19082         2a5233c Mark some user options that can get evalled as risky.
19083         39b166f Disable DebPrint in sys_read on MS-Windows
19084         9fd0189 ;Fix ChangeLog entry
19085         4bb7233 Fix typos in Introduction to Emacs Lisp manual
19087 2016-02-03  Mark Oteiza  <mvoteiza@udel.edu>
19089         Add a new command to switch between erc buffers
19091         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
19092         * etc/NEWS: Mention new command
19093         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
19094         (eww-mode-map): Add menu item
19095         (eww-switch-to-buffer): New command
19097 2016-02-03  David Edmondson  <dme@dme.org>
19099         Make erc work better when encountering unknown prefix chars
19101         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
19102         instead of erroring out on unknown prefix chars (bug#22380).
19104 2016-02-03  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
19106         Allow sending empty hidden values in eww
19108         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
19109         values (bug#22388).
19111 2016-02-03  Andrew Hyatt  <ahyatt@gmail.com>
19113         Remove packages obsoleted before Emacs 24.
19115         In accordance with the policy discussed in the emacs-devel list,
19116         packages that have been obsoleted for a full major release cycle are up
19117         for deletion.
19119         This removes almost all packages that are now eligible for deletion,
19120         with the exception of "cl-compat", which seems it is likely to still be
19121         used, and "optional", which offers some functionality that doesn't have
19122         a replacement yet.
19124 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19126         Mention context when resume from emergency escape
19128         That way, if the user has been doing something else for a while,
19129         they are reminded of the situation when restarting Emacs,
19130         and are more likely to understand the two questions.
19131         * doc/emacs/trouble.texi (Emergency Escape): Document this.
19132         * src/keyboard.c (handle_interrupt): Implement this.
19134 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
19136         Port aligned_alloc decl to Cygwin.
19138         Problem reported by Ken Brown (Bug#22522#38).
19139         * configure.ac (aligned_alloc): Check for decl too.
19140         * src/lisp.h (aligned_alloc): Declare if not already declared.
19142 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19144         autogen.sh now configures git only on request
19146         * autogen.sh (do_autoconf, do_git): New vars.
19147         Support new arguments --help, all, autoconf, git.
19148         By default, just do autoconf-related configuration, not git.
19149         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
19150         If GNU cp is available, use it to backup .git/config before
19151         changing it.  When configuring git, chatter about what is being
19152         done, and configure git to check hashes.  Avoid some duplicate
19153         file name specification when creating git hooks.
19155         * GNUmakefile (ALL_IF_GIT): New macro.
19156         (configure): Use it.
19157         * INSTALL.REPO: Suggest './autogen.sh all'.
19159 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
19161         Doc fixes and refactorings based on comments from Eli Zaretskii
19163         * doc/lispref/processes.texi (Network Processes): Clarify the
19164         meaning of :tls-parameters.
19166         * lisp/net/gnutls.el (open-gnutls-stream): Clarify :nowait.
19168         * lisp/net/gnutls.el (gnutls-boot-parameters): Factor out into
19169         own function.
19170         (gnutls-negotiate): Use it.
19171         (open-gnutls-stream): Ditto.
19173         * src/eval.c (vformat_string): Refactor out the printing bits
19174         from verror.
19175         (verror): Use it.
19177         * src/gnutls.c (boot_error): Mark failed processes with the
19178         real error message.
19180         * src/lisp.h: Declare vformat_string.
19182 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19184         Build with C11 if available
19186         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
19187         * m4/std-gnu11.m4: New file, from gnulib.
19188         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19190 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19192         Update gnulib copy
19194         * doc/misc/texinfo.tex: Copy from gnulib.
19196 2016-02-02  Glenn Morris  <rgm@gnu.org>
19198         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
19199         Doc tweaks.
19201 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19203         Port better to platforms lacking aligned_alloc
19205         Problem reported by Ken Brown (Bug#22522).
19206         * src/lisp.h (hybrid_aligned_alloc)
19207         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
19209 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
19211         Port malloc.h hygiene fix to LTO
19213         * src/alloc.c (__malloc_initialize_hook):
19214         Make it externally visible (Bug#22522).
19216 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19218         Build fix for --enable-check-lisp-object-type
19220         * src/process.c (check_for_dns): Type fix reported by YAMAMOTO
19221         Mitsuharu.
19223 2016-02-01  Glenn Morris  <rgm@gnu.org>
19225         Make find-change-log prefer a VCS root, if no ChangeLog exists.
19227         * lisp/vc/add-log.el (change-log-directory-files): New option.
19228         (find-change-log): Respect change-log-directory-files.
19229         * doc/emacs/maintaining.texi (Change Log Commands):
19230         Mention change-log-directory-files.
19232 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
19234         Boot parameter check fix
19236         * src/process.c (send_process): Fix test for boot parameters noted
19237         by Andy Moreton.
19239 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
19241         Double static heap size.
19243         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
19244         small on FreeBSD (Bug#22086).
19246 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
19248         Fix Bug#20821
19250         * lisp/net/tramp.el (tramp-file-name-handler):
19251         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
19252         Use `tramp-drop-volume-letter'.  (Bug#20821)
19254 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19256         Style fix
19258 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19260         Return the correct server port number
19262         * src/process.c (connect_network_socket): Return the correct
19263         server port number.
19265 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19267         Fix autoconf test for getaddrinfo_a
19269         * configure.ac: Make the test for getaddrinfo_a work.
19271 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19273         Better async error reporting
19275         * src/process.c (connect_network_socket): Mark failed processes
19276         with a better error message.
19277         (check_for_dns): Ditto.
19279 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19281         Clarify :tls-parameters.
19283 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19285         Always boot TLS if given parameters
19287         * src/process.c (connect_network_socket): If we have the TLS
19288         parameters, then boot the socket.
19290 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19292         Add documentation for :tls-parameters
19294         * doc/lispref/processes.texi (Network Processes): Mention
19295         :tls-parameters.
19297         * src/process.c (Fmake_network_process): Document the
19298         :tls-parameters parameter.
19300 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19302         Build fix for glibc systems.
19304 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19306         Make network connections work again on non-glibc systems
19308         * lisp/net/gnutls.el (open-gnutls-stream): Pass the TLS
19309         keywords in directly so that they can be used when doing
19310         synchronous DNS on non-synchronous connections.
19312         * lisp/net/network-stream.el (open-network-stream): Allow
19313         passing in the TLS parameters directly.
19315         * src/process.c (conv_numerical_to_lisp): New function to convert
19316         numerical addresses to Lisp.
19317         (Fmake_network_process): Rework the non-HAVE_ADDRINFO code
19318         paths so that they work again.
19319         (syms_of_process): Build fix for non-glibc systems.
19321 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19323         Windows build fix
19325         * src/process.c (Fmake_network_process): Build fix for systems
19326         without local sockets.
19328 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19330         Use XCAR/XCDR instead of Fcar etc
19332 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19334         Fix GC problem in async TLS connection
19336         * src/process.h: All Lisp_Object slots have to come first,
19337         otherwise they won't be protected from gc.
19339 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19341         Further TLS async work
19343         * src/gnutls.c (boot_error): New function to either signal an
19344         error or return an error code.
19345         (Fgnutls_boot): Don't signal errors when running asynchronously.
19347         * src/process.h (pset_status): Move here from process.c to be
19348         able to use from gnutls.c.
19350         * src/process.c (connect_network_socket): Do the TLS boot here
19351         when running asynchronously.
19352         (wait_reading_process_output): Rework the dns_processes
19353         handling for more safety.
19355 2016-01-31  Lars Ingebrigtsen  <larsi@gnus.org>
19357         Clean up dead code
19359         * lisp/net/gnutls.el (gnutls-async-sentinel): Remove.
19361 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
19363         Add ability to give rcirc servers an alias name
19365         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
19366         customization option.
19367         (rcirc, rcirc-connect): Take server alias into account.
19369 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
19371         Port new hybrid malloc to FreeBSD
19373         Problem reported by Wolfgang Jenkner in: https://bugs.gnu.org/22086#118
19374         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
19375         (__morecore) [HYBRID_MALLOC]: Define in this case too.
19377 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
19379         * configure.ac: Stop using mmap for buffers for FreeBSD.
19381 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
19383         Merge changes from Tramp repository
19385         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
19386         No EXTRA_OPTS needed.
19388         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
19389         branch, especially for @trampfn{}.
19390         (Top): Move @ifnottex down.
19391         (History): XEmacs support has been removed.
19392         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
19393         (Auto-save and Backup): Use both syntax versions.
19394         (File name Syntax): Remark on IPv6 adresses is valid for
19395         unified syntax only.
19397         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
19399 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19401         Spelling fixes
19403 2016-01-30  Glenn Morris  <rgm@gnu.org>
19405         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
19407 2016-01-30  Matthew Carter  <m@ahungry.com>
19409         Quote table names for postgres listings (sql-mode)
19411         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
19412           unquoted table names to the completion list.
19414 2016-01-30  Glenn Morris  <rgm@gnu.org>
19416         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
19418         * lisp/vc/smerge-mode.el (smerge-diff-switches)
19419         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
19420         (smerge-upper, smerge-upper-face, smerge-keep-upper)
19421         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
19422         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
19423         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
19424         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
19425         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
19426         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
19427         Update all uses.
19428         (smerge-basic-map): Add "l" and "u" bindings.
19429         (smerge-mode-menu): Update menu bindings for renaming.
19430         (smerge-font-lock-keywords): Update face names.
19431         (smerge-match-names): Update names.
19432         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
19433         (smerge-match-conflict, smerge-ediff): Rename local variables.
19434         (smerge-makeup-conflict): Relabel markers.
19435         (smerge-parsep-re): Use renamed variables.
19437 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19439         Port recent my_edata change to MS-Windows
19441         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
19443 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19445         Rework the mechanisms for async GnuTLS connections
19447         * lisp/net/gnutls.el (open-gnutls-stream): Compute the
19448         gnutls-boot parameters and pass them to the process object.
19449         (gnutls-negotiate): New parameter :return-keywords that won't
19450         connect to anything, just compute the keywords.
19452         * lisp/url/url-http.el (url-http): Revert async TLS sentinel
19453         hack, which is no longer necessary.
19455         * src/gnutls.c (Fgnutls_asynchronous_parameters): Rename from
19456         gnutls-mark-process.
19458         * src/process.c (connect_network_socket): If we're connecting to
19459         an asynchronous TLS socket, complete the GnuTLS boot sequence here.
19461         * src/process.h: New parameter gnutls_async_parameters.
19463 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19465         Fix segfault from double free
19467         * src/process.c (check_for_dns): Protect against double free
19468         issues.
19470 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19472         Remove debugging
19474 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19476         Implement asynchronous GnuTLS connections
19478         * doc/misc/emacs-gnutls.texi (Help For Developers): Mention
19479         the nowait parameter.
19481         * lisp/net/gnutls.el (open-gnutls-stream): Allow asynchronous
19482         connections with the new nowait parameter.
19484         * lisp/net/network-stream.el (network-stream-open-tls): Pass
19485         on :nowait to open-gnutls-stream.
19487         * lisp/url/url-http.el (url-http): Don't overwrite the
19488         sentinel created by open-gnutls-stream.
19490         * src/gnutls.c (Fgnutls_mark_process): New function.
19492         * src/process.c (send_process): Don't write to GnuTLS sockets that
19493         haven't been initialised yed.
19495         * src/process.h: New slot gnutls_wait_p.
19497 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19499         Tell Automake the new lib/Makefile.am is OK
19501         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
19503 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19505         Make it easy to override preferred-branch test
19507         * Makefile.in (preferred-branch-is-current):
19508         Rename from emacs-25-branch-is-current.  All uses changed.
19509         (PREFERRED_BRANCH): New macro.
19511 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19513         Shrink static heap a bit
19515         * src/sheap.h: Include lisp.h, for Lisp_Object.
19516         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
19517         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
19518         conservative than the old value.
19519         (Bug#22086)
19521 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19523         Fix extern symbols defined and not used
19525         * src/alloc.c: Always include <signal.h>.
19526         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
19527         Do not define; unused.
19528         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
19529         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
19530         to avoid collision with glibc.  Now static.  All uses changed.
19531         * src/lastfile.c (my_edata): Define only if
19532         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
19533         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
19534         (Bug#22086)
19536 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19538         Build lib/e-*.o only on platforms that need it
19540         * configure.ac (hybrid malloc): Simplify configuration.
19541         (SHEAP_OBJ): Remove; no longer needed.
19542         (HYBRID_MALLOC): New var. Subst it.
19543         (HYBRID_MALLOC_LIB): New Automake conditional.
19544         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
19545         HYBRID_MALLOC_LIB.
19546         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
19547         (MOSTLYCLEANFILES): Add libegnu.a.
19548         * src/Makefile.in (SHEAP_OBJ): Remove.
19549         (HYBRID_MALLOC): New macro.
19550         (base_obj): Use it to conditionally add sheap.o.
19551         (LIBEGNU_ARCHIVE): New macro.
19552         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
19553         All uses of the latter replaced by the former.
19554         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
19555         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
19556         * src/gmalloc.c: Update comment.
19557         * src/lisp.h (aligned_alloc)
19558         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
19559         New decl.
19560         (Bug#22086)
19562 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19564         Include <malloc.h> when advisable
19566         This should help insulate us better from future glibc changes.
19567         It is good hygiene to include .h files for APIs that Emacs uses.
19568         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
19569         * configure.ac: Check for malloc.h.
19570         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
19571         not on DOUG_LEA_MALLOC.
19572         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
19573         Remove decl (now in lisp.h).
19574         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
19575         [emacs]: Include lisp.h.
19576         [HAVE_MALLOC_H]: Include <malloc.h>.
19577         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
19578         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
19579         (__default_morecore):
19580         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
19581         (calloc): Make it clear that the macro should not be used.
19582         Remove unused decl.
19583         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
19584         (__morecore, __default_morecore, __after_morecore_hook)
19585         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
19586         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
19587         Remove later decls.
19588         (gmalloc_hook, gfree_hook, grealloc_hook):
19589         Rename from __malloc_hook, __free_hook, __realloc_hook to
19590         avoid type collision with glibc <malloc.h>.  All uses changed.
19591         (gmalloc_hook):
19592         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
19593         Now static.
19594         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
19595         (__malloc_initialize_hook, __after_morecore_hook):
19596         Declare with types compatible with glibc.
19597         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
19598         Remove.  All uses removed.
19599         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
19600         * src/ralloc.c, src/vm-limit.c:
19601         Simplify includes and include <malloc.h> if available.
19603 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19605         * src/alloc.c: Include "sheap.h".
19607         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
19608         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
19609         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
19610         Declare unconditionally.
19611         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
19612         (unexec): Don’t set or clear bss_sbrk_did_unexec;
19613         the caller now does this.
19614         (Bug#22086)
19616 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19618         Pacify --enable-gcc-warnings when HYBRID_MALLOC
19620         * src/buffer.c (init_buffer):
19621         * src/emacs.c (main):
19622         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
19623         Use emacs_get_current_dir_name, not get_current_dir_name.
19624         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
19625         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
19626         * src/emacs.c: Include "sheap.h".
19627         (report_sheap_usage): Remove decl.
19628         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
19629         Don't assume ptrdiff_t can be printed as int.
19630         * src/gmalloc.c [HYBRID_MALLOC]:
19631         Include "sheap.h" rather than declaring its contents by hand.
19632         (get_current_dir_name, gget_current_dir_name)
19633         (hybrid_get_current_dir_name): Remove.
19634         (emacs_abort): Remove duplicate decl.
19635         (aligned_alloc): Undef, like malloc etc.
19636         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
19637         Make it a bit more efficient.
19638         (malloc_find_object_address): Remove unused decl.
19639         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
19640         (mstats, memory_warnings): Declare only if GC_MCHECK.
19641         * src/lisp.h (emacs_get_current_dir_name):
19642         New decl, replacing get_current_dir_name.
19643         * src/sheap.c: Include sheap.h first.
19644         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
19645         (debug_sheap): Now static.
19646         (bss_sbrk_buffer_end): Remove; no longer used.
19647         (bss_sbrk_ptr): Now static and private.
19648         (bss_sbrk_did_unexec): Now bool.
19649         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
19650         (bss_sbrk): Don't treat request_size 0 as special, since the code
19651         works without this being a special case.
19652         Avoid overflow if request size exceeds INT_MAX.
19653         (report_sheap_usage): Remove; now done in emacs.c.
19654         * src/sheap.h: New file.
19655         * src/sysdep.c (get_current_dir_name): Remove macro.
19656         Include "sheap.h".
19657         (emacs_get_current_dir_name): Rename function from
19658         get_current_dir_name.  Handle HYBRID_MALLOC here;
19659         this is simpler.
19660         (Bug#22086)
19662 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19664         Report static heap usage on non-Cygwin, too
19666         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
19667         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
19668         on platforms other than Cygwin (Bug#22086).
19670 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19672         Pacify GCC on extern decls
19674         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
19675         to pacify recent GCC (Bug#22086).
19677 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19679         Add musl patch to support HYBRID_MALLOC on elf systems
19681         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
19682         (__default_morecore): Here, in particular.
19683         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
19684         New variable SHEAP_OBJ.
19685         * src/Makefile.in: Use it.
19686         (Bug#22086)
19688 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
19690         unexelf.c hook to support HYBRID_MALLOC on ELF
19692         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
19693         Define bss_sbrk_did_unexec (Bug#22086).
19695 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19697         Link temacs with gnulib compiled with -Demacs
19699         This is done to support HYBRID_MALLOC, since some static variables
19700         (e.g., last_environ in putenv.c) hold pointers to memory malloced
19701         before dumping (Bug#22086).
19702         * lib/Makefile.am: Add incantation to install libegnu.a.
19703         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
19704         (temacs$(EXEEXT)): Use it.
19706 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
19708         Internal linkage for gmalloc etc. if HYBRID_MALLOC
19710         This avoids clashes with symbols if the after-dump malloc is
19711         derived from Doug Lea's implementation (Bug#22086).
19713         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
19714         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
19715         declarations below to `static' ones.
19716         (aligned_alloc): Declare for !MSDOS as well.
19717         (heapsize, _fraghead): Move resp. copy declaration downwards.
19718         For HYBRID_MALLOC, conditionalize out the other definitions,
19719         since the previous `static' declarations double as tentative
19720         definitions, anyway.
19721         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
19722         (__realloc_hook, __memalign_hook): Conditionalize out.
19723         (cfree, memalign, valloc): Ditto.
19725 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19727         -
19729         -
19731         -
19733 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19735         Merge from origin/emacs-25
19737         3f481ad Rename xref-query-replace to xref-query-replace-in-results
19738         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
19739         2111e0e Comment out next-error-function integration in xref
19740         4e11ad3 Correct a use of "which" in intro.texi
19741         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
19742         76045f7 Don't operate on menu bar of nonexistent frame
19743         c32f3bc Unbreak the GNUstep build.
19745 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
19747         -
19749         -
19751 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
19753         Re-enable checks in member, memql, delete to complain about non-lists
19755         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
19757 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19759         Clean up compilation warnings
19761 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
19763         Make async resolution more efficient
19765         * src/process.c (wait_reading_process_output): Use a list of
19766         process objects instead of looping through an array to check
19767         for name resolution.  This should be much faster.
19769 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19771         More async memory leaks
19773         * src/process.c (check_for_dns): Free even more allocated async stuff.
19775 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19777         Compilation for for systems with getaddrinfo_a
19779         * src/process.c (Fmake_network_process): Make stuff work again on
19780         systems with getaddrinfo_a.
19782 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19784         Save correct server data
19786         * src/process.c (connect_network_socket): Save the correct contact
19787         info for servers.
19789 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19791         Compilation for for non-GNU systems
19793         * src/process.c (Fmake_network_process): Make compilation work
19794         again on hosts that don't have getaddrinfo_a.
19796 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19798         Avoid memory leaks in async DNS
19800         * src/process.c (check_for_dns): Free async DNS resources after
19801         they've been used.
19803 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19805         * src/process.c (check_for_dns): Free the result data.
19807 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19809         Fix server connections
19811         * src/process.c (Fmake_network_process): Make creating server
19812         listening ports work again.
19814 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19816         Further make_network_process clean up
19818         * src/process.c (Fmake_network_process): Remove setting of unused
19819         family variable.
19821 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19823         Clean up GETADDRINFO usage in make-network-process
19825         * src/process.c (Fmake_network_process): Clean up the GETADDRINFO
19826         handling.
19828 2016-01-29  Lars Ingebrigtsen  <larsi@gnus.org>
19830         Implement asynchronous name resolution
19832         * src/process.c (Fmake_network_process): Do asynchronous DNS
19833         lookups if we have getaddrinfo_a and the user requests :nowait.
19834         (check_for_dns): New function.
19835         (wait_reading_process_output): Check for pending name
19836         resolution in the idle loop.
19838         * src/process.h: Add structure for async DNS.
19840 2016-01-28  Glenn Morris  <rgm@gnu.org>
19842         Remove some useless-use-of eval.
19844         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
19845         * lisp/gnus/nnrss.el (xml): Simply require it.
19846         (xml-rpc-method-call): Use declare-function.
19848 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19850         Fix memory leak
19852         * src/process.c (connect_network_socket): Free previous sockaddr
19853         before allocating a new one.
19855 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19857         Return IP addresses in the correct order
19859         * src/process.c (Fmake_network_process): Return the IP addresses
19860         in the same order as getaddrinfo does.
19861         (set_network_socket_coding_system): Clean up the code slightly.
19863 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19865         Add checks for getaddrinfo_a
19867         * configure.ac: Detect getaddrinfo_a.
19869 2016-01-28  Lars Ingebrigtsen  <larsi@gnus.org>
19871         Refactor make_network_process
19873         * src/process.c (set_network_socket_coding_system)
19874         (connect_network_socket): Refactor out of
19875         make_network_process to allow calling connect_network_socket
19876         asynchronously.
19877         (Fmake_network_process): Do nothing but parsing the parameters
19878         and name resolution, leaving the connection to
19879         connect_network_socket.
19881 2016-01-28  Glenn Morris  <rgm@gnu.org>
19883         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
19884         Warn if defcustom has no type.  (Bug#16276)
19886 2016-01-27  Glenn Morris  <rgm@gnu.org>
19888         * test/lisp/vc/vc-hg-tests.el: Move from test/automated/.
19890 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19892         (rng-c-fix-escaped-newlines): Use subst-char-in-string
19894         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
19895         Use subst-char-in-string.
19897 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19899         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
19901         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
19902         (sgml-calculate-indent): Use it.
19904 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19906         * lisp/org: Fix some compiler warnings
19908         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
19909         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
19910         (*this*): Declare as dyn-bound.
19911         (org-babel-expand-src-block, org-babel-load-in-session)
19912         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
19913         Mark unused args.
19914         (org-babel-combine-header-arg-lists): Remove unused var `args'.
19915         (org-babel-find-named-block): Remove unused var `msg'.
19917         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
19918         Declare as dyn-bound.
19919         (org-edit-src-code): Remove unused var `lfmt'.
19920         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
19922 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
19924         * lisp/font-lock.el: Use #' to quote function symbols
19926 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
19928         Improve user name completion in Tramp
19930         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
19931         Call also "getent passwd" or "getent group", if possible.
19932         (tramp-parse-putty): Cache the result.
19934 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
19936         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
19938 2016-01-20  Glenn Morris  <rgm@gnu.org>
19940         Remove handling of non-string time-stamp formats, obsolete for 20 years.
19942         * lisp/time-stamp.el (time-stamp-format): Doc fix.
19943         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
19944         (time-stamp-string): Ignore non-string formats.
19946 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19948         Anoter fix for problematic merge from emacs-25
19950         * src/w32fns.c (globals_of_w32fns): Move initialization of
19951         resetstkoflw to a non-Cygwin part.
19953 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
19955         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
19957 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
19959         Fix MS-Windows build broken by a botched merge from emacs-25
19961         * src/w32.c (w32_crypto_hprov): New static variable.
19962         (globals_of_w32): Initialize w32_crypto_hprov.
19963         (w32_init_crypt_random, w32_init_random): New functions.
19964         Include wincrypt.h.
19965         * src/w32.h (w32_init_random): Add prototype.
19967 2016-01-19  Vincent Belaïche  <vincentb1@users.sourceforge.net>
19969         Correct a whole bunch of bugs coming with renamed cell relocation.
19971         * lisp/ses.el (ses-localvars): rename variable
19972         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
19973         and adjust the comment about it.
19974         (ses-plist-delq): new defun.
19975         (ses--ses-buffer-list): new defvar.
19976         (ses--unbind-cell-name): new defun.
19977         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
19978         (ses-relocate-formula): Undo change of
19979         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
19980         preventing relocation for named cell --- now doing this is delegated
19981         to function `ses-relocate-symbol'.
19982         (ses-relocate-range): In docstring, undo change of
19983         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
19984         lower case as it is not a variable.
19985         (ses-relocate-all): Cell name relocation : 1) check that cell is a
19986         renamed cell by testing `ses-cell' property to :ses-named, rather than
19987         comparing name to corresponding standard name. Set rowcol of renamed
19988         cell into the hashmap --- `ses-cell' property must not be used for
19989         that as the same name can be used for different locations in different
19990         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
19991         `local-variable-p' to check if cell name is already in use in this
19992         sheet or needs initialisation.
19993         (ses-relocate-all): Cell value relocation : 1) like for name
19994         relocation use the `ses-cell' property rather than comparing actual
19995         name to corresponding standard name. 2) Correct bug introduced in
19996         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
19997         made the other way round than the intention --- ie value relocation
19998         was disabled for standard cell, not for renamed cell as was the
19999         intention.
20000         (ses-relocate-all): Add loop for unbinding deleted renamed cells
20001         names.
20002         (ses-killbuffer-hook): new defun.
20003         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
20004         kill buffer hook, plus pushing current buffer if new in list.
20005         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
20006         into `ses--in-killing-named-cell-list'.
20007         (ses-rename-cell): Remove update of variable
20008         `ses--renamed-cell-symb-list', this variable is renamed to
20009         `ses--in-killing-named-cell-list', and its setting is done in
20010         functions `ses-delete-row' and , `ses-delete-column' now.
20011         (ses-rename-cell): Change correction of
20012         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
20013         computation of the range over which `cursor-intangible' property was
20014         to be updated. This correction was ok for non spilling cells, but not
20015         for cells spilling over following blank cells. Simply use
20016         `next-single-property-change' rather than computing the end column
20017         from column widths.
20019 2016-01-18  John Wiegley  <johnw@newartisans.com>
20021         -
20023 2016-01-18  John Wiegley  <johnw@newartisans.com>
20025         Merge from origin/emacs-25
20027         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
20028         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
20029         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
20030         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
20031         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
20032         86e4513 Fix incompatbilities with MS-Windows 2000 and older
20033         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
20034         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
20035         39afa42 Fix tests for active region in hideif.el
20036         05df666 Fix interactive specs in some hideif.el commands
20038 2016-01-18  John Wiegley  <johnw@newartisans.com>
20040         -
20042 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20044         Avoid stdio in SIGINT handler
20046         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
20047         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20048         * lib/ignore-value.h: New file, from gnulib.
20049         * src/keyboard.c: Include it.
20050         (write_stdout, read_stdin): New functions.
20051         (handle_interrupt): Use them instead of printf and getchar,
20052         and avoid fflush when handling signals.
20054 2016-01-18  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
20056         Refactor mml-smime.el, mml1991.el, mml2015.el
20058         (Maybe this is the last merge from Gnus git to Emacs git)
20060         Cf. discussion on ding mailing list, messages in
20061         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
20062         Common code from the three files mml-smime.el, mml1991.el, and
20063         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
20064         to gnus-util.el.
20066         The code is supported by test cases with necessary test keys.
20068         Documentation in message.texi is updated.
20070         * doc/misc/message.texi (Security, Using S/MIME):
20071         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
20072         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
20073         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
20075         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
20076         New functions.
20078         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
20079         (epa--select-keys): Autoload.
20080         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
20081         (mml-secure-openpgp-signers): New user option;
20082         make mml1991-signers and mml2015-signers obsolete aliases to it.
20083         (mml-secure-smime-signers): New user option;
20084         make mml-smime-signers an obsolete alias to it.
20085         (mml-secure-openpgp-encrypt-to-self): New user option;
20086         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
20087         aliases to it.
20088         (mml-secure-smime-encrypt-to-self): New user option;
20089         make mml-smime-encrypt-to-self an obsolete alias to it.
20090         (mml-secure-openpgp-sign-with-sender): New user option;
20091         make mml2015-sign-with-sender an obsolete alias to it.
20092         (mml-secure-smime-sign-with-sender): New user option;
20093         make mml-smime-sign-with-sender an obsolete alias to it.
20094         (mml-secure-openpgp-always-trust): New user option;
20095         make mml2015-always-trust an obsolete alias to it.
20096         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
20097         New user options.
20098         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
20099         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
20100         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
20101         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
20102         (mml-secure-passphrase-callback, mml-secure-check-user-id)
20103         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
20104         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
20105         (mml-secure-fingerprint, mml-secure-filter-keys)
20106         (mml-secure-normalize-cust-name, mml-secure-select-keys)
20107         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
20108         (mml-secure-self-recipients, mml-secure-recipients)
20109         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
20111         * lisp/gnus/mml-smime.el: Require epg;
20112         refactor declaration and autoloading of epg functions.
20113         (mml-smime-use): Doc fix.
20114         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
20115         Obsolete.
20116         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
20117         Use format instead of gnus-format-message.
20118         (mml-smime-epg-secret-key-id-list): Remove variable.
20119         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
20120         (mml-smime-epg-find-usable-secret-key): Remove functions.
20121         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
20123         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
20124         (mml1991-passphrase-cache-expiry): Obsolete.
20125         (mml1991-epg-secret-key-id-list): Remove variable.
20126         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
20127         (mml1991-epg-find-usable-secret-key): Remove functions.
20128         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
20130         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
20131         (mml2015-passphrase-cache-expiry): Obsolete.
20132         (mml2015-epg-secret-key-id-list): Remove variable.
20133         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
20134         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
20135         (mml2015-epg-find-usable-secret-key): Remove functions.
20136         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
20137         (mml2015-epg-encrypt): Refactor.
20139 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
20141         Merge from gnulib
20143         This mostly just updates copyright dates of gnulib files.
20144         It also updates to the latest version of texinfo.tex.
20146 2016-01-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20148         Move variables to inner loop, preparing for Mac port merge
20150         * src/keyboard.c (command_loop_1): Move variables `cmd',
20151         `keybuf', and `i' to inner loop.
20153 2016-01-17  Bill Wohler  <wohler@newt.com>
20155         * lisp/mh-e/mh-e.el (mh-version): Add +git to version.
20157 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20159         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
20161         (syntax-ppss):
20162         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
20164 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20166         lisp/nxml: Use syntax-tables for comments
20168         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
20169         (nxml-mode): Set syntax-ppss-table.
20170         Use sgml-syntax-propertize-function for syntax-propertize-function.
20171         Let font-lock highlight strings and comments.
20172         (nxml-degrade): Don't touch "nxml-inside" property any more.
20173         (nxml-after-change, nxml-after-change1): Remove functions.
20174         (comment): Don't set fontify rule any more.
20175         (nxml-fontify-attribute): Don't highlight the value any more.
20176         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
20177         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
20179         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
20180         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
20181         (nxml-clear-inside, nxml-set-inside): Remove.
20182         (nxml-scan-after-change): Remove function.
20183         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
20184         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
20185         (nxml-move-outside-backwards):
20186         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
20187         nxml-inside-start behavior.
20189         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
20190         (nxml-debug-clear-inside): Remove macros.
20192         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
20193         (xmltok-scan-after-comment-open): Simplify.
20195 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20197         * lisp/progmodes/elisp-mode.el
20198         (elisp--font-lock-flush-elisp-buffers): Fix comment
20200 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20202         * lisp/nxml: Use standard completion; it also works for company-mode
20204         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
20205         (nxml-completion-at-point-function): Remove.
20206         (nxml-mode): Don't set completion-at-point-functions.
20207         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
20208         (rng-completion-at-point): Rename from rng-complete and mark it
20209         non-interactive.  It is now to be used as completion-at-point-function.
20210         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
20211         (rng-complete-attribute-value): Don't perform completion, but return
20212         completion data instead.
20213         (rng-complete-qname-function, rng-generate-qname-list): Add a few
20214         arguments, previously passed via dynamic coping.
20215         (rng-strings-to-completion-table): Rename from
20216         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
20217         sorting and uniquifying.
20219         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
20220         (rng-completion-exact-p, rng-quote-string): Delete functions.
20222         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
20223         (rng-missing-attributes-message, rng-missing-element-message)
20224         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
20225         calling rng-quote-string everywhere.
20227 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
20229         Use sgml-electric-tag-pair-mode also in nxml-mode
20231         * lisp/nxml/rng-nxml.el: Require sgml-mode.
20232         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
20233         (rng-complete-qname-function): Use complete-with-action.
20235         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
20236         Let-bind forward-sexp-function, since nxml-mode binds it to
20237         something incompatible.
20239         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
20241 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20243         * lisp/nxml/xmltok.el: Mark the "sole --" rather than the comment
20244         opener.
20246         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
20247         marker on the "sole --" rather than on the comment opener.
20249 2016-01-15  Sam Steingold  <sds@gnu.org>
20251         replace `tramp-compat-split-string' (removed) with `split-string'
20253         (python-shell-tramp-refresh-process-environment)
20254         (python-shell-calculate-pythonpath): use `split-string'
20255         instead of defunct `tramp-compat-split-string'
20257 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
20259         Update nXML to use Emacs's Unicode support, and lexical-binding
20261         * etc/nxml/*.el: Remove obsolete char-name files.
20262         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
20263         var `next'.
20264         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
20265         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
20266         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
20267         (nxml-target-section-pos, nxml-depth-in-target-section)
20268         (nxml-outline-state-transform-alist)
20269         (nxml-outline-display-section-tag-function): Move decl before first use.
20270         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
20271         (nxml-char-name-alist, nxml-char-name-table)
20272         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
20273         (nxml-enable-char-name-set, nxml-disable-char-name-set)
20274         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
20275         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
20276         (nxml-insert-named-char): Use read-char-by-name instead.
20277         (nxml-char-ref-display-extra): Use get-char-code-property.
20278         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
20279         Remove function.
20280         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
20282 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
20284         Add "sg" method to Tramp
20286         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
20287         (Customizing Completion): Add function `tramp-parse-etc-group'.
20289         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
20290         (tramp-completion-function-alist-sg): New defconst.
20291         (top): Completion function for "sg" is
20292         `tramp-completion-function-alist-sg'.
20294         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
20295         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
20297 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
20299         Remove XEmacs compatibility in Tramp
20301         * doc/misc/tramp.texi: Replace flags by their hard coded name.
20302         Remove unused flags and the enclosed alternative text for XEmacs.
20304         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
20305         and "xemacs" flags to "unified" and "separate".  Remove flags
20306         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
20307         "emacsothername", "emacsotherdir" and "emacsotherfilename".
20308         (trampver):
20309         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
20311         * lisp/net/tramp.el (bkup-backup-directory-info)
20312         (directory-sep-char, ls-lisp-use-insert-directory-program)
20313         (outline-regexp, tramp-backup-directory-alist)
20314         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
20315         (tramp-file-name-regexp-unified)
20316         (tramp-file-name-regexp-separate)
20317         (tramp-completion-file-name-regexp-unified)
20318         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
20319         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
20320         (tramp-debug-message, tramp-progress-reporter-update)
20321         (with-tramp-progress-reporter)
20322         (tramp-rfn-eshadow-setup-minibuffer)
20323         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
20324         (tramp-rfn-eshadow-update-overlay)
20325         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
20326         (tramp-file-name-for-operation)
20327         (tramp-completion-file-name-handler)
20328         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
20329         (tramp-handle-directory-files)
20330         (tramp-handle-directory-files-and-attributes)
20331         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
20332         (tramp-handle-insert-file-contents, tramp-handle-load)
20333         (tramp-handle-shell-command)
20334         (tramp-handle-verify-visited-file-modtime)
20335         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
20336         (tramp-check-for-regexp, tramp-wait-for-regexp)
20337         (tramp-send-string, tramp-mode-string-to-int)
20338         (tramp-get-local-gid, tramp-check-cached-permissions)
20339         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
20340         (auto-save-file-name-transforms)
20341         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
20342         (tramp-clear-passwd, tramp-time-diff):
20343         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
20344         (directory-sep-char, tramp-adb-file-name-handler-alist)
20345         (tramp-adb-parse-device-names)
20346         (tramp-adb-handle-expand-file-name)
20347         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
20348         (tramp-adb-handle-file-local-copy)
20349         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
20350         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
20351         (tramp-adb-handle-shell-command)
20352         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
20353         (tramp-adb-maybe-open-connection):
20354         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
20355         (tramp-cache-print):
20356         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
20357         (tramp-bug, tramp-reporter-dump-variable)
20358         (tramp-load-report-modules, tramp-append-tramp-buffers):
20359         * lisp/net/tramp-compat.el (tramp-compat-funcall)
20360         (tramp-advice-file-expand-wildcards)
20361         (tramp-compat-temporary-file-directory)
20362         (tramp-compat-make-temp-file, tramp-compat-copy-file)
20363         (tramp-compat-delete-directory, )
20364         (tramp-compat-process-running-p):
20365         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
20366         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
20367         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
20368         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
20369         (tramp-gvfs-handle-file-local-copy)
20370         (tramp-gvfs-handle-file-name-all-completions)
20371         (tramp-gvfs-handle-file-notify-add-watch)
20372         (tramp-gvfs-monitor-file-process-filter)
20373         (tramp-gvfs-handle-file-readable-p)
20374         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
20375         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
20376         (tramp-gvfs-maybe-open-connection)
20377         (tramp-gvfs-parse-device-names):
20378         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
20379         (tramp-gw-open-connection, tramp-gw-open-network-stream):
20380         * lisp/net/tramp-sh.el (directory-sep-char)
20381         (tramp-sh-file-name-handler-alist)
20382         (tramp-sh-handle-file-truename)
20383         (tramp-sh-handle-set-visited-file-modtime)
20384         (tramp-sh-handle-verify-visited-file-modtime)
20385         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
20386         (tramp-sh-handle-file-acl)
20387         (tramp-sh-handle-file-name-all-completions)
20388         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
20389         (tramp-do-copy-or-rename-file-directly)
20390         (tramp-do-copy-or-rename-file-out-of-band)
20391         (dired-compress-file-suffixes, dired-remove-file)
20392         (tramp-sh-handle-dired-compress-file)
20393         (tramp-sh-handle-insert-directory)
20394         (tramp-sh-handle-expand-file-name)
20395         (tramp-sh-handle-start-file-process)
20396         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
20397         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
20398         (tramp-sh-handle-file-notify-add-watch)
20399         (tramp-sh-gvfs-monitor-dir-process-filter)
20400         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
20401         (tramp-find-executable)
20402         (tramp-open-connection-setup-interactive-shell)
20403         (tramp-find-inline-encoding, tramp-compute-multi-hops)
20404         (tramp-maybe-open-connection, tramp-convert-file-attributes)
20405         (tramp-get-remote-path, tramp-get-remote-touch):
20406         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
20407         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
20408         (tramp-smb-handle-delete-directory)
20409         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
20410         (tramp-smb-handle-make-directory-internal)
20411         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
20412         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
20413         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
20414         (tramp-smb-get-cifs-capabilities)
20415         (tramp-smb-maybe-open-connection):
20416         * lisp/net/trampver.el (tramp-repository-get-version):
20417         Remove XEmacs compat code.
20419         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
20420         (reporter-dump-variable): Declare functions.
20422         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
20423         (tramp-advice-minibuffer-electric-separator)
20424         (tramp-advice-minibuffer-electric-tilde)
20425         (tramp-handle-unhandled-file-name-directory):
20426         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
20427         (tramp-compat-font-lock-add-keywords)
20428         (tramp-compat-load, tramp-compat-number-sequence)
20429         (tramp-compat-split-string, tramp-compat-delete-dups):
20430         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
20431         Remove.
20433         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
20434         recursively.
20436 2016-01-14  K. Handa  <handa@gnu.org>
20438         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
20440         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
20441         second glyph only when there are enough glyphs.
20443 2016-01-13  Glenn Morris  <rgm@gnu.org>
20445         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
20447         or its hook, to move point.  (Bug#22348)
20449 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
20451         Merge missing commit from emacs-25 branch
20453         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
20454         New variables.
20455         (check-expensive, check-doit): New targets.
20457         * Makefile.in (check-expensive): New target.
20459         * test/lisp/autorevert-tests.el
20460         (auto-revert-test01-auto-revert-several-files):
20461         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
20462         (file-notify-test06-many-events):
20463         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
20464         (tramp-test27-start-file-process, tramp-test28-shell-command)
20465         (tramp-test29-vc-registered)
20466         (tramp-test31-special-characters-with-stat)
20467         (tramp-test31-special-characters-with-perl)
20468         (tramp-test31-special-characters-with-ls)
20469         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
20470         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
20471         (tramp-test35-unload): Tag the tests as :expensive-test.
20473 2016-01-11  John Wiegley  <johnw@newartisans.com>
20475         Merge from origin/emacs-25
20477         1f6898d test/automated/vc-hg.el: Support out-of-tree build
20478         3adb56e Minor change in tramp-tests.el
20479         2b535ba ; * etc/NEWS: Update the js.el entry.
20480         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
20481         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
20482         36b9539 Avoid an infloop when we run out of memory
20483         2006752 Avoid unnecessary failures of auto-saving after fatal error
20484         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
20485         552694a Revert attempt to use 'noexcept' in typedef
20486         6ad0d39 Update documentation of 'indirect-function'
20487         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
20488         303141a Update documentation for obsoleting 'syntax-begin-function'
20489         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
20490         e667bbb Document new features if Eshell
20491         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
20492         1089dc9 Handle too long commands in Tramp
20493         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
20494         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
20495         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
20496         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
20497         cca0f93 ; Account for spaces before the filename
20498         c71e1e8 Use short date for 'hg annotate', and output the author
20499         f50027b Spelling fix
20500         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
20501         cc140bc Document user-level functions in project.el
20502         f8208b6 Document the user-level features of the Xref package
20503         b131fb8 * loading.texi: Add `define-type' entry for load-history
20504         db3c2a8 Improve doc strings and prompts in xref.el
20505         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
20506         90fd798 Fix coding system for Tramp on OS X.
20507         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
20508         9dfcbf0 Update 'load-history' docs
20509         207e191 Fix (error ...) error
20510         457738f Correctly analyze brace arguments in templated C++ function declarations.
20511         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
20512         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
20513         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
20514         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
20515         4b37cba Improve documentation of Delete Selection mode
20516         a034dd3 Fix two project-find-file issues
20517         30abf29 Clarify doc string of 'dired-current-directory'
20518         e990bb2 Use the face of preceding text for displaying the ellipsis
20519         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
20520         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
20521         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
20522         648de81 ; Add NEWS entry for project.el
20523         671862f apropos-library: Skip obvious duplicates; don't error on generics
20524         51668a5 ; Grammar fix
20525         ed41d11 Add project-find-file and project-or-external-find-file
20526         056da45 ; Improve commentary in 'setup_for_ellipsis'
20527         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
20529 2016-01-11  John Wiegley  <johnw@newartisans.com>
20531         Merge from origin/emacs-25
20533         ce4a052 Add defvar-local to lisp-imenu-generic-expression
20534         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
20535         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
20536         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
20537         b6b47af Properly encode/decode base64Binary data in SOAP
20538         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
20539         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
20540                 Update the URI of MELPA and marmalade-repo.
20541                 Reported by CHENG Goa <chenggao@royau.me> in
20542                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
20543         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
20544         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
20545         7380990 Remove function wrongly on AWK Mode value of context
20546         fontification hook.
20547         d400753 * src/buffer.c: Stick with ASCII in doc string.
20548         221240c Reword transient-mark-mode doc string
20549         977d3ea Update doc string of 'selective-display'
20550         229c3fa Make C++ buffers writeable when writing their initial text
20551                 properties.
20552         f5c762c Additional changes for "make check-expensive"
20553         1729cf3 ; * admin/MAINTAINERS: Remove myself.
20554         33219d3 Apply text properties for <, > in new after-change function
20555                 (C++ Java Modes).
20557 2016-01-11  John Wiegley  <johnw@newartisans.com>
20559         Merge from origin/emacs-25
20561         9fb185a shr-tag-video bug fix
20562         6300655 Minor fixes in tramp-tests.el
20563         50575b1 Ensure redisplay when 'truncate-lines' is set
20564         0d9e80d Fix a doc string of 'transient-mark-mode'
20565         0000ae5 MS-Windows followup to latest gnulib update
20566         4bc5e02 Spelling fix
20567         f1093f7 Do secure signed Bcc handling
20569 2016-01-11  John Wiegley  <johnw@newartisans.com>
20571         Merge from origin/emacs-25
20573         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
20574         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
20575         71ea138 * lisp/align.el (align): Simplify a lambda
20576         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
20577         1f680db Fix compilation next-error in buffers with selective-display
20578         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
20579         1da116f Add SHA1 warnings for high network security settings
20580         e48bacd ; * etc/NEWS: Typo fix.
20582 2016-01-11  John Wiegley  <johnw@newartisans.com>
20584         Merge from origin/emacs-25
20586         43662a2 ; Clarify that xref is still experimental
20587         0a6e6ca ; * admin/release-process: Remove some obsolete records.
20588         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
20589         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
20590         0a7ad07 ; Re-arrange xref-related entries in NEWS.
20591         fe903ef Fix xref-find-references on MS-Windows
20592         55a28d8 ; Fixed visual bell artifact problem on NextStep.
20593         d064034 Document new features of tildify-mode
20594         964bea7 Document new features of Whitespace mode
20595         cd68f47 Improve documentation of new Hide-IfDef features
20596         723b8bf Fix regression in font-locking cl-assert and cl-check-type
20598 2016-01-11  John Wiegley  <johnw@newartisans.com>
20600         Merge from origin/emacs-25
20602         ef33bc7 Spelling and grammar fixes
20603         9c3dbab Fix copyright years by hand
20604         0e96320 Update copyright year to 2016
20606 2016-01-11  John Wiegley  <johnw@newartisans.com>
20608         Merge from origin/emacs-25
20610         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
20611         526d80c Port chart.el methods to cl-generic.
20612         410bb69 Add nt/INSTALL.W64 build instructions
20613         8f5b524 Add new input method 'programmer-dvorak'
20614         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
20615         bb83bb1 Fix EWW rendering of long RTL lines
20616         b1a8509 fix  bug#21054
20617         ce5ad12 Clean up cairo printing code
20619 2016-01-11  John Wiegley  <johnw@newartisans.com>
20621         Merge from origin/emacs-25
20623         6ee327d Add handle_user_signal_hook
20624         47580e0 Avoid writing to purespace
20625         0588be7 Remove unused variable
20626         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
20627         3b95e9c Use posix_openpt instead of openpty on Darwin
20628         86312ff Document support for ':documentation' in Lisp mode
20629         c930e75b Document new features of TeX mode
20630         7c83d84 Clarify docs of hscroll in RTL text
20631         4c8f8db Fix rendering of HTML pages that use character composition
20632         a8d37ca Avoid some compiler warnings in w32.c
20633         ce106f3de Undo ill-advised change
20634         be0bba4 Unbreak completion in python-mode buffers
20636 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20638         Adding example replies to bug-triage.
20640         * admin/notes/bug-triage: Added example replies. Also, as requested,
20641           making the process notes into more of a checklist.
20643 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
20645         Rename the notes/admin/triage file to bug-triage.
20647         * CONTRIBUTE: Change reference to the triage file name.
20648         * admin/notes/triage: Rename file to admin/notes/bug-triage.
20650 2016-01-08  K. Handa  <handa@gnu.org>
20652         Fix outdated comments.
20654 2016-01-06  Glenn Morris  <rgm@gnu.org>
20656         Allow creation of loaddefs files without timestamps.
20658         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
20659         (autoload-generate-file-autoloads, update-directory-autoloads):
20660         If autoload-timestamps is nil, write "t" instead of file timestamp.
20661         (autoload-find-destination, update-directory-autoloads):
20662         If timestamp is "t", use the modtime of the output file instead.
20664 2016-01-06  Glenn Morris  <rgm@gnu.org>
20666         Doc tweaks.
20668         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
20669         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
20670         (calendar-iso-from-absolute):
20671         * lisp/calendar/cal-tex.el (cal-tex-comment):
20672         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
20674 2016-01-06  Glenn Morris  <rgm@gnu.org>
20676         Build tweaks related to tags files.
20678         * lib-src/Makefile.in (tagsfiles): New variable.
20679         (TAGS): Also depend on the source files.  Use our own etags program.
20680         * lisp/Makefile.in (ETAGS): Add EXEEXT.
20681         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
20682         Remove.
20683         (tagsfiles): New, replacing lisptagsfiles1 etc.
20684         Remove irrelevant source files here rather than in the TAGS rule.
20685         (${ETAGS}): New rule.
20686         (TAGS): Also depend on the etags executable.
20687         * lwlib/Makefile.in (EXEEXT): New, set by configure.
20688         (ETAGS): Add EXEEXT.
20689         (${ETAGS}): New rule.
20690         (ctagsfiles): Use "wildcard".
20691         (TAGS): Also depend on the etags executable.
20692         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
20693         (${ETAGS}): New rule.
20694         (TAGS): Fix dependencies.
20695         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
20696         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
20697         Remove "-t" argument.
20698         (${ETAGS}): New rule.
20699         (tagsfiles): New variable.
20700         (TAGS): New rule, with proper dependencies.
20701         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
20702         (ctagsfiles1, ctagsfiles2): Use "wildcard".
20703         (ctagsfiles3): Remove.
20704         (TAGS): Depend on etags.
20705         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
20706         directories decide if updates are needed.
20708 2016-01-06  Glenn Morris  <rgm@gnu.org>
20710         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
20712 2016-01-06  Glenn Morris  <rgm@gnu.org>
20714         * test/lisp/emacs-lisp/package-tests.el
20716         (package-test-macro-compilation): Fixup branch merge.
20718 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
20720         Fix fallout from merging emacs-25 branch in test/
20722         * .gitignore: Update for the new place of biditest.txt.
20723         * test/automated/: Directory removed.  All files moved to their
20724         proper places.
20725         * test/etags/: Directory removed.  All files moved to their proper
20726         places.
20727         * test/automated/url-parse-tests.el: File removed; it was an exact
20728         copy of the same file in test/lisp/url/.
20729         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
20731 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20733         Spelling fixes
20735 2016-01-04  Daniel Colascione  <dancol@dancol.org>
20737         Let users disable unsafe signal handling code
20739         * src/keyboard.c (syms_of_keyboard): New user variables
20740         `attempt-stack-overflow-recovery' and
20741         `attempt-orderly-shutdown-on-fatal-signal'.
20742         * src/sysdep.c (stack_overflow): Check
20743         `attempt-stack-overflow-recovery'.
20744         * src/emacs.c (terminate_due_to_signal): Check
20745         `attempt-orderly-shutdown-on-fatal-signal'.
20747 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
20749         * configure.ac: Add error message for gfile on Nextstep.
20751 2016-01-02  John Wiegley  <johnw@newartisans.com>
20753         Merge branch 'emacs-25-merge'
20755 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20757         Align textually on fix done for emacs-25 branch for bug#21054
20759         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
20760         and useless `(if t ...)' in order to align textually on fix done for
20761         emacs-25 branch for bug#21054.
20763 2016-01-01  K. Handa  <handa@gnu.org>
20765         support rendering of wider range of combinging characters by ftfont backend
20767         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
20768         supports rendering of combining characters, call
20769         font-shape-gstring.
20771         * src/font.c (Ffont_get): Handle `combining-capability' property.
20772         (syms_of_font): New symbol ":combining-capability'.
20774         * src/font.h (struct font_driver): New member combining_capability.
20776         * src/ftfont.c: Include "category.h".
20777         (ftfont_driver): Initialize combining_capability to
20778         ftfont_combining_capability.
20779         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
20780         FLT in advance.
20781         (ftfont_combining_capability): New function.
20783 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
20785         Add notes on bug triage procedure
20787         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
20788         * admin/notes/triage: New file explaining triage procedure.
20790 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20792         Correct ses-rename-cell cursor-intangible text prop updating.
20794         There were two problems:
20796         - First ses-rename-cell has to work when called non interactively
20797           (with non-nil CELL argument), so in this case the start pos of
20798           put-text-property cannot be plainly (point), you need a
20799           ses-goto-print call before
20801         - Second, the range itself was computed erronously, only the first
20802           char was affected instead of the full cell width. This was not
20803           noticeable prior to changes (Deprecate `intangible' and
20804           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
20806         * lisp/ses.el (ses-rename-cell): Correct computation of position range
20807         to which the 'cursor-intangible text property has to be set to cell
20808         new name.
20810 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20812         Don't fake empty cells value by "" when printing with a lambda.
20814         When using a lambda expression printer function the user should be
20815         free to format differently a really empty cell, ie. containing nil,
20816         from a cell containing an empty string "".
20818         * lisp/ses.el (ses-call-printer): Replace `(or value "")' by just
20819         `value' in the case of a lambda expression printer function.
20821         * doc/misc/ses.texi (Printer functions): Add example and
20822         description about lambda expression printer function handling all
20823         the possible values, including unexpected ones.
20825 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20827         Quick temporary hack to fix curcell refreshing.
20829         The problem was caused by change: 2015-04-13 Deprecate `intangible'
20830         and `point-entered' properties. The problem is that this change has
20831         removed the (setq ses--curcell t) setting in the ses-command-hook
20832         function.
20834         * lisp/ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
20835         a condition to call function `ses-set-curcell'. Comment this as a quick
20836         temporary hack to make it work, as I don't know yet whether a definite
20837         correction would be to make the ses-set-curcell at every ses-check-curcell,
20838         or to revert to the previous approach, ie marking ses--curcell as out-of-date
20839         at every potentially cursor motion command.
20841 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20843         Restrictive URL checking tweaks
20845         * lisp/net/eww.el (eww): Check whether the domain is
20846         restrictive instead of the string
20847         (http://македонија.icom.museum is restrictive even if each
20848         part is from a different script).
20850 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20852         New function `puny-highly-restrictive-domain-p'
20854         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
20855         (puny-highly-restrictive-domain-p): New function.
20857 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20859         eww build fix (require puny)
20861 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
20863         Transform non-restrictive domains to punycode for display
20865         * lisp/net/eww.el (eww): Check whether the domain is Highly
20866         Restrictive in the Unicode IDNA sense.
20868 2015-12-29  John Wiegley  <johnw@newartisans.com>
20870         Merge emacs-25 into master (using imerge)
20872 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20874         Further Unicode restrictive fixups
20876         * lisp/net/puny.el (puny-highly-restrictive-p): Include the extra
20877         identifier characters from table 3.
20879 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
20881         Add a new function to say whether a string is restrictive
20883         * lisp/net/puny.el (puny-highly-restrictive-p): New function.
20885 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20887         Mention the new puny.el library
20889 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20891         IDNA-related fixes for the URL library
20893         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
20894         the Host: header.
20896         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
20897         domain names, but leave them as UTF-8, so that they can be
20898         IDNA-encoded later when contacting the host.
20900 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20902         IDNA-encode all domain names in `open-network-stream'
20904         * lisp/net/network-stream.el (open-network-stream)
20905         (network-stream-open-plain, network-stream-open-starttls):
20906         IDNA-encode all domain names, if needed.
20908 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20910         Fix puny-encoding all-non-ASCII domains
20912         * lisp/net/puny.el (puny-encode-string): Fix the all-non-ASCII
20913         encoding case.
20915 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20917         shr link traversal fixup
20919         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
20921 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20923         Reconnect erc even on server errors
20925         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
20926         reconnect even if a server error has occurred (bug#18527).
20928 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20930         Fix punycode short circuit logic
20932         * lisp/net//puny.el (puny-encode-domain): Fix short-circuit logic.
20934 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20936         IDNA speed up
20938         * lisp/net/puny.el (puny-encode-domain): Make the common non-IDNA case faster
20940 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20942         Add IDNA domain encode/decode functions
20944         * lisp/net/puny.el (puny-decode-domain): New function.
20945         (puny-encode-domain): Ditto.
20946         (puny-decode-digit): Fix digit decoding error.
20948 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
20950         Rename idna.el to puny.el
20952         * lisp/net/puny.el: Renamed from idna.el to avoid name collisions with
20953         the external idna.el library.
20955 2015-12-27  Katsumi Yamaoka  <yamaoka@jpl.org>
20957         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
20959         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
20960         Don't use split-string with 4th arg for old Emacsen compatibility.
20962 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20964         * lisp/net/idna.el (idna-decode-string-internal): Implement
20965         decoding.
20967 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20969         Further IDNA tweaks
20971         (idna-encode-string): Make idna-encode-string safe for
20972         non-ASCII use.
20974 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20976         Clean up the code slightly
20978 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
20980         Added basic idna encoding support
20982         * lisp/net/idna.el: New file.
20984 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
20986         Disconnection fixes for erc
20988         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
20989         reconnect if the user has disconnected explicitly (bug#4589).
20991 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
20993         Further erc asynch fixes
20995         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
20996         erc-server-connect to return even if the connection is not
20997         ready.  Then erc-open and erc-server-reconnect do the
20998         same. (bug#5650).
21000 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
21002         Make erc connect asynchronously
21004         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
21005         reconnect asynchronously.
21007         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
21009 2015-12-27  David Edmondson  <dme@dme.org>
21011         Proxy error in erc with multiple clients
21013         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
21014         generated when multiple IRC clients talk to a single IRC proxy
21015         (bug#19034).
21017 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21019         Fix mml-sec build warnings
21021         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
21022         (bug#18718).
21024 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21026         (eww-setup-buffer): Restore left-to-right defaults
21028         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
21030 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
21032         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
21034 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
21036         Identify unsafe combinations of Bcc and encryption
21038         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
21039         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
21040         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
21042 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
21044         * shr.el (shr-descend): Allow using lambdas in external functions.
21046 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21048         * admin/gitmerge.el: Tweaks that seemed necessary
21050         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
21051         (gitmerge-maybe-resume): Provide explicit empty commit message.
21053 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
21055         Use a different port for TLS erc
21057         * lisp/erc/erc.el (erc-default-port-tls): New variable
21058         (bug#19497).
21059         * lisp/erc/erc.el (erc-tls): Use it.
21061 2015-12-25  Alain Schneble  <a.s@realize.ch>
21063         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21065         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21066         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21067         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21068         information in URL-struct.
21069         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21070         path and query into nil path and query, respectively.
21071         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21072         empty path into an absolute ("/") path.
21073         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21074         fragment-only URIs. Do not just return them unchanged.
21075         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21076         reference URI should not drop the last segment.
21078 2015-12-25  Alain Schneble  <a.s@realize.ch>
21080         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
21082         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
21083         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
21084         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
21085         information in URL-struct.
21086         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
21087         path and query into nil path and query, respectively.
21088         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
21089         empty path into an absolute ("/") path.
21090         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
21091         fragment-only URIs. Do not just return them unchanged.
21092         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
21093         reference URI should not drop the last segment.
21095 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21097         Let url use default file modes when copying files
21099         * lisp/url/url-handlers.el (url-copy-file): Use default file
21100         modes when copying files (bug#11400).
21102 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
21104         Doc fix for url-http
21106         * lisp/url/url-http.el (url-http): Document better return values
21107           (bug#13187) (tiny change)
21109 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21111         * eww.el (eww-display-html): Support <button> tags (bug#20485).
21113 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21115         Made ffap-url-p a defun instead of a defsubst
21117         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
21118         since there doesn't seem to be much of a reason for it to be a
21119         defsubst (bug#18203).
21121 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21123         Add a command to view files in the browser to dired
21125         * lisp/dired.el (dired-mode-map): Add the `W' command
21126         (bug#18810).
21128 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21130         Allow http://user:pass@foo/ URLs again
21132         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
21133         user/passwords in URLs (bug#19046).
21135 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21137         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
21139 2015-12-25  Samer Masterson  <samer@samertm.com>
21141         Autoload url-insert-buffer-contents
21143         * lisp/url/url-handlers.el: Add autoload cookie so that
21144         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
21146 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21148         Allow toggling colors in eww
21150         * doc/misc/eww.texi (Basics): Mention "C".
21152         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
21154         * lisp/net/shr.el (shr-use-colors): New variable.
21155         (shr-colorize-region): Use it.
21157 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
21159         Follow meta refresh tags in eww
21161         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
21163 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21165         More eww file name coding fixes
21167         * eww.el (eww-decode-url-file-name): Use the base coding
21168         system to check for encodability.
21170 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21172         Always save eww history
21174         * eww.el (eww-setup-buffer): Always save history, even when
21175         called from outside the eww buffer (bug#19638).
21177 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21179         Default web pages to right-to-left
21181         * eww.el (eww-mode): Most web pages are left-to-right, so make
21182         that the default (bug#19801).
21184         * shr.el (shr-tag-html): Respect "dir" attributes
21185         (left-to-right, right-to-left).
21187 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21189         Make toggling checkboxes work again
21191         * eww.el (eww-update-field): Make toggling checkboxes work
21192         again (bug#21881).
21194 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21196         Don't store cookies with empty names
21198         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
21199         cookies with empty names (bug#21936).
21201 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21203         Stop rendering HTML before specdlr exhaustion
21205         Fixes: 22117
21207         * shr.el (shr-descend): Stop rendering before we run out of
21208         specpdl room (bug#22117).
21210 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21212         Use cl-reduce, not reduce.
21214 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21216         Allow several <tbody> tags in shr
21218         * shr.el (shr-table-body): New function to find the real body
21219         of a table.
21220         (shr-tag-table): Use it to render several <tbody> tags in a
21221         table (bug#22170).
21223 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21225         Make prettier unique file names in eww
21227         (eww-make-unique-file-name): Make unique file names by making
21228         files like foo(2).jpg instead of foo(1)(2).jpg.
21230 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21232         Decode hex-encoded URLs before using them as file names
21234         * eww.el (eww-decode-url-file-name): New function.
21235         (eww-download-callback): Use it to decode file names before
21236         saving them.
21238 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>
21240         Add FreeBSD cert bundle
21242         * doc/misc/emacs-gnutls.texi (Help For Users): Document
21243         FreeBSD bundle.
21245         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
21247 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21249         Allow overriding shr functions from eww
21251         * eww.el (eww-display-html): Allow overriding elements in
21252         `shr-external-rendering-functions'.
21254 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21256         Ignore invalid SVG images
21258         * shr.el (shr-tag-svg): Ignore SVG images that have no width
21259         or height, because these can't be displayed by ImageMagick,
21260         anyway.
21262 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
21264         shr table rendering fix
21266         * shr.el (shr-tag-table): Allow rendering body-less tables
21267         that have headers.
21269 2015-12-22  Sam Steingold  <sds@gnu.org>
21271         clipboard should still work even if interprogram-* is disabled
21273         (clipboard-yank): When `interprogram-cut-function' is nil,
21274         bind it to `gui-selection-value' - the default value.
21275         (clipboard-kill-region, clipboard-kill-ring-save): When
21276         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
21277         the default value.
21279 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
21281         Fix bootstrap issue with dired-loaddefs
21283         * lisp/dired.el: Autoloads for secondary files loaded optionally.
21285 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21287         dired generate autoloads to non-versioned file.
21289         * lisp/dired.el: Remove autoloads.
21290         * lisp/Makefile.in: Add dired to autogenel.
21291         * lisp/dired-aux.el, lisp/dired-x.el: Update file local.
21292         * test/lisp/dired-tests.el: Add new test.
21294 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21296         eieio generate autoloads to non-versioned file.
21298         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
21299         * lisp/emacs-lisp/eieio.el, lisp/emacs-lisp/eieio-core.el:
21300           Remove autoloads.
21301         * lisp/emacs-lisp/eieio-compat.el, lisp/emacs-lisp/eieio-custom.el,
21302           lisp/emacs-lisp/eieio-opt.el: Update file local.
21303         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
21305 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21307         htmlfontify generate autoload to non-versioned file.
21309         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
21310         * lisp/hfy-cmap.el: Update file local.
21311         * lisp/htmlfontify.el: Remove autoloads, add require.
21312         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
21314 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21316         ibuffer generate autoloads to non-versioned file.
21318         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
21319         * lisp/ibuf-ext.el: Update file local.
21320         * lisp/ibuffer.el: Remove autoloads and add a require.
21321         * test/lisp/ibuffer-tests.el: Test that autoload is working.
21323 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21325         rmail generate autoloads to non-versioned file.
21327         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
21328         * lisp/mail/rmail.el: Remove autoloads, add require.
21329         * lisp/mail/rmailedit.el, lisp/mail/rmailkwd.el:
21330         * lisp/mail/rmailmm.el, lisp/mail/rmailmsc.el:
21331         * lisp/mail/rmailsort.el, lisp/mail/rmailsum.el:
21332         * lisp/mail/undigest.el: Update file-local.
21333         * test/lisp/mail/rmail-tests.el:
21335 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21337         Add autoload-force target.
21339         * lisp/Makefile.in (autoload-force): New target.
21341 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21343         ps-print generate autoloads to non versioned file.
21345         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
21346         * lisp/ps-print.el: Remove autoloads.
21347         * lisp/ps-mule.el: Update file-local.
21348         * test/lisp/ps-print-tests.el: Test autoload functionality.
21350 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
21352         reftex generate autoloads to non versioned file.
21354         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
21355         * lisp/textmodes/reftex.el: Remove autoloads.
21356         * lisp/textmodes/reftex-auc.el, lisp/textmodes/reftex-cite.el:
21357         * lisp/textmodes/reftex-dcr.el, lisp/textmodes/reftex-global.el:
21358         * lisp/textmodes/reftex-index.el, lisp/textmodes/reftex-parse.el:
21359         * lisp/textmodes/reftex-ref.el, lisp/textmodes/reftex-sel.el:
21360         * lisp/textmodes/reftex-toc.el: Update autoload file-local.
21361         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
21362           function.
21364 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
21366         * lisp/calculator.el (calculator-define-key): Undo last change
21368         Make map argument mandatory instead (bug#22106).
21369         (calculator-add-operators): Pass the argument that's not optional any more.
21371 2015-12-03  Glenn Morris  <rgm@gnu.org>
21373         * Makefile.in: Avoid duplication.
21375         (have-tests): New rule.
21376         (check, check-maybe): Use it.
21378 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
21380         make check unconditional, check-maybe top-level.
21382          * Makefile.in: Add check-maybe target.
21383          * test/Makefile.in: Restore unconditional behaviour to make check.
21385 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
21387         Tests now support out-of-source-build.
21389          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
21390            about current working directory.
21392 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
21394         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
21396 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21398         Improve documentation and clean up.
21400          * test/Makefile.in: Improve documentation, use EMACS variable
21401            correctly, and clean up makefile rules.
21403 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21405         Update file headers for name change.
21407          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
21409 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21411         Test files renamed to new scheme.
21413          * (finalizer-tests.el): Now renamed alloc-tests.el
21414          * (zlib-tests.el): Now renamed decompress-tests.el.
21416 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
21418         Tests now depend on source files
21420          * test/Makefile.in: Include dependences from tests to source files.
21421          * test/make-test-deps.emacs-lisp: New file
21422          * .gitignore: Ignore generated make include file
21424 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21426         * lisp/progmodes/which-func.el: Improve disabling the mode
21428         Use lexical-binding.
21429         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
21430         (which-func, which-func-format): Remove redundant :group arg.
21431         (which-func-try-to-enable): New function.
21432         (which-func-ff-hook, which-function-mode): Use it.
21433         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
21434         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
21436 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21438         * lisp/calculator.el (calculator-define-key): Silence warning
21440         ...about unknown calculator-mode-map.
21442 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21444         * lisp/calculator.el: more improvements and bugfixes.
21446         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
21447           effect anyway.)
21449         - Simplify `calculator-number-to-string' by throwing most of the work
21450           onto `number-to-string', leaving just some tweaks for decimal inputs.
21451           This leads to some minor changes, for example, pasting "1x1" in hex
21452           mode would warn that "x" is ignored and result in "11" (and it wasn't
21453           done in decimal mode), whereas now it just ignores everything from the
21454           "x" and on and result in a "1" just like in decimal input mode.  Also,
21455           overflows are left for `number-to-string' to deal with.
21457         - `calculator-paste' is very simple as a result.
21459         - Extend the simplified `calculator-paste': with a prefix argument it
21460           pastes a string as if the characters were entered.  This can be used
21461           to reduce expressions, but note that it's a simple literal operation,
21462           so precedence can be messed, a number can be paster while entering a
21463           number, spaces and newlines matter, etc.
21465         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
21466           operator.
21468         - Fix a bug in `calculator-put-value': avoid grouping in the display
21469           that is used to construct `calculator-curnum'.  This would trigger
21470           when pasting or getting a value from a register in some radix mode
21471           with a large enough value.  Another fix: make the output radix equal
21472           the input one, otherwise numbers could be converted twice.
21474 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21476         * lisp/calculator.el: Re-do key bindings.
21478         Use a helper function that arranges a parent keymap that binds alternate
21479         case keys so if some letter key is unbound and it's un/shifted version
21480         is, it will get used.  This makes the global-map trickery unnecessary.
21482         Also switch to passing strings that name keys through `kbd'.
21484 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21486         * lisp/calculator.el: improve radix modes
21488         Fix prompt for some input radix with decimal output (eg, "BD" instead of
21489         the incorrect "B="); also, some minor docstring tweaks for these.
21491 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21493         * lisp/calculator.el: better reading of register names
21495         Use `register-read-with-preview' with a dynamically bound
21496         `register-alist' and a proper preview function to read register names.
21498 2015-11-29  Eli Barzilay  <eli@barzilay.org>
21500         * lisp/calculator.el: General improvements
21502         Use things like `when', `unless', and `push'.
21504         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
21505         non-electric mode.
21507 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
21509         Fix a problem with gfilenotify in filenotify-tests.el
21511         * test/lisp/filenotify-tests.el
21512         (file-notify--test-expected-events): Remove.
21513         (file-notify--test-cleanup): Do not set that variable.
21514         (file-notify--test-with-events): EVENTS can also be a list of lists.
21515         (file-notify-test02-events, file-notify-test04-file-validity):
21516         Adapt expected result.
21518 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21520         * .gitignore: Adjust to changes in 'test' directory structure.
21522 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
21524         Fix test/manual/etags/Makefile
21526         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
21527         changes in 'test' directory structure.
21529 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21531         Exclude resource dirs from search for tests.
21533         * test/Makefile.in: Test file locations are now found with find
21534           rather than using finds native functions.
21536 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21538         Add test targets without directory names.
21540          * (test/Makefile.in): Extend test_template to add two targets for each
21541            file.
21543 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
21545         * lisp/emacs-lisp/package.el: Require url-handlers
21547 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
21549         Move elisp-mode-tests to new function names.
21551          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
21552          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
21554 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
21556         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
21558 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
21560         Merge branch 'feature/standard-test-location'
21562 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
21564         * lisp/emacs-lisp/eieio.el: Add some default implementations
21566         (standard-class): Mark it obsolete.
21567         (slot-missing): Give it a default implementation.
21568         (destructor): Simplify and mark it obsolete.
21569         (object-print): Give it a default implementation.
21570         (eieio-change-class): Rename from change-class.
21571         (change-class): Redefine as obsolete alias.
21573 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21575         Mention kqueue in NEWS
21577 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21579         Merge from scratch/kqueue
21581         bec57a4 Some final fixes in file notification before merging with master
21582         0247489 Rework file notifications, kqueue has problems with directory monitors
21583         5154781 Continie with pending events
21584         6b490c0 Improve loops in file-notify-test06-many-events
21585         c8e266f Handle more complex rename operation in kqueue
21586         5044bdf New test with a larger number of events.
21587         65ba5a9 Further fixes for kqueue.
21588         13f3508 Code cleanup of kqueue.c
21589         99aa855 Doc changes for kqueue
21590         8deebe1 Finish implementation in kqueue.c
21591         90d6c69 * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21592         e95b309 More work on kqueue
21593         41d9bd0 Implement directory events
21594         c571fc1 Build fixes for kqueue support.
21595         e0a68f2 Continue kqueue implementation
21596         7543d1c Work on kqueue
21597         e3354e2 Add kqueue support
21598         c6457ce Minor fix to comment indentation and typo in last commit
21599         b92307f linum-mode plays more nicely with other margin-setting extensions
21600         58e6235 * lisp/image-mode.el: Support encrypted file
21601         9375652 * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
21602         47f83b6 ; ChangeLog.2 fixes
21603         7cc233e * lisp/emacs-lisp/package.el: Fix a decoding issue
21604         5f9153f * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
21605         353f5e7 * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
21606         70f1fda ; Auto-commit of ChangeLog files.
21607         ae0653b * CONTRIBUTE: Remove information about feature freeze.
21608         9459456 Merge branch 'release-process-lowercase'
21609         9a4aa0f Document the release process
21610         f8cc14b * admin/release-process: Rename from admin/FOR-RELEASE.
21611         dcd5877 gitmerge: Fix git log command
21612         2ac79ae gitmerge: Try to detect cherry-picks
21613         5f7a2a9 Increment Emacs version on master branch
21614         ed2e7e2 Mention CONTRIBUTE in README
21615         9e00a02 Update verilog-mode.el to 2015-11-09-b121d60-vpo.
21616         138ad3d ; Fix warnings
21617         7126e9a ; Update xref-etags-mode for the latest change
21618         246d660 Use generic dispatch for xref backends
21619         31f6e93 Support rectangular regions for more commands
21620         f103a27 Handle multiple matches on the same line; add highlighting
21621         fe973fc Replace xref-match-bounds with xref-match-length
21622         92a5010 Merge from gnulib
21623         04ac097 Spruce up ftfont.c memory allocation
21624         4c4b520 Port recent XCB changes to 64-bit ‘long int’
21625         4f0ce9c * src/undo.c (run_undoable_change): Now static.
21626         695a6f9 Remove support for ':timeout' from w32 tray notifications
21627         a731c2f * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
21628         2b4c0c0 * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
21629         66b9f7b * src/undo.c: Small fixes for previous change
21630         2fac30e Add a few more variables to redisplay--variables
21631         04f69f1 * lisp/loadup.el: Enlarge the size of the hash table to 80000.
21632         e221d32 Fix point positioning after transposing with negative arg
21633         35f5afb Fix last change in shr.el
21634         508e77b Fix last change
21635         d60ed3f Another fix for MinGW64 and Cygwin builds due to notifications
21636         805a39b Remove intern calls and XXX comments from Fx_export_frames
21637         9463abf shr: don't invoke unbound function (Bug#21895)
21638         6e5186e * test/automated/keymaps-test.el: Fix test to make it repeatable
21639         0c92826 * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
21640         39dbd1c : Tests for undo-auto functionality.
21641         20aa42e ; Merge branch 'fix/no-undo-boundary-on-secondary-buffer-change'
21642         44dfa86 The heuristic that Emacs uses to add an `undo-boundary' has been reworked, as it interacts poorly with functions on `post-command-hook' or `after-change-functions'.
21643         d2f73db Bind [?\S-\ ] to previous line command in Dired-like modes.
21644         c1bc6e5 Fix the MinGW64 and Cygwin-w32 builds
21645         1e363a8 Enable sorting of JSON object keys when encoding
21646         9dd7da9 * test/automated/keymap-tests.el: New test file
21647         aa17de9 Speed up x_real_pos_and_offsets using XCB
21648         a838c83 Enable use of XCB for checking window manager state
21649         c7f2b6a Detect XCB and save a connection handle
21650         e1c27db Reduce some data dependencies between X calls
21651         25e32bd Use color cache for creating bitmap
21652         851be0f Add "^" to the interactive specs of `dired-next/previous-line'
21653         055ca3a Sync with soap-client repository, version 3.0.2
21654         e0f64e7 CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
21655         952395d * lisp/obarray.el: Fix shadowed variables
21656         436d330 Avoid error in submitting a form with EWW
21657         e887f6e ; * doc/lispref/os.texi: Fix indentation of sample code.
21658         51d840a Rename seq-p and map-p to seqp and mapp
21659         23036ba Rename obarray-p to obarrayp
21660         20aea42 Rename obarray-foreach to obarray-map
21661         a3b2101 New file with obarray functions.
21662         9d43941 Implement tray notifications for MS-Windows
21664 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21666         Some final fixes in file notification before merging with master
21668         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21669         (file-notify-callback): Improve check for `stopped' event.  Call
21670         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21671         (file-notify-add-watch): In case FILE is not a directory, call the
21672         file monitor for the kqueue backend.  Otherwise, call the
21673         directory monitor for the upper directory.
21675         * src/inotify.c (inotifyevent_to_event): Extract file name from
21676         watch_object if the event doesn't provide it.
21677         (Finotify_add_watch): Add file name to watch_object.
21679         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21680         Use different timeouts for different libraries.
21681         (file-notify--test-with-events): Suppress lock files.  Flush
21682         outstanding events before running the body.
21683         (file-notify-test02-events, file-notify-test04-file-validity): Do
21684         not skip cygwin tests.  Add additional test for file creation.
21685         Adapt expected result for different backends.
21686         (file-notify-test03-autorevert): Some of the tests don't work for
21687         w32notify.
21688         (file-notify-test06-many-events): Rename into both directions.
21690 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21692         Rework file notifications, kqueue has problems with directory monitors
21694         * lisp/filenotify.el (file-notify-add-watch): Call the native
21695         add-watch function on the file, not on the dir.
21697         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
21698         about already deleted entries.
21700         * test/automated/auto-revert-tests.el
21701         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
21702         since this deletes the target file first.
21704         * test/automated/file-notify-tests.el (file-notify--test-event-test):
21705         Make stronger checks.
21706         (file-notify-test01-add-watch, file-notify-test02-events)
21707         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21708         Rewrite in order to call file monitors but directory monitors.
21709         (file-notify-test06-many-events): Ler rename work in both directions.
21711 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21713         Continie with pending events
21715         * src/kqueue.c (pending_events): Remove global variable.
21716         (kqueue_compare_dir_list): Create `write' event for not used
21717         pending events.
21718         (globals_of_kqueue): Remove initialization of pending_events.
21720 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21722         Improve loops in file-notify-test06-many-events
21724         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21725         Use `read-event' pauses for the `write-file' loops; otherwise
21726         events are lost in inotify and gfilenotify cases.
21728 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21730         Handle more complex rename operation in kqueue
21732         * src/kqueue.c (pending_events): New variable.
21733         (kqueue_compare_dir_list): Handle more complex rename operation.
21734         (globals_of_kqueue): Initialize pending_events.
21736         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
21737         Adapt expected events in the `rename-file' case.
21738         (file-notify-test06-many-events-remote): Declare.
21740 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21742         New test with a larger number of events.
21744         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21745         Make timeout heuristically depend on the number of events.
21747         (file-notify-test06-many-events): Use it for new test.
21749 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21751         Further fixes for kqueue.
21753         * lisp/filenotify.el (file-notify-callback): Raise also event if
21754         directory name matches.
21755         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
21757         * src/kqueue.c (kqueue_generate_event): Use watch_object as
21758         argument instead of ident.  Remove callback argument.  Adapt
21759         callees.  Check actions whether they are monitored flags.
21761         * test/automated/file-notify-tests.el (file-notify--test-library):
21762         New defun.
21763         (file-notify-test00-availability, file-notify-test02-events)
21764         (file-notify-test04-file-validity)
21765         (file-notify-test05-dir-validity): Use it.
21766         (file-notify-test02-events, file-notify-test04-file-validity): Add
21767         `read-event' calls between different file actions, in order to
21768         give the backends a chance to rais an event.  Needed especially
21769         for kqueue.  In case of deleting a directory, there are two
21770         `deleted' events.
21772 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21774         Code cleanup of kqueue.c
21776         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
21777         (kqueue_compare_dir_list): Do not loop when calling
21778         directory_files_internal.  Remove checks for "." and "..", this is
21779         done in kqueue_directory_listing now.
21780         (Fkqueue_add_watch): Check for proper emacs_open flags.
21782 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21784         Doc changes for kqueue
21786         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
21787         Fix some glitches in the example.
21789 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21791         Finish implementation in kqueue.c
21793         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
21794         Simplify access to list.
21795         (kqueue_compare_dir_list): Simplify access to list.  Raise
21796         `delete' event if directory does not exist any longer.  Otherwise,
21797         wait until directory contents has changed.  Fix error in check.
21799 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21801         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
21803 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21805         More work on kqueue
21807         * lisp/filenotify.el (file-notify-callback): Handle also the
21808         `rename' event from kqueue.
21809         (file-notify-add-watch): Do not register an entry twice.
21811         * src/kqueue.c (kqueue_directory_listing): New function.
21812         (kqueue_generate_event): New argument FILE1.  Adapt callees.
21813         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
21815 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21817         Implement directory events
21819         * lisp/filenotify.el (file-notify-handle-event)
21820         (file-notify-callback): Remove traces.
21822         * src/kqueue.c: Include <sys/time.h>.
21823         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
21824         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
21825         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
21826         Compute initial directory listing.  Close file descriptor in case
21827         of errors.
21828         (syms_of_kqueue): Declare Qcreate.
21830 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
21832         Build fixes for kqueue support.
21834         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
21835         flag.
21837         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
21838         kqueue on *BSD.
21840 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21842         Continue kqueue implementation
21844         * lisp/filenotify.el (file-notify-handle-event)
21845         (file-notify-callback): Enable trace messages.
21847         * src/kqueue.c: Include also <sys/types.h>.
21848         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
21849         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
21850         (syms_of_kqueue): Add them.
21852 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21854         Work on kqueue
21856         * lisp/filenotify.el (file-notify--library)
21857         (file-notify-descriptors, file-notify-callback)
21858         (file-notify-add-watch, file-notify-rm-watch)
21859         (file-notify-valid-p): Add kqueue support.
21861         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
21863 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21865         Add kqueue support
21867         * configure.ac (--with-file-notification): Add kqueue.
21868         (top): Remove special test for "${HAVE_NS}" and
21869         ${with_file_notification}, this is handled inside gfilenotify
21870         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
21871         instead of library specific variables.
21873         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
21875         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
21877         * src/kqueue.c: New file.
21879         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
21881 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
21883         Some final fixes in file notification before merging with master
21885         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
21886         (file-notify-callback): Improve check for `stopped' event.  Call
21887         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
21888         (file-notify-add-watch): In case FILE is not a directory, call the
21889         file monitor for the kqueue backend.  Otherwise, call the
21890         directory monitor for the upper directory.
21892         * src/inotify.c (inotifyevent_to_event): Extract file name from
21893         watch_object if the event doesn't provide it.
21894         (Finotify_add_watch): Add file name to watch_object.
21896         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21897         Use different timeouts for different libraries.
21898         (file-notify--test-with-events): Suppress lock files.  Flush
21899         outstanding events before running the body.
21900         (file-notify-test02-events, file-notify-test04-file-validity): Do
21901         not skip cygwin tests.  Add additional test for file creation.
21902         Adapt expected result for different backends.
21903         (file-notify-test03-autorevert): Some of the tests don't work for
21904         w32notify.
21905         (file-notify-test06-many-events): Rename into both directions.
21907 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21909         Update elisp-mode-tests for changed file location.
21911          * test/lisp/progmodes/elisp-mode-tests.el:
21913 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21915         Exclude manual tests from Makefile
21917          * test/Makefile.in:
21919 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21921         Move package test files to new directory.
21923          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
21924          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
21926 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21928         Restore delete Makefiles and fix .gitignore.
21930          * .gitignore: Update Makefiles to changed locations
21931          * test/lisp/progmodes/flymake-resources/Makefile,
21932            test/manual/etags/Makefile,
21933            test/manual/etags/make-src/Makefile,
21934            test/manual/indent/Makefile: Restored and moved to new location.
21936 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21938         Test infrastructure: updates after directory move
21940          * (test/Makefile.in): Support directories several levels deep.
21941          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
21942          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
21944 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
21946         Rename all test files to reflect source layout.
21948         * CONTRIBUTE, Makefile.in, configure.ac: Update to reflect
21949         test directory moves.
21950         * test/file-organisation.org: New file.
21951         * test/automated/Makefile.in:
21952         * test/automated/data/decompress/foo.gz:
21953         * test/automated/data/epg/pubkey.asc:
21954         * test/automated/data/epg/seckey.asc:
21955         * test/automated/data/files-bug18141.el.gz:
21956         * test/automated/data/flymake/test.c:
21957         * test/automated/data/flymake/test.pl:
21958         * test/automated/data/package/archive-contents:
21959         * test/automated/data/package/key.pub:
21960         * test/automated/data/package/key.sec:
21961         * test/automated/data/package/multi-file-0.2.3.tar:
21962         * test/automated/data/package/multi-file-readme.txt:
21963         * test/automated/data/package/newer-versions/archive-contents:
21964         * test/automated/data/package/newer-versions/new-pkg-1.0.el:
21965         * test/automated/data/package/newer-versions/simple-single-1.4.el:
21966         * test/automated/data/package/package-test-server.py:
21967         * test/automated/data/package/signed/archive-contents:
21968         * test/automated/data/package/signed/archive-contents.sig:
21969         * test/automated/data/package/signed/signed-bad-1.0.el:
21970         * test/automated/data/package/signed/signed-bad-1.0.el.sig:
21971         * test/automated/data/package/signed/signed-good-1.0.el:
21972         * test/automated/data/package/signed/signed-good-1.0.el.sig:
21973         * test/automated/data/package/simple-depend-1.0.el:
21974         * test/automated/data/package/simple-single-1.3.el:
21975         * test/automated/data/package/simple-single-readme.txt:
21976         * test/automated/data/package/simple-two-depend-1.1.el:
21977         * test/automated/abbrev-tests.el:
21978         * test/automated/auto-revert-tests.el:
21979         * test/automated/calc-tests.el:
21980         * test/automated/icalendar-tests.el:
21981         * test/automated/character-fold-tests.el:
21982         * test/automated/comint-testsuite.el:
21983         * test/automated/descr-text-test.el:
21984         * test/automated/electric-tests.el:
21985         * test/automated/cl-generic-tests.el:
21986         * test/automated/cl-lib-tests.el:
21987         * test/automated/eieio-test-methodinvoke.el:
21988         * test/automated/eieio-test-persist.el:
21989         * test/automated/eieio-tests.el:
21990         * test/automated/ert-tests.el:
21991         * test/automated/ert-x-tests.el:
21992         * test/automated/generator-tests.el:
21993         * test/automated/let-alist.el:
21994         * test/automated/map-tests.el:
21995         * test/automated/advice-tests.el:
21996         * test/automated/package-test.el:
21997         * test/automated/pcase-tests.el:
21998         * test/automated/regexp-tests.el:
21999         * test/automated/seq-tests.el:
22000         * test/automated/subr-x-tests.el:
22001         * test/automated/tabulated-list-test.el:
22002         * test/automated/thunk-tests.el:
22003         * test/automated/timer-tests.el:
22004         * test/automated/epg-tests.el:
22005         * test/automated/eshell.el:
22006         * test/automated/faces-tests.el:
22007         * test/automated/file-notify-tests.el:
22008         * test/automated/auth-source-tests.el:
22009         * test/automated/gnus-tests.el:
22010         * test/automated/message-mode-tests.el:
22011         * test/automated/help-fns.el:
22012         * test/automated/imenu-test.el:
22013         * test/automated/info-xref.el:
22014         * test/automated/mule-util.el:
22015         * test/automated/isearch-tests.el:
22016         * test/automated/json-tests.el:
22017         * test/automated/bytecomp-tests.el:
22018         * test/automated/coding-tests.el:
22019         * test/automated/core-elisp-tests.el:
22020         * test/automated/decoder-tests.el:
22021         * test/automated/files.el:
22022         * test/automated/font-parse-tests.el:
22023         * test/automated/lexbind-tests.el:
22024         * test/automated/occur-tests.el:
22025         * test/automated/process-tests.el:
22026         * test/automated/syntax-tests.el:
22027         * test/automated/textprop-tests.el:
22028         * test/automated/undo-tests.el:
22029         * test/automated/man-tests.el:
22030         * test/automated/completion-tests.el:
22031         * test/automated/dbus-tests.el:
22032         * test/automated/newsticker-tests.el:
22033         * test/automated/sasl-scram-rfc-tests.el:
22034         * test/automated/tramp-tests.el:
22035         * test/automated/obarray-tests.el:
22036         * test/automated/compile-tests.el:
22037         * test/automated/elisp-mode-tests.el:
22038         * test/automated/f90.el:
22039         * test/automated/flymake-tests.el:
22040         * test/automated/python-tests.el:
22041         * test/automated/ruby-mode-tests.el:
22042         * test/automated/subword-tests.el:
22043         * test/automated/replace-tests.el:
22044         * test/automated/simple-test.el:
22045         * test/automated/sort-tests.el:
22046         * test/automated/subr-tests.el:
22047         * test/automated/reftex-tests.el:
22048         * test/automated/sgml-mode-tests.el:
22049         * test/automated/tildify-tests.el:
22050         * test/automated/thingatpt.el:
22051         * test/automated/url-future-tests.el:
22052         * test/automated/url-util-tests.el:
22053         * test/automated/add-log-tests.el:
22054         * test/automated/vc-bzr.el:
22055         * test/automated/vc-tests.el:
22056         * test/automated/xml-parse-tests.el:
22057         * test/BidiCharacterTest.txt:
22058         * test/biditest.el:
22059         * test/cedet/cedet-utests.el:
22060         * test/cedet/ede-tests.el:
22061         * test/cedet/semantic-ia-utest.el:
22062         * test/cedet/semantic-tests.el:
22063         * test/cedet/semantic-utest-c.el:
22064         * test/cedet/semantic-utest.el:
22065         * test/cedet/srecode-tests.el:
22066         * test/cedet/tests/test.c:
22067         * test/cedet/tests/test.el:
22068         * test/cedet/tests/test.make:
22069         * test/cedet/tests/testdoublens.cpp:
22070         * test/cedet/tests/testdoublens.hpp:
22071         * test/cedet/tests/testfriends.cpp:
22072         * test/cedet/tests/testjavacomp.java:
22073         * test/cedet/tests/testnsp.cpp:
22074         * test/cedet/tests/testpolymorph.cpp:
22075         * test/cedet/tests/testspp.c:
22076         * test/cedet/tests/testsppcomplete.c:
22077         * test/cedet/tests/testsppreplace.c:
22078         * test/cedet/tests/testsppreplaced.c:
22079         * test/cedet/tests/testsubclass.cpp:
22080         * test/cedet/tests/testsubclass.hh:
22081         * test/cedet/tests/testtypedefs.cpp:
22082         * test/cedet/tests/testvarnames.c:
22083         * test/etags/CTAGS.good:
22084         * test/etags/ETAGS.good_1:
22085         * test/etags/ETAGS.good_2:
22086         * test/etags/ETAGS.good_3:
22087         * test/etags/ETAGS.good_4:
22088         * test/etags/ETAGS.good_5:
22089         * test/etags/ETAGS.good_6:
22090         * test/etags/a-src/empty.zz:
22091         * test/etags/a-src/empty.zz.gz:
22092         * test/etags/ada-src/2ataspri.adb:
22093         * test/etags/ada-src/2ataspri.ads:
22094         * test/etags/ada-src/etags-test-for.ada:
22095         * test/etags/ada-src/waroquiers.ada:
22096         * test/etags/c-src/a/b/b.c:
22097         * test/etags/c-src/abbrev.c:
22098         * test/etags/c-src/c.c:
22099         * test/etags/c-src/dostorture.c:
22100         * test/etags/c-src/emacs/src/gmalloc.c:
22101         * test/etags/c-src/emacs/src/keyboard.c:
22102         * test/etags/c-src/emacs/src/lisp.h:
22103         * test/etags/c-src/emacs/src/regex.h:
22104         * test/etags/c-src/etags.c:
22105         * test/etags/c-src/exit.c:
22106         * test/etags/c-src/exit.strange_suffix:
22107         * test/etags/c-src/fail.c:
22108         * test/etags/c-src/getopt.h:
22109         * test/etags/c-src/h.h:
22110         * test/etags/c-src/machsyscalls.c:
22111         * test/etags/c-src/machsyscalls.h:
22112         * test/etags/c-src/sysdep.h:
22113         * test/etags/c-src/tab.c:
22114         * test/etags/c-src/torture.c:
22115         * test/etags/cp-src/MDiagArray2.h:
22116         * test/etags/cp-src/Range.h:
22117         * test/etags/cp-src/burton.cpp:
22118         * test/etags/cp-src/c.C:
22119         * test/etags/cp-src/clheir.cpp.gz:
22120         * test/etags/cp-src/clheir.hpp:
22121         * test/etags/cp-src/conway.cpp:
22122         * test/etags/cp-src/conway.hpp:
22123         * test/etags/cp-src/fail.C:
22124         * test/etags/cp-src/functions.cpp:
22125         * test/etags/cp-src/screen.cpp:
22126         * test/etags/cp-src/screen.hpp:
22127         * test/etags/cp-src/x.cc:
22128         * test/etags/el-src/TAGTEST.EL:
22129         * test/etags/el-src/emacs/lisp/progmodes/etags.el:
22130         * test/etags/erl-src/gs_dialog.erl:
22131         * test/etags/f-src/entry.for:
22132         * test/etags/f-src/entry.strange.gz:
22133         * test/etags/f-src/entry.strange_suffix:
22134         * test/etags/forth-src/test-forth.fth:
22135         * test/etags/html-src/algrthms.html:
22136         * test/etags/html-src/index.shtml:
22137         * test/etags/html-src/software.html:
22138         * test/etags/html-src/softwarelibero.html:
22139         * test/etags/lua-src/allegro.lua:
22140         * test/etags/objc-src/PackInsp.h:
22141         * test/etags/objc-src/PackInsp.m:
22142         * test/etags/objc-src/Subprocess.h:
22143         * test/etags/objc-src/Subprocess.m:
22144         * test/etags/objcpp-src/SimpleCalc.H:
22145         * test/etags/objcpp-src/SimpleCalc.M:
22146         * test/etags/pas-src/common.pas:
22147         * test/etags/perl-src/htlmify-cystic:
22148         * test/etags/perl-src/kai-test.pl:
22149         * test/etags/perl-src/yagrip.pl:
22150         * test/etags/php-src/lce_functions.php:
22151         * test/etags/php-src/ptest.php:
22152         * test/etags/php-src/sendmail.php:
22153         * test/etags/prol-src/natded.prolog:
22154         * test/etags/prol-src/ordsets.prolog:
22155         * test/etags/ps-src/rfc1245.ps:
22156         * test/etags/pyt-src/server.py:
22157         * test/etags/tex-src/gzip.texi:
22158         * test/etags/tex-src/nonewline.tex:
22159         * test/etags/tex-src/testenv.tex:
22160         * test/etags/tex-src/texinfo.tex:
22161         * test/etags/y-src/atest.y:
22162         * test/etags/y-src/cccp.c:
22163         * test/etags/y-src/cccp.y:
22164         * test/etags/y-src/parse.c:
22165         * test/etags/y-src/parse.y:
22166         * test/indent/css-mode.css:
22167         * test/indent/js-indent-init-dynamic.js:
22168         * test/indent/js-indent-init-t.js:
22169         * test/indent/js-jsx.js:
22170         * test/indent/js.js:
22171         * test/indent/latex-mode.tex:
22172         * test/indent/modula2.mod:
22173         * test/indent/nxml.xml:
22174         * test/indent/octave.m:
22175         * test/indent/pascal.pas:
22176         * test/indent/perl.perl:
22177         * test/indent/prolog.prolog:
22178         * test/indent/ps-mode.ps:
22179         * test/indent/ruby.rb:
22180         * test/indent/scheme.scm:
22181         * test/indent/scss-mode.scss:
22182         * test/indent/sgml-mode-attribute.html:
22183         * test/indent/shell.rc:
22184         * test/indent/shell.sh:
22185         * test/redisplay-testsuite.el:
22186         * test/rmailmm.el:
22187         * test/automated/buffer-tests.el:
22188         * test/automated/cmds-tests.el:
22189         * test/automated/data-tests.el:
22190         * test/automated/finalizer-tests.el:
22191         * test/automated/fns-tests.el:
22192         * test/automated/inotify-test.el:
22193         * test/automated/keymap-tests.el:
22194         * test/automated/print-tests.el:
22195         * test/automated/libxml-tests.el:
22196         * test/automated/zlib-tests.el: Files Moved.
22198 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
22200         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
22202         * lisp/progmodes/verilog-mode.el
22203         (verilog-save-font-no-change-functions): Commentary and fix
22204         pre-Emacs 21 behavior.
22206 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
22208         Rework file notifications, kqueue has problems with directory monitors
22210         * lisp/filenotify.el (file-notify-add-watch): Call the native
22211         add-watch function on the file, not on the dir.
22213         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
22214         about already deleted entries.
22216         * test/automated/auto-revert-tests.el
22217         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
22218         since this deletes the target file first.
22220         * test/automated/file-notify-tests.el (file-notify--test-event-test):
22221         Make stronger checks.
22222         (file-notify-test01-add-watch, file-notify-test02-events)
22223         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22224         Rewrite in order to call file monitors but directory monitors.
22225         (file-notify-test06-many-events): Ler rename work in both directions.
22227 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
22229         Use obarray functions from obarray.
22231         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
22232           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
22233           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
22234           delegate to obarray.el functions.
22235         * lisp/loadup.el: load obarray before abbrev
22236         * test/automated/abbrev-tests.el: new tests
22238 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22240         Continie with pending events
22242         * src/kqueue.c (pending_events): Remove global variable.
22243         (kqueue_compare_dir_list): Create `write' event for not used
22244         pending events.
22245         (globals_of_kqueue): Remove initialization of pending_events.
22247 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22249         Improve loops in file-notify-test06-many-events
22251         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22252         Use `read-event' pauses for the `write-file' loops; otherwise
22253         events are lost in inotify and gfilenotify cases.
22255 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
22257         Handle more complex rename operation in kqueue
22259         * src/kqueue.c (pending_events): New variable.
22260         (kqueue_compare_dir_list): Handle more complex rename operation.
22261         (globals_of_kqueue): Initialize pending_events.
22263         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
22264         Adapt expected events in the `rename-file' case.
22265         (file-notify-test06-many-events-remote): Declare.
22267 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
22269         epa.el: Add option to replace original text
22271         * lisp/epa.el (epa-replace-original-text): New user option.
22272         (Bug#21947)
22274 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22276         Add interactive seek command.
22278         * lisp/mpc.el (mpc-cmd-seekcur): New function.
22279         (mpc-seek-current): New command.
22280         (mpc-mode-menu): Add entry for mpc-seek-current
22281         (mpc-mode-map): Bind mpc-seek-current to "g"
22283 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
22285         Fix issue where a new tempfile was created every refresh
22287         * lisp/mpc.el (mpc-format): Leave dir as relative path
22289 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
22291         New test with a larger number of events.
22293         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22294         Make timeout heuristically depend on the number of events.
22296         (file-notify-test06-many-events): Use it for new test.
22298 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22300         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
22302         (c-save-buffer-state): Use with-silent-modifications when available.
22303         (c--macroexpand-all): Check macroexpand-all directly rather than
22304         c--mapcan-status.
22306 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
22308         * lisp/loadup.el: Set max-lisp-eval-depth here
22310         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
22311         (BYTE_COMPILE_FLAGS): Adjust accordingly.
22313 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
22315         Further fixes for kqueue.
22317         * lisp/filenotify.el (file-notify-callback): Raise also event if
22318         directory name matches.
22319         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
22321         * src/kqueue.c (kqueue_generate_event): Use watch_object as
22322         argument instead of ident.  Remove callback argument.  Adapt
22323         callees.  Check actions whether they are monitored flags.
22325         * test/automated/file-notify-tests.el (file-notify--test-library):
22326         New defun.
22327         (file-notify-test00-availability, file-notify-test02-events)
22328         (file-notify-test04-file-validity)
22329         (file-notify-test05-dir-validity): Use it.
22330         (file-notify-test02-events, file-notify-test04-file-validity): Add
22331         `read-event' calls between different file actions, in order to
22332         give the backends a chance to rais an event.  Needed especially
22333         for kqueue.  In case of deleting a directory, there are two
22334         `deleted' events.
22336 2015-11-17  João Távora  <joaotavora@gmail.com>
22338         Minor fix to comment indentation and typo in last commit
22340         * lisp/linum.el (linum-update-window): Fix comment indentation and
22341         a typo.
22343 2015-11-17  João Távora  <joaotavora@gmail.com>
22345         linum-mode plays more nicely with other margin-setting extensions
22347         linum.el will only modify the left margin if it needs to, and will
22348         only reset the it back to 0 if it guesses that no-one has touched that
22349         margin in the meantime.
22351         As such, this is a more of a workaround than an actual fix, but fixes
22352         the problems described in bug#20674 regarding the interaction with
22353         modes such as darkroom-mode and olivetti-mode.
22355         A similar fix was commited to nlinum.el in ELPA.git's
22356         e7f5f549fbfb740b911fb7f33b42381ecece56d8
22358         * lisp/linum.el (linum-delete-overlays): Restore margins more
22359         criteriously.
22360         (linum-update-window): Set margins more criteriously.
22362 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
22364         Code cleanup of kqueue.c
22366         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
22367         (kqueue_compare_dir_list): Do not loop when calling
22368         directory_files_internal.  Remove checks for "." and "..", this is
22369         done in kqueue_directory_listing now.
22370         (Fkqueue_add_watch): Check for proper emacs_open flags.
22372 2015-11-16  Daiki Ueno  <ueno@gnu.org>
22374         * lisp/image-mode.el: Support encrypted file
22376         (image-toggle-display-image): Read content from the buffer instead
22377         of the file, if the buffer holds a decrypted data.  (Bug#21870)
22379 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22381         Doc changes for kqueue
22383         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
22384         Fix some glitches in the example.
22386 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
22388         Finish implementation in kqueue.c
22390         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
22391         Simplify access to list.
22392         (kqueue_compare_dir_list): Simplify access to list.  Raise
22393         `delete' event if directory does not exist any longer.  Otherwise,
22394         wait until directory contents has changed.  Fix error in check.
22396 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22398         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
22400 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
22402         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
22404 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22406         * lisp/emacs-lisp/package.el: Fix a decoding issue
22408         (package--with-response-buffer): Use `url-insert-buffer-contents'.
22409         The previous code had some issues with decoding. Refactoring that
22410         function allows us to use the decoding from url-handlers while still
22411         treating both sync and async requests the same.
22413         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
22414         `url-insert-buffer-contents'.
22415         (url-insert-buffer-contents): New function
22417 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
22419         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
22421         (package--with-work-buffer-async): Reimplement as
22422         `package--with-response-buffer'.
22423         (package--with-work-buffer): Mark obsolete.
22424         (package--with-response-buffer): New macro. This is a more self
22425         contained and less contrived version of
22426         `package--with-work-buffer-async'.  It uses keyword arguments,
22427         doesn't have async on the name, doesn't fallback on
22428         `package--with-work-buffer', and has _much_ simpler error
22429         handling.
22431         (package--check-signature, package--download-one-archive)
22432         (package-install-from-archive, describe-package-1): Use it.
22434         (package--download-and-read-archives): Let
22435         `package--download-one-archive' take care of calling
22436         `package--update-downloads-in-progress'.
22438 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22440         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
22442         (verilog-save-buffer-state): Use with-silent-modifications when available.
22443         (verilog-save-font-no-change-functions): Don't bind
22444         before/after-change-functions if it's not needed.
22446 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
22448         More work on kqueue
22450         * lisp/filenotify.el (file-notify-callback): Handle also the
22451         `rename' event from kqueue.
22452         (file-notify-add-watch): Do not register an entry twice.
22454         * src/kqueue.c (kqueue_directory_listing): New function.
22455         (kqueue_generate_event): New argument FILE1.  Adapt callees.
22456         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
22458 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22460         * CONTRIBUTE: Remove information about feature freeze.
22462         Merge branch 'release-process-lowercase'
22464 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22466         Document the release process
22468         * admin/notes/versioning: Add information about RC releases.
22469         * admin/release-process: Document the release process.
22470         * admin/authors.el (authors-ignored-files):
22471         * admin/README: Change FOR-RELEASE to release-process.
22472         * CONTRIBUTE:
22473         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
22475 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
22477         * admin/release-process: Rename from admin/FOR-RELEASE.
22479 2015-11-14  David Engster  <deng@randomsample.de>
22481         gitmerge: Fix git log command
22483         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
22484         only want commits from the branch that is to be merged.
22485         (gitmerge-setup-log-buffer): Use the same symmetric range as in
22486         `gitmerge-missing'.
22488 2015-11-14  David Engster  <deng@randomsample.de>
22490         gitmerge: Try to detect cherry-picks
22492         * admin/gitmerge.el (gitmerge-default-branch): Change to
22493         origin/emacs-25.
22494         (gitmerge-missing): Use symmetric difference ('...') between
22495         branch and master so that cherry-picks can be detected.
22497 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
22499         Implement directory events
22501         * lisp/filenotify.el (file-notify-handle-event)
22502         (file-notify-callback): Remove traces.
22504         * src/kqueue.c: Include <sys/time.h>.
22505         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
22506         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
22507         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
22508         Compute initial directory listing.  Close file descriptor in case
22509         of errors.
22510         (syms_of_kqueue): Declare Qcreate.
22512 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
22514         Increment Emacs version on master branch
22516         * lisp/cus-edit.el (customize-changed-options-previous-release):
22517         Increase previous version to 24.5.
22519         * configure.ac:
22520         * msdos/sed2v2.inp: Bump version to 25.1.50.
22522 2015-11-13  Xue Fuqiao  <xfq.free@gmail.com>
22524         Mention CONTRIBUTE in README
22526         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
22527         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
22528         * README: Mention CONTRIBUTE.
22530 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
22532         Update verilog-mode.el to 2015-11-09-b121d60-vpo.
22534         * lisp/progmodes/verilog-mode.el (verilog-auto, verilog-delete-auto)
22535         (verilog-modi-cache-results, verilog-save-buffer-state)
22536         (verilog-save-font-no-change-functions): When internally suppressing change
22537         functions, use `inhibit-modification-hooks' and call
22538         `after-change-funtions' to more nicely work with user hooks.  Reported by
22539         Stefan Monnier.
22541         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
22542         Create `verilog-delete-auto-buffer' to avoid double-calling
22543         fontification hooks.
22545         (verilog-restore-buffer-modified-p, verilog-auto)
22546         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
22547         set-buffer-modified-p. Reported by Stefan Monnier.
22549         (verilog-diff-auto, verilog-diff-buffers-p)
22550         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
22552         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
22553         AUTOINST with unpacked dimensional parameters, bug981. Reported by
22554         by Amol Nagapurkar.
22556         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
22557         properties inside internal structures. No functional change
22558         intended.
22560 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
22562         Build fixes for kqueue support.
22564         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
22565         flag.
22567         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
22568         kqueue on *BSD.
22570 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22572         Continue kqueue implementation
22574         * lisp/filenotify.el (file-notify-handle-event)
22575         (file-notify-callback): Enable trace messages.
22577         * src/kqueue.c: Include also <sys/types.h>.
22578         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
22579         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
22580         (syms_of_kqueue): Add them.
22582 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22584         Work on kqueue
22586         * lisp/filenotify.el (file-notify--library)
22587         (file-notify-descriptors, file-notify-callback)
22588         (file-notify-add-watch, file-notify-rm-watch)
22589         (file-notify-valid-p): Add kqueue support.
22591         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
22593 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
22595         Add kqueue support
22597         * configure.ac (--with-file-notification): Add kqueue.
22598         (top): Remove special test for "${HAVE_NS}" and
22599         ${with_file_notification}, this is handled inside gfilenotify
22600         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
22601         instead of library specific variables.
22603         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
22605         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
22607         * src/kqueue.c: New file.
22609         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
22611 This file records repository revisions from
22612 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
22613 commit f15f6b53078ac2176f8d2c05d99d3d9b4d32986b (inclusive).
22614 See ChangeLog.1 for earlier changes.
22616 ;; Local Variables:
22617 ;; coding: utf-8
22618 ;; End:
22620   Copyright (C) 2015-2017 Free Software Foundation, Inc.
22622   This file is part of GNU Emacs.
22624   GNU Emacs is free software: you can redistribute it and/or modify
22625   it under the terms of the GNU General Public License as published by
22626   the Free Software Foundation, either version 3 of the License, or
22627   (at your option) any later version.
22629   GNU Emacs is distributed in the hope that it will be useful,
22630   but WITHOUT ANY WARRANTY; without even the implied warranty of
22631   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22632   GNU General Public License for more details.
22634   You should have received a copy of the GNU General Public License
22635   along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.